Compartilhar via


Classe FormsAuthenticationConfiguration

Configura a autenticação de Formulários para um aplicativo ASP.NET.

Sintaxe

class FormsAuthenticationConfiguration : EmbeddedObject  

Métodos

Essa classe não contém métodos.

Propriedades

A tabela a seguir lista as propriedades expostas pela classe FormsAuthenticationConfiguration.

Nome Descrição
Cookieless Uma enumeração sint32 de leitura/gravação que especifica se a autenticação de Formulários deve usar cookies. Os valores possíveis estão listados posteriormente na seção Comentários.
Credentials Um valor FormsAuthenticationCredentials que contém uma coleção de nomes de usuário e senhas a serem usadas durante a autenticação de Formulários. Observação: quando a segurança é necessária, você deve usar maneiras alternativas de armazenar nomes de usuário e senhas (por exemplo, em um repositório de banco de dados). Se você decidir usar essa coleção, deverá especificar um formato de criptografia na propriedade PasswordFormat da classe FormsAuthenticationCredentials.
DefaultUrl Um valor string não vazio de leitura/gravação que especifica a URL padrão para a qual direcionar a solicitação após a autenticação. O padrão é “default.aspx”.
Domain Um valor string de leitura/gravação que especifica o nome de domínio a ser enviado com cookies de autenticação dos Formulários. O padrão é "". Para os cookies de autenticação de Formulários, essa configuração tem precedência sobre a configuração na propriedade Domain da classe HttpCookiesSection.
EnableCrossAppRedirects Um valor boolean de leitura/gravação. true se os usuários autenticados podem ser redirecionados para URLs em outros aplicativos; caso contrário, false. O padrão é false. Se essa propriedade for true, o redirecionamento será executado; caso contrário, o navegador será redirecionado para a página definida na propriedade DefaultUrl. Observação: quando a autenticação de Formulários é habilitada em vários aplicativos ASP.NET, os usuários não são obrigados a autenticar novamente quando alternam entre os aplicativos. Para obter mais informações, consulte Autenticação de Formulários entre aplicativos.
LoginUrl Um valor string de leitura/gravação não inteiro que especifica a URL para a qual a solicitação é redirecionada quando o usuário não é autenticado ou quando nenhum cookie de autenticação válido existe. O padrão é “login.aspx”.
Name Um valor string de leitura/gravação não vazio que especifica o nome do cookie HTTP a ser usado para autenticação de solicitação. O padrão é “.ASPXAUTH”.
Path Um valor string de leitura/gravação não vazio que especifica o caminho do cookie HTTP a ser usado para autenticação. O caminho é transmitido junto com o próprio cookie de autenticação. O padrão é "/", que representa a raiz do aplicativo Web.
Protection Um valor sint32 de leitura/gravação que especifica o método de criptografia usado para o cookie. Os valores possíveis estão listados posteriormente na seção Comentários.
RequireSSL Um valor boolean de leitura/gravação. true se uma conexão SSL (Secure Sockets Layer) for necessária para autenticação; caso contrário, false. O padrão é false. Se essa propriedade for true, um aplicativo Web rejeitará todas as solicitações de autenticação de Formulários que não usam uma conexão SSL.
SlidingExpiration Um valor boolean de leitura/gravação. true se a expiração do cookie de autenticação for definida como a data e a hora atuais mais o valor, em minutos, na propriedade Timeout; caso contrário, false. O padrão é true.

Se true, a data de validade e a hora do cookie serão automaticamente redefinidas se restar menos da metade do valor em Timeout e o usuário ainda estiver usando o aplicativo ativamente. Se false, o cookie atingirá o tempo limite automaticamente após o intervalo especificado na propriedade Timeout ter passado.
Timeout Um valor datetime de leitura/gravação que especifica a quantidade de tempo após a qual a autenticação expira. O padrão é de 30 minutos.

Subclasses

Essa classe não contém subclasses.

Comentários

