La Detección De La Web.Config Modo De Autenticación
-
01-07-2019 - |
Pregunta
Decir que tengo la siguiente web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authentication mode="Windows"></authentication>
</system.web>
</configuration>
El uso de ASP.NET C#, ¿cómo se puede detectar el Modo de valor de la Autenticación de la etiqueta?
Solución
Trate de Context.User.Identity.AuthenticationType
Ir para el PB de la respuesta de la gente
Otros consejos
El modo de propiedad de la authenticationsection: AuthenticationSection.El Modo De La Propiedad (Del Sistema.Web.De configuración).E incluso se puede modificar.
// Get the current Mode property.
AuthenticationMode currentMode =
authenticationSection.Mode;
// Set the Mode property to Windows.
authenticationSection.Mode =
AuthenticationMode.Windows;
En este artículo se describe cómo obtener una referencia a la AuthenticationSection.
La importación de la System.Web.Configuration
espacio de nombres y hacer algo como:
var configuration = WebConfigurationManager.OpenWebConfiguration("/");
var authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
if (authenticationSection.Mode == AuthenticationMode.Forms)
{
//do something
}
También puede obtener el modo de autenticación mediante el uso de la estática ConfigurationManager
clase para obtener la sección y, a continuación, la enumeración AuthenticationMode
.
AuthenticationMode authMode = ((AuthenticationSection) ConfigurationManager.GetSection("system.web/authentication")).Mode;
La diferencia entre WebConfigurationManager y ConfigurationManager
Si desea recuperar el nombre de la constante en la enumeración especificado usted puede hacer esto mediante el uso de la Enum.GetName(Type, Object)
método
Enum.GetName(typeof(AuthenticationMode), authMode); // e.g. "Windows"
utilizar una consulta de xpath //configuración/configuración del sistema.web/autenticación[mode] ?
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument config = new XmlDocument();
config.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
XmlNode node = config.SelectSingleNode("//configuration/system.web/authentication");
this.Label1.Text = node.Attributes["mode"].Value;
}