VisualStudio2012のIdentityandAccess ...拡張機能を使用して、ASP.NET 4.5MVC4プロジェクトでWindowsIdentityFoundation(WIF)を正常に構成しました。ただし、匿名アクセスを許可するために特定のパスを承認から除外することはできません。 。
デフォルトルート(つまり/Home
)にアクセスすると、パッシブリダイレクトにより、構成された発行者Uriにリダイレクトされます。これは正しいです。ただし、STS認証からパスを除外して、STS発行者にルーティングされることなく/Guest
すべてのユーザーがアクセスできるようにするとします。http://ourhost/Guest
静的ドキュメントのみがそこにあります。
からのスニペットWeb.config
:
<system.identityModel>
<identityConfiguration>
<audienceUris>
<add value="http://ourhost/" />
</audienceUris>
<issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<trustedIssuers>
<add thumbprint="9B74****40D0" name="OurSTS" />
</trustedIssuers>
</issuerNameRegistry>
<certificateValidation certificateValidationMode="None" />
</identityConfiguration>
</system.identityModel>
<system.identityModel.services>
<federationConfiguration>
<cookieHandler requireSsl="false" />
<wsFederation passiveRedirectEnabled="true" issuer="http://oursts/Issue" realm="http://ourhost/" reply="http://ourhost/" requireHttps="false" />
</federationConfiguration>
</system.identityModel.services>
さらに私たちは...
<system.webServer>
<!-- ... -->
<modules runAllManagedModulesForAllRequests="true">
<add name="WSFederationAuthenticationModule" type="System.IdentityModel.Services.WSFederationAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
<add name="SessionAuthenticationModule" type="System.IdentityModel.Services.SessionAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
<remove name="FormsAuthentication" />
</modules>
</system.webServer>
そして最後に:
<system.web>
<!-- ... -->
<authentication mode="None" />
</system.web>
私たちは成功せずに次のことを試みました:
<location path="~/Guest"> <!-- also "/Guest" is not working -->
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
また、小さなWeb.configファイルをこのフォルダーに入れようとしましたが、成功しませんでした。ブラウザでどのUriを見つけても、常にリダイレクトされます。
これを達成するための適切な方法は何ですか?
編集
以前の「受け入れられた回答」を削除し、「受け入れられた回答」をEugenios回答に設定します。これは、より有用な回答です。