A autenticação de declarações não valida o usuário no SharePoint Server

APLICA-SE A:yes-img-132013 yes-img-16 2016yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint no Microsoft 365

Quando os usuários tentam se conectar a um aplicativo Web, os logs registram eventos de autenticação com falha. Se você usar ferramentas fornecidas pela Microsoft e usar uma abordagem sistemática para examinar das falhas, poderá aprender sobre os problemas comuns relacionados à autenticação com base em declarações e resolvê-los.

O acesso bem-sucedido a um recurso do SharePoint exige autenticação e autorização. Ao usar declarações, a autenticação verifica se o token de segurança é válido. A autorização verifica se o acesso ao recurso é permitido, com base em um conjunto de declarações no token de segurança e nas permissões configuradas para o recurso.

Para determinar se a autenticação ou autorização causaram um problema de acesso, observe atentamente a mensagem de erro na janela do navegador.

  • Se a mensagem de erro indicar que o usuário não tem acesso ao site, a autenticação terá sido bem sucedida e a autorização não. Para solucionar o problema da autorização, tente as seguintes soluções:

    • O motivo mais comum para a falha de autorização ao usar a autenticação com base em declarações SAML (Security Assertion Markup Language) é que as permissões foram atribuídas à conta (domínio/usuário) com base no Windows de um usuário em vez da declaração de identidade SAML do usuário.

    • Verifique se o usuário ou um grupo ao qual o usuário pertença foi configurado para usar as permissões apropriadas. Para obter mais informações, consulte Permissões de usuário e níveis de permissão no SharePoint Server.

    • Use as ferramentas e técnicas deste artigo para determinar o conjunto de declarações no token de segurança do usuário, de modo que você possa compará-lo com as permissões configuradas.

  • Se a mensagem indicar que a autenticação falhou, você terá um problema de autenticação. Se o recurso estiver contido dentro de um aplicativo Web SharePoint que usa a autenticação com base em declarações, use as informações neste artigo para começar a solução de problemas.

Ferramentas de solução de problema

Veja a seguir as principais ferramentas de solução de problema fornecidas pela Microsoft para coletar informações sobre autenticação de declarações no SharePoint Server:

  • Use logs ULS (Unified Logging System) para obter os detalhes das transações de autenticação.

  • Use a Administração Central para verificar os detalhes das configurações de autenticação do usuário para aplicativos Web SharePoint e zonas e configurar níveis do registro em log ULS.

  • Se você estiver usando os Serviços de Federação do Active Directory 2.0 (AD FS) como seu provedor de federação para autenticação de declarações com base em SAML, poderá usar o registro em log AD FS para determinar as declarações que estão nos tokens de segurança emitidos pelo AD FS para os computadores clientes da Web.

  • Use o Network Monitor 3.4 para capturar e examinar os detalhes do tráfego de rede de autenticação do usuário.

Configurando o nível de registro em log ULS para autenticação do usuário

O procedimento a seguir configura o SharePoint Server para registrar em log a quantidade máxima de informações para tentativas de autenticação de declarações.

Para configurar o SharePoint Server para a quantidade máxima de registro em log de autenticação do usuário

  1. No Administração Central, clique em Monitoramento em Início Rápido e clique em Configurar log de diagnóstico.

  2. Na lista de categorias, expanda SharePoint Foundation e selecione Autenticação Autorização e Autenticação de Declarações.

  3. Em Evento menos crítico a ser relatado no log de eventos, selecione Detalhado.

  4. Em Evento menos crítico a ser relatado no log de rastreamento, selecione Detalhado.

  5. Clique em OK.

Para otimizar o desempenho quando não estiver executando a solução de problemas de autenticação de declarações, execute estas etapas para definir o log de autenticação de usuário com seus valores padrão.