As instâncias desta classe estão contidas na propriedade de matriz Forms da classe AuthenticationSection.

A tabela a seguir lista os possíveis valores da propriedade Cookieless. O padrão é 3 (UseDeviceProfile).

Valor Palavra-chave Descrição
0 UseUri Especifica que o recurso de chamada usa a cadeia de caracteres de consulta para armazenar um identificador, independentemente de o navegador ou dispositivo dar suporte a cookies.
1 UseCookies Especifica que os cookies são usados para persistir dados de usuário, independentemente de o navegador ou dispositivo dar suporte aos cookies.
2 AutoDetect Especifica que o ASP.NET determina se o navegador ou dispositivo solicitante dá suporte aos cookies. Se o navegador ou dispositivo der suporte a cookies, o recurso solicitante usará cookies para persistir os dados do usuário; caso contrário, o recurso de solicitação usa um identificador na cadeia de caracteres de consulta. Se o navegador ou dispositivo der suporte aos cookies, mas eles estiverem desabilitados no momento, o recurso de solicitação ainda usará cookies.
3 UseDeviceProfile Especifica que o ASP.NET determina se os cookies devem ser usados com base na propriedade Cookies da classe System.Web.Configuration.HttpCapabilitiesBase. Se a configuração indicar que o navegador ou dispositivo dá suporte a cookies, o recurso de solicitação usará cookies; caso contrário, o recurso de solicitação usará um identificador na cadeia de caracteres de consulta.

A tabela a seguir lista os possíveis valores da propriedade Protection. O padrão é 0 (All).

Valor Palavra-chave Descrição
0 All Especifica que o aplicativo usará tanto validação de dados quanto criptografia para ajudar a proteger os cookies. Essa opção usa o algoritmo de validação de dados especificado na classe MachineKeySection. O aplicativo usa o DES Triplo (padrão de criptografia de dados triplo) para criptografia se ele estiver disponível e se a chave tiver pelo menos 48 bytes de comprimento. Observação: Esta é a configuração recomendável. Para melhorar a proteção do cookie, talvez você também queira definir a propriedade RequireSSL como true.
1 None Especifica que a criptografia e a validação estão desabilitadas. Essa configuração é para sites com requisitos de segurança mais fracos que usam cookies apenas para personalização. Você deve evitar o uso de cookies dessa maneira. No entanto, essa é a maneira de habilitar a personalização usando o .NET Framework que envolve o menor consumo de recursos.
2 Encryption Especifica que os cookies são criptografados com DES ou DES triplo. Com essa configuração, a validação de dados não é realizada nos cookies, o que os torna suscetíveis a ataques de segurança de texto simples.
3 Validation Especifica que o aplicativo usará um esquema de validação para verificar que o conteúdo de um cookie criptografado não foi alterado em trânsito. O cookie é criado concatenando-se uma chave de validação com os dados do cookie, computando um MAC (Message Authentication Code) e acrescentando o MAC ao cookie de saída.

Exemplo

O exemplo a seguir exibe as configurações de autenticação de Formulários para o site padrão.

' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")  
  
' Get the authentication section.  
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")  
oSite.GetSection "AuthenticationSection", oAuthSection  
  
' Assign the Forms property to a variable.  
Set oFormsAuthConfig = oAuthSection.Forms  
  
' Display the Forms authentication settings.  
WScript.Echo "Forms Authentication Settings"  
WScript.Echo "-----------------------------"  
  
WScript.Echo "Cookieless: [ " & _  
    CookielessText(oFormsAuthConfig.Cookieless)& " ]"  
  
WScript.Echo "Default Url: [ " & _  
    oFormsAuthConfig.DefaultUrl& " ]"  
  
WScript.Echo "Domain: [ " & oFormsAuthConfig.Domain& " ]"  
  
WScript.Echo "EnableCrossAppRedirects: [ " & _  
    oFormsAuthConfig.EnableCrossAppRedirects& " ]"  
  
