我有一个与ADFS认证的WIF web应用程序。我需要创建一个可以匿名访问的中间页面。所以当一个匿名用户访问网站时,它总是打开这个中间页面,从那里,用户可以点击"登录"按钮或HyberLink重定向到ADFS。通过ADFS认证后,重定向回真实网页(如"配置文件"页面)。当经过身份验证的用户单击"注销"按钮时,它应该重定向回中间页面(匿名页面)。
您可以使用标准的ASP. net来"取消保护"任何页面。. NET安全配置。在网络上。你可以添加:
<location path="openpage.aspx">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
在页面上,你可以放一个按钮来重定向到adfs登录页面和注销页面(你可以使用SigninRequestMessage和SIgnOutRequestMessage创建正确的url)。
提取物。:
var request = new SignInRequestMessage(new Uri("http://adfslocation"), "originalRealm")
{
Reply = "http://localhost/openpage.aspx"
};
Then you can redirect to request.WriteQueryString();