Para configurar o SharePoint Server para a quantidade padrão de registro em log de autenticação do usuário

  1. No Administração Central, clique em Monitoramento em Início Rápido e clique em Configurar log de diagnóstico.

  2. Na lista de categorias, expanda SharePoint Foundation e selecione Autenticação Autorização e Autenticação de Declarações.

  3. Em Evento menos crítico a ser relatado no log de eventos, selecione Informações.

  4. Em Evento menos crítico a ser relatado no log de rastreamento, selecione Médio.

  5. Clique em OK.

Configurando o registro em log AD FS

Mesmo depois de habilitar o nível máximo de registro em log ULS, o SharePoint Server não registra o conjunto de declarações em um token de segurança que recebe. Se você usar AD FS para autenticação de declarações com base em SAML, poderá habilitar o log AD FS e usar o Visualizador de Eventos para examinar as declarações para tokens de segurança emitidos pelo SharePoint Server.

Para habilitar o registro em log AD FS

  1. No servidor AD FS, em Visualizador de Eventos, clique em Exibir e clique em Mostrar Logs Analíticos e de Depuração.

  2. Na árvore de console do Visualizador de Eventos, expanda Logs de Aplicativos e Serviços/Rastreamento AD FS 2.0.

  3. Clique com o botão direito do mouse em Depurar e clique em Habilitar Log.

  4. Abra a pasta %ProgramFiles% \Serviços de Federação do Active Directory 2.0.

  5. Use o Bloco de Notas para abrir o arquivo Microsoft.IdentityServer.ServiceHost.Exe.Config.

  6. Clique em Editar, em Localizar, digite <source name="Microsoft.IdentityModel" switchValue="Off"> e clique em OK.

  7. Altere switchValue="Off" para switchValue="Verbose".

  8. Clique em Arquivo, em Salvar e saia do Bloco de Notas.

  9. A partir do snap-in Serviços, clique com o botão direito do mouse no **serviço AD FS 2.0** e clique em Reiniciar.

Agora, é possível usar o Visualizador de Eventos no servidor do AD FS para examinar detalhes sobre declarações do nó Logs de Aplicativos e Serviços/Rastreamento AD FS 2.0/Depuração. Procure por eventos com o ID de Evento 1001.

Também é possível enumerar declarações com um HttpModule ou Web Part ou por meio de OperationContext. Para obter mais informações, confira How to Get All User Claims at Claims Augmentation Time in SharePoint 2010 (Como Obter Todas as Declarações do Usuário no Tempo de Aumento de Declarações no SharePoint 2010). Essas informações sobre o SharePoint 2010 também se aplicam ao SharePoint 2013.

Metodologia de solução de problemas para autenticação de usuário por declarações

As etapas a seguir podem ajudá-lo a determinar a causa das falhas nas tentativas de autenticação de declarações.

Etapa 1: determinar os detalhes da tentativa de autenticação com falha

Para obter informações detalhadas e definitivas sobre uma tentativa de autenticação com falha, encontre-as nos logs ULS do SharePoint. Esses arquivos de log estão armazenados na pasta %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\15\LOGS.

É possível encontrar a tentativa de autenticação com falha nos arquivos de log ULS manualmente ou por meio do ULS Log Viewer.

Para encontrar manualmente a tentativa de autenticação com falha

  1. Obtenha com o usuário o nome da conta de usuário que produz a tentativa de autenticação com falha.

  2. No servidor que está executando o SharePoint Server ou o SharePoint Foundation, encontre a pasta %CommonProgramFiles% \Microsoft Shared\Web Server Extensions\16\LOGS ou %CommonProgramFiles% \Microsoft Shared\Web Server Extensions\15\LOGS.

  3. Na pasta LOGS, clique em Data da modificação para classificar a pasta por data, com a mais recente no topo.

  4. Tente a tarefa de autenticação novamente.

  5. Na janela da pasta LOGS, clique duas vezes no arquivo de log no topo da lista para abrir o arquivo no Bloco de Notas.

  6. No Bloco de Notas, clique em Editar, em Localizar, digite Autenticação Autorização ou Autenticação de Declarações e clique em Localizar Próxima.

  7. Clique em Cancelar e leia o conteúdo da coluna Mensagem.

