我有一个使用ADFS进行登录的ASP.NET MVC Web应用程序。以下是Startup.Auth.cs的摘录:
private static readonly string realm = ConfigurationManager.AppSettings["ida:Wtrealm"];
private static readonly string adfsMetadata = ConfigurationManager.AppSettings["ida:ADFSMetadata"];
public void ConfigureAuth(IAppBuilder app)
{
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
app.UseCookieAuthentication(new CookieAuthenticationOptions());
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
Wtrealm = Startup.realm,
MetadataAddress = Startup.adfsMetadata,
});
}
我对ADFS的了解有些限制,但据我所知,ADFS服务器使用上面传递的Wtrealm值来识别我的应用程序。
但是,Web应用程序存在于多个环境中:Dev,QA和PROD。同一组人需要访问DEV和QA环境,所以理想情况下,我想在这些环境中使用相同的ADFS设置。
这可能/推荐吗?如果是这样,最好的方法是什么(我不确定其中任何一种是否可行)
wtrealm只是一个字符串 - 而不是URL - 与ADFS RP中的标识符匹配。
所以有三个wtrealm和三个RP。
等等