WScript.Echo "LoginUrl: [ " & _  
    oFormsAuthConfig.LoginUrl & " ]"  
  
WScript.Echo "Name: [ " & oFormsAuthConfig.Name& " ]"  
  
WScript.Echo "Path: [ " & oFormsAuthConfig.Path& " ]"  
  
WScript.Echo "Protection: [ " & _  
    ProtectionText(oFormsAuthConfig.Protection)& " ]"  
  
WScript.Echo "RequireSSL: [ " & _  
    oFormsAuthConfig.RequireSSL& " ]"  
  
WScript.Echo "SlidingExpiration: [ " & _  
    oFormsAuthConfig.SlidingExpiration& " ]"  
  
WScript.Echo "Timeout: [ " & oFormsAuthConfig.Timeout& " ]"  
  
' Call a sub to display the credentials information.  
DisplayCredentials(oFormsAuthConfig.Credentials)  
  
' Convert the Cookieless enumeration values to text.  
Function CookielessText(enumValue)  
    Select Case enumValue  
        Case 0  
            CookielessText = "UseUri"  
        Case 1  
            CookielessText = "UseCookies"  
        Case 2  
            CookielessText = "AutoDetect"  
        Case 3  
            CookielessText = "UseDeviceProfile"  
        Case Else  
            CookielessText = "Undefined enumeration value."  
    End Select  
End Function  
  
' Convert the Protection enumeration values to text.  
Function ProtectionText(enumValue)  
    Select Case enumValue  
        Case 0  
            ProtectionText = "All"  
        Case 1  
            ProtectionText = "None"  
        Case 2  
            ProtectionText = "Encryption"  
        Case 3  
            ProtectionText = "Validation"  
        Case Else  
            ProtectionText = "Undefined enumeration value."  
    End Select  
End Function  
  
' Display the Forms authentication credentials.  
Sub DisplayCredentials(FA_Credentials)  
    WScript.Echo vbCrLf & "Forms Authentication Credentials"  
    WScript.Echo "--------------------------------"  
  
    ' Display the password encryption format.  
    WScript.Echo "Password Format: " & _  
        PwdFormatText(FA_Credentials.PasswordFormat) & VbCrLf  
  
    ' Display the Forms authentication users and passwords.  
    For Each FormsAuthUser In FA_Credentials.Credentials  
        WScript.Echo "    Name: [ " & FormsAuthUser.Name & " ]"  
        WScript.Echo "Password: [ " & _  
            FormsAuthUser.Password& " ]"  
        WScript.Echo  
    Next  
End Sub  
  
' Convert the PasswordFormat enumeration values to text.  
Function PwdFormatText(enumValue)  
    Select Case enumValue  
        Case 0  
            PwdFormatText = "Clear"  
        Case 1  
            PwdFormatText = "SHA1"  
        Case 2  
            PwdFormatText = "MD5"  
        Case Else  
            PwdFormatText = "Undefined enumeration value."  
    End Select  
End Function  
  

Hierarquia de herança

EmbeddedObject

FormsAuthenticationConfiguration

Requisitos

Tipo Descrição
Cliente - IIS 7.0 no Windows Vista
– IIS 7.5 no Windows 7
– IIS 8.0 no Windows 8
– IIS 10.0 no Windows 10
Servidor – IIS 7.0 no Windows Server 2008
– IIS 7.5 no Windows Server 2008 R2
– IIS 8.0 no Windows Server 2012
– IIS 8.5 no Windows Server 2012 R2
– IIS 10.0 no Windows Server 2016
Product – IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
Arquivo MOF WebAdministration.mof

Confira também

Classe System.Web.Configuration.AuthenticationModeSystem.Web.Configuration.FormsAuthenticationConfigurationSystem.Web.Configuration.HttpCapabilitiesBaseAuthenticationSection
Classe EmbeddedObject
Classe FormsAuthenticationCredentials
Classe FormsAuthenticationUser
Classe MachineKeySection
Autenticação de formulários entre aplicativos
CIM_DATETIME