Para usar o ULS Viewer, baixe-o em ULS Viewer e salve-o em uma pasta no servidor que está executando o SharePoint Server ou o SharePoint Foundation. Após sua instalação, siga estas etapas para localizar a tentativa de autenticação com falha.

Para encontrar a tentativa de autenticação com falha usando o ULS Viewer

  1. No servidor que está executando o SharePoint Server ou o SharePoint Foundation, clique duas vezes em Ulsviewer na pasta na qual ele está armazenado.

  2. No ULS Viewer, clique em File, aponte para Open From e clique em ULS.

  3. Na caixa de diálogo Configurar o feed do ULS Runtime , verifique se a pasta %CommonProgramFiles% \Common Files\Microsoft Shared\Web Server Extensions\16\LOGS ou \Common Files\Microsoft Shared\Web Server Extensions\15\LOGS é especificada na pasta Usar feed ULS do diretório padrão do arquivo de log. Se não estiver, clique em Use directory location for real-time feeds e especifique a pasta %CommonProgramFiles% \Microsoft Shared\Web Server Extensions\16\LOGS folder ou \Microsoft Shared\Web Server Extensions\15\LOGS em Log file location.

    Para %CommonProgramFiles%, substitua o valor da variável de ambiente CommonProgramFiles do servidor que está executando o SharePoint Server ou o SharePoint Foundation. Por exemplo, se o local for a unidade C, %CommonProgramFiles% será definido como C:\Arquivos de Programas\Common Files.

  4. Clique em OK.

  5. Clique em Edit e em Modify Filter.

  6. Na caixa de diálogo Filtrar por , em Campo, clique em Categoria.

  7. Em Value, digite Authentication Authorization ou Claims Authentication e clique em OK.

  8. Repita a tentativa de autenticação.

  9. Na janela do ULS Viewer, clique duas vezes nas linhas exibidas para exibir a parte Message.

