Autenticação Integrada do Windows
por Mike Wasson
A autenticação do Windows integrada permite que os usuários façam logon com suas credenciais do Windows usando Kerberos ou NTLM. O cliente envia credenciais no cabeçalho autorização. A autenticação do Windows é mais adequada para um ambiente de intranet. Para obter mais informações, confira Autenticação do Windows.
Vantagens | Desvantagens |
---|---|
Integrado ao IIS. | Não recomendado para aplicativos da Internet. |
Não envia as credenciais do usuário na solicitação. | Requer suporte a Kerberos ou NTLM no cliente. |
Se o computador cliente pertencer ao domínio (por exemplo, aplicativo de intranet), o usuário não precisará inserir credenciais. | O cliente deve estar no domínio do Active Directory. |
Observação
Se o aplicativo estiver hospedado no Azure e você tiver um domínio local do Active Directory, considere federar seu AD local com o Azure Active Directory. Dessa forma, os usuários podem fazer logon com suas credenciais locais, mas a autenticação é executada por Azure AD. Para obter mais informações, consulte Autenticação do Azure.
Para criar um aplicativo que usa o autenticação do Windows Integrado, selecione o modelo "Aplicativo intranet" no assistente de projeto do MVC 4. Este modelo de projeto coloca a seguinte configuração no arquivo Web.config:
<system.web>
<authentication mode="Windows" />
</system.web>
No lado do cliente, o Integrated autenticação do Windows funciona com qualquer navegador que dê suporte ao esquema de autenticação Negotiate, que inclui a maioria dos principais navegadores. Para aplicativos cliente .NET, a classe HttpClient dá suporte a autenticação do Windows:
HttpClientHandler handler = new HttpClientHandler()
{
UseDefaultCredentials = true
};
HttpClient client = new HttpClient(handler);
autenticação do Windows é vulnerável a ataques CSRF (solicitação intersite forjada). Consulte Prevenção de ataques CSRF (solicitação entre sites forjadas).