C# 如何按应用程序池在web.config中拥有特定的身份验证部分?
我有一个网站,它与我域中的其他应用程序共享其身份验证令牌:app1.mydomain.com、app2.mydomain.com、。。等 现在,我想将我的网站转换为白色标签:即URL为app1.other-COMPANY.com。它将不在同一个域中 我已在IIS中为我的白标签创建了一个新条目,该条目将指向与当前网站相同的物理文件夹,并使用虚拟目录覆盖我的内容文件夹。 此文件夹将包含我的白色标签的徽标和图片 它工作正常,但身份验证被拒绝,因为我的白色标签不在我的域中 我试图在IIS中创建一个虚拟目录来存储authentication.config,并在我的web.config中使用了它(使用configSource),但它不能与虚拟目录一起使用 我试图在my global.asax的AppStart中覆盖我的web.config,但当我应用新设置时,它会在物理上擦除我的web.configC# 如何按应用程序池在web.config中拥有特定的身份验证部分?,c#,iis,web-config,global-asax,C#,Iis,Web Config,Global Asax,我有一个网站,它与我域中的其他应用程序共享其身份验证令牌:app1.mydomain.com、app2.mydomain.com、。。等 现在,我想将我的网站转换为白色标签:即URL为app1.other-COMPANY.com。它将不在同一个域中 我已在IIS中为我的白标签创建了一个新条目,该条目将指向与当前网站相同的物理文件夹,并使用虚拟目录覆盖我的内容文件夹。 此文件夹将包含我的白色标签的徽标和图片 它工作正常,但身份验证被拒绝,因为我的白色标签不在我的域中 我试图在IIS中创建一个虚拟目
Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
AuthenticationSection section = config.GetSection("system.web/authentication") as AuthenticationSection;
string extendConfigPath = HttpContext.Current.Server.MapPath(WebConfigurationManager.AppSettings["ConfigExtends"] ?? "") + "\\extendsConfig.xml";
if (section != null && section.Mode == AuthenticationMode.Forms && File.Exists(extendConfigPath))
{
XDocument configExtends = XDocument.Load(extendConfigPath);
section.Forms.Domain = configExtends?.Root?.Element("authenticationDomain")?.Value ?? section.Forms.Domain;
section.Forms.Name = configExtends?.Root?.Element("authenticationName")?.Value ?? section.Forms.Name;
config.Save();
}
如何在没有域限制的情况下保留我的共享cookie并为我的白标签获取另一个cookie?为什么不创建一个新的物理目录和新的网站,并使用web.config和所有必要的配置值指向它?如果可能,我希望不必发布和维护两个网站