Na parte de codificação de declarações da parte Message para solicitações que não são OAuth, é possível determinar o método de autenticação e a identidade do usuário codificado da string codificada por declarações (exemplo: i:0#.w|contoso\chris). Para obter mais informações, confira SharePoint 2013 and SharePoint 2010 claims encoding (Codificação de declarações do SharePoint 2013 e do SharePoint 2010).

Etapa 2: verificar os requisitos de configuração

Para determinar como um aplicativo Web ou zona é configurado para suportar um ou mais métodos de autenticação de declarações, use o site da Administração Central do SharePoint.

Para verificar a configuração de autenticação para um aplicativo Web ou zona

  1. Em Administração Central, clique em Gerenciamento de Aplicativo no Início Rápido e clique em Gerenciar aplicativos Web.

  2. Clique no nome do aplicativo Web que o usuário está tentando acessar e no grupo Segurança da faixa de opções, clique em Provedores de Autenticação.

  3. Na lista de provedores de autenticação, clique na zona apropriada (como Padrão).

  4. Na caixa de diálogo Editar Autenticação , na seção Tipos de Autenticação de Declarações , verifique as configurações para autenticação de declarações.

  • Para autenticação por declarações do Windows, verifique se Habilitar Autenticação do Windows e Autenticação integrada do Windows estão selecionados e NTLM ou Negociar (Kerberos) está selecionado conforme o necessário. Selecione Autenticação básica se for necessário.

  • Para autenticação com base em formulários, verifique se Habilitar Autenticação Baseada em Formulários (FBA) está selecionado. Verifique os valores em Nome do provedor de Associação ASP.NET e Nome do gerenciador de Funções ASP.NET. Esses valores precisam corresponder aos valores de provedor de associação e de função configurados em seus arquivos web.config para o site da Administração Central do SharePoint, aplicativo Web e SharePoint Web Services\SecurityTokenServiceApplication. Para obter mais informações, consulte Configure forms-based authentication for a claims-based web application in SharePoint Server.

  • Para autenticação de declarações com base em SAML, verifique se o Provedor de identidade confiável e o nome do provedor confiável correto estão selecionados. Para obter mais informações, consulte Configure SAML-based claims authentication with AD FS in SharePoint Server.

  • Na seção URL da Página de Entrada, verifique a opção para a página de entrada. Para uma página de entrada padrão, Página de Entrada Padrão deve estar selecionada. Para uma página de entrada personalizada, verifique a URL especificada da página de entrada personalizada. Para verificá-la, copie a URL e tente acessá-la usando um navegador da Web.

  1. Clique em Salvar para salvar as alterações nas configurações de autenticação.

  2. Repita a tentativa de autenticação. Para autenticação com base em formulários ou SAML, a página de entrada esperada aparece com as opções de entrada corretas?

  3. Se a autenticação ainda falhar, verifique os logs de ULS para determinar se há diferença entre a tentativa de autenticação antes da configuração de autenticação mudar e depois disso.

Etapa 3: itens adicionais para verificação

Depois de verificar os arquivos de log e a configuração do aplicativo Web, verifique o seguinte:

  • O navegador da Web no computador cliente da Web suporta declarações. Para obter mais informações, confira Plano de suporte do navegador no SharePoint Server 2016.

  • Para autenticação por declarações do Windows, verifique o seguinte:

    • O computador a partir do qual o usuário emite a tentativa de autenticação é membro do mesmo domínio que o servidor que hospeda o aplicativo Web do SharePoint ou membro de um domínio no qual o servidor de hospedagem confia.

    • O computador a partir do qual o usuário emite a tentativa de autenticação está conectado ao seu domínio dos Serviços de Domínio Active Directory (AD DS). Digite nltest /dsgetdc: /force em um Prompt de comando ou no Shell de Gerenciamento do SharePoint no computador cliente da Web para se certificar se que possa acessar um controlador de domínio. Se nenhum controlador de domínio estiver listado, solucione o problema de falta de detectabilidade e conectividade entre o computador cliente da Web e um controlador de domínio AD DS.

    • O servidor que está executando o SharePoint Server ou o SharePoint Foundation está conectado ao seu domínio do AD DS. Digite nltest /dsgetdc: /force em um Prompt de Comando ou no Shell de Gerenciamento do SharePoint no servidor que está executando o SharePoint Server ou o SharePoint Foundation para se certificar de que possa acessar um controlador de domínio. Se não houver controladores de domínio listados, solucione o problema de falta de detectabilidade e conectividade entre o servidor que está executando o SharePoint Server ou o SharePoint Foundation e um controlador de domínio do AD DS.

  • Para autenticação com base em formulários, verifique o seguinte:

    • As credenciais do usuário para a associação de ASP.NET configurada e o provedor de função estão corretas.

    • Os sistemas que hospedam a associação de ASP.NET e o provedor de função estão disponíveis na rede.

    • As páginas de entrada personalizadas coletam e transmitem corretamente as credenciais do usuário. Para testar isso, configure o aplicativo Web para usar temporariamente a página de entrada padrão e verificar se ela funciona.

  • Para autenticação de declarações com base em SAML, verifique o seguinte:

    • As credenciais de usuário para o provedor de identidade configurado estão corretas.

    • Sistemas que agem como o provedor de federação (como AD FS) e o provedor de identidade (como AD DS ou um provedor de identidade de terceiros) estão disponíveis na rede.

    • As páginas de entrada personalizadas coletam e transmitem corretamente as credenciais do usuário. Para testar isso, configure o aplicativo Web para usar temporariamente a página de entrada padrão e verificar se ela funciona.

Etapa 4: usar uma ferramenta de depuração na Web para monitorar e analisar o tráfego na Web

Use uma ferramenta como HttpWatch ou Fiddler para analisar os seguintes tipos de tráfego HTTP:

  • Entre o computador cliente da Web e o servidor que está executando o SharePoint Server ou o SharePoint Foundation

    Por exemplo, é possível monitorar as mensagens de Redirecionamento HTTP que o servidor que está executando o SharePoint Server ou o SharePoint Foundation envia para informar ao computador cliente da Web sobre o local de um servidor de federação (como AD FS).

  • Entre o computador cliente da Web e o servidor de federação (como AD FS)

    Por exemplo, é possível monitorar as mensagens HTTP enviadas pelo computador cliente da Web e as respostas do servidor de federação, que podem incluir tokens de segurança e suas declarações.

Observação

[!OBSERVAçãO] Se você usar o Fiddler, a tentativa de autenticação poderá falhar após exigir três solicitações de autenticação. Para impedir esse comportamento, confira Using Fiddler With SAML and SharePoint to Get Past the Three Authentication Prompts.

Etapa 5: capturar e analisar o tráfego de rede de autenticação

Use uma ferramenta de tráfego de rede, como o Network Monitor 3.4, para capturar e analisar o tráfego entre o computador cliente da Web, o servidor que está executando o SharePoint Server ou o SharePoint Foundation e os sistemas dos quais o SharePoint Server ou o SharePoint Foundation depende para autenticação por declarações.

Observação

Em muito casos, a autenticação por declarações usa conexões com base em HTTPS (Hypertext Transfer Protocol Secure) que criptografa as mensagens enviadas entre os computadores. Não é possível ver o conteúdo das mensagens criptografadas com uma ferramenta de tráfego de rede sem o auxílio de um suplemento ou extensão. Por exemplo, para o Network Monitor, é necessário instalar e configurar o Network Monitor Decryption Expert. Uma alternativa mais fácil para tentar descriptografar mensagens HTTPS, use uma ferramenta como o Fiddler no servidor que hospeda o SharePoint Server ou o SharePoint Foundation que pode reportar mensagens HTTP descriptografadas.

Uma análise do tráfego de rede pode revelar o seguinte:

  • O conjunto exato de protocolos e mensagens que estão sendo enviadas entre os computadores envolvidos no processo de autenticação por declarações. As mensagens de resposta podem conter informações sobre a condição de erro, que podem ser usadas para determinar etapas adicionais de solução de problemas.

  • Se as mensagens de solicitação têm respostas correspondentes. Múltiplas mensagens de solicitação enviadas que não recebem uma resposta podem indicar que o tráfego de rede não está alcançando seu destino desejado. Nesse caso, verifique a existência de problemas de roteamento de pacote, dispositivos de filtragem de pacotes no caminho (como um firewall) ou filtragem de pacote no destino (como um firewall local).

  • Se múltiplos métodos de declaração estão sendo tentados, e quais estão falhando.

Para autenticação de declarações do Windows, é possível capturar e analisar o tráfego entre os seguintes computadores:

  • O computador cliente da Web e o servidor que está executando o SharePoint Server ou o SharePoint Foundation

  • O servidor que está executando o SharePoint Server ou o SharePoint Foundation e seu controlador de domínio

Para autenticação com base em formulários, é possível capturar e analisar o tráfego entre os seguintes computadores:

  • O computador cliente da Web e o servidor que está executando o SharePoint Server ou o SharePoint Foundation

  • O servidor que está executando o SharePoint Server ou o SharePoint Foundation e a associação ASP.NET e provedor de função

Para autenticação de declarações com base em SAML, é possível capturar e analisar o tráfego entre os seguintes computadores:

  • O computador cliente da Web e o servidor que está executando o SharePoint Server ou o SharePoint Foundation

  • O computador cliente da Web e seu provedor de identidade (como um controlador de domínio AD DS)

  • O computador cliente da Web e o provedor de federação (como o AD FS)

Confira também

Outros recursos

Configure forms-based authentication for a claims-based web application in SharePoint Server

Configure SAML-based claims authentication with AD FS in SharePoint Server