0

Windows 7 Utilmate の IIS 7.5 では、次のように認証用に構成されたアプリケーションがあります: 匿名 & Windows

ASP.NET Web サイトで、フォーム認証と ID の偽装 = true を有効にし、匿名ユーザーも拒否します。

<authentication mode="Forms">
</authentication>
<identity impersonate="true"/>
<authorization>
<deny user="?">
</authorization>

IIS が文句を言います。私は何を間違っているのですか...私が達成したいこと:Windowsのログオンユーザーが必要なので、FormsAuthenticationチケットを作成してパッシブSTSに渡すことができます。したがって、IIS には匿名とウィンドウがあります...ウィンドウだけがチェックされている場合、そこから渡される追加のパラメーターがあるため、Login.aspx ページに移動できません。そのため、webconfig で、deny user="?" と言って匿名ユーザーを無効にします。、したがって、認証されたWindowsユーザーが残りますが、フォーム認証を使用しています。

http://msdn.microsoft.com/en-us/library/ff649264.aspx

表 4 IIS 用の IIS 統合 Windows が表示された場合、Web.config の 3 行目を設定すると、WindowsIdentity は Domian\Username になります。XP の IIS 6.0 win2003/IIS 5.1 で動作します。

4

1 に答える 1

0

これがクレームベースのIDを利用するアプリケーションである場合、ユーザーを認証する責任はアプリではなくSTS自体にあります。

外部STSを信頼するように(Web)アプリケーションを構成している場合、認証モードは「なし」になり、「 Microsoft.identityModel 」の構成ファイルにセクション全体が含まれます。次に、そこでSTSアドレス(発行者属性)を構成します。このようなもの:

<microsoft.identityModel>
<service>
  <audienceUris>
    <add value="https://aexpense-dev.adatum.com/" />
  </audienceUris>
  <federatedAuthentication>
    <wsFederation passiveRedirectEnabled="true" issuer="https://localhost/Adatum.SimulatedIssuer/" realm="https://aexpense-dev.adatum.com/" requireHttps="true" />
    <cookieHandler requireSsl="false" />
  </federatedAuthentication>
  <serviceCertificate>
    <certificateReference x509FindType="FindBySubjectDistinguishedName" findValue="CN=localhost"/>
  </serviceCertificate>
  <certificateValidation certificateValidationMode="None"/>
  <applicationService>
    <claimTypeRequired>
      <claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" optional="true" />
    </claimTypeRequired>
  </applicationService>
  <issuerNameRegistry type="Microsoft.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
    <trustedIssuers>
      <add thumbprint="f260042d59e14937984c6183fbc6bfc71baf5462" name="https://localhost/Adatum.SimulatedIssuer/" />
    </trustedIssuers>
  </issuerNameRegistry>
</service>

STS自体は、実装に応じて、Forms認証などを使用する場合があります。

于 2010-05-31T03:10:16.973 に答える