La Rilevazione Web.Config Modalità Di Autenticazione
-
01-07-2019 - |
Domanda
Dire che ho i seguenti web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authentication mode="Windows"></authentication>
</system.web>
</configuration>
Utilizzando ASP.NET C#, come è possibile rilevare il valore di Modalità di Autenticazione tag?
Soluzione
Provare Context.User.Identity.AuthenticationType
Andare per PB risposta della gente
Altri suggerimenti
La proprietà mode dal authenticationsection: AuthenticationSection.Modalità Di Proprietà (Di Sistema.Web.Configurazione).E si può anche modificare.
// Get the current Mode property.
AuthenticationMode currentMode =
authenticationSection.Mode;
// Set the Mode property to Windows.
authenticationSection.Mode =
AuthenticationMode.Windows;
In questo articolo viene descritto come ottenere un riferimento al AuthenticationSection.
Importare il System.Web.Configuration
spazio dei nomi e fare qualcosa di simile:
var configuration = WebConfigurationManager.OpenWebConfiguration("/");
var authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
if (authenticationSection.Mode == AuthenticationMode.Forms)
{
//do something
}
È inoltre possibile ottenere la modalità di autenticazione utilizzando la statica ConfigurationManager
classe per ottenere la sezione e quindi il enum AuthenticationMode
.
AuthenticationMode authMode = ((AuthenticationSection) ConfigurationManager.GetSection("system.web/authentication")).Mode;
La differenza tra WebConfigurationManager e ConfigurationManager
Se si desidera recuperare il nome della costante specificato enumerazione è possibile eseguire questa operazione utilizzando il Enum.GetName(Type, Object)
metodo
Enum.GetName(typeof(AuthenticationMode), authMode); // e.g. "Windows"
utilizzare una query xpath //configurazione/sistema.web/autenticazione[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;
}