A autenticação de afirmações não valida o utilizador no SharePoint Server
APLICA-SE A:2013 2016 2019 Subscription Edition SharePoint 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. Quando estiver a utilizar afirmaçõ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 utilizador não tem acesso ao site, a autenticação foi efetuada com êxito e a autorização falhou. Para solucionar o problema da autorização, tente as seguintes soluções:
O motivo mais comum para a autorização falhada quando está a utilizar a autenticação baseada em afirmações saml (Security Assertion Markup Language) é que as permissões foram atribuídas à conta baseada no Windows de um utilizador (domínio\utilizador) em vez da afirmação de identidade SAML do utilizador.
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 estiver a utilizar o Serviços de Federação do Active Directory (AD FS) 2.0 (AD FS) como o seu fornecedor de federação para autenticação de afirmações baseadas em SamL (Security Assertion Markup Language), pode utilizar o registo do AD FS para determinar as afirmações que estão em tokens de segurança que o AD FS emite para computadores cliente 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
Na Administração Central, selecione Monitorização na Iniciação Rápida e, em seguida, selecione Configurar registo de diagnósticos.
Na lista de categorias, expanda SharePoint Foundation e selecione Autenticação Autorização e Autenticação de Declarações.
Em Evento menos crítico a ser relatado no log de eventos, selecione Detalhado.
Em Evento menos crítico a ser relatado no log de rastreamento, selecione Detalhado.
Selecione OK.
Para otimizar o desempenho quando não estiver a executar a resolução de problemas de autenticação de afirmações, siga estes passos para definir o registo de autenticação do utilizador para os valores predefinidos.
Para configurar o SharePoint Server para a quantidade padrão de registro em log de autenticação do usuário
Na Administração Central, selecione Monitorização na Iniciação Rápida e, em seguida, selecione Configurar registo de diagnósticos.
Na lista de categorias, expanda SharePoint Foundation e selecione Autenticação Autorização e Autenticação de Declarações.
Em Evento menos crítico a ser relatado no log de eventos, selecione Informações.
Em Evento menos crítico a ser relatado no log de rastreamento, selecione Médio.
Selecione 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
No servidor do AD FS, no Visualizador de Eventos, selecione Ver e, em seguida, selecione Mostrar Registos analíticos e de depuração.
Na árvore de console do Visualizador de Eventos, expanda Logs de Aplicativos e Serviços/Rastreamento AD FS 2.0.
Clique com o botão direito do rato em Depurar e, em seguida, selecione Ativar Registo.
Abra a pasta %ProgramFiles% \Serviços de Federação do Active Directory 2.0.
Use o Bloco de Notas para abrir o arquivo Microsoft.IdentityServer.ServiceHost.Exe.Config.
Selecione Editar, selecione Localizar, escreva <source name="Microsoft.IdentityModel" switchValue="Off"> e, em seguida, selecione OK.
Altere switchValue="Off" para switchValue="Verbose".
Selecione Ficheiro, selecione Guardar e, em seguida, saia do Bloco de Notas.
No snap-in Serviços, clique com o botão direito do rato no serviço ** AD FS 2.0 **e, em seguida, selecione 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
Obtenha com o usuário o nome da conta de usuário que produz a tentativa de autenticação com falha.
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.
Na pasta LOGS , selecione Data de modificação para ordenar a pasta por data, com a mais recente na parte superior.
Tente a tarefa de autenticação novamente.
Na janela da pasta LOGS, clique duas vezes no arquivo de log no topo da lista para abrir o arquivo no Bloco de Notas.
No Bloco de Notas, selecione Editar, selecione Localizar, escreva Autorização de Autenticação ou Autenticação de Afirmações e, em seguida, selecione Localizar Seguinte.
Selecione Cancelar e, em seguida, 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 a instalação, siga estes passos para localizar a tentativa de autenticação falhada.
Para encontrar a tentativa de autenticação com falha usando o ULS Viewer
No servidor que está a executar o SharePoint Server ou o SharePoint Foundation, faça duplo clique em Ulsviewer a partir da pasta na qual está armazenado.
No Visualizador ULS, selecione Ficheiro, aponte para Abrir De e, em seguida, selecione ULS.
Na caixa de diálogo Configurar o feed 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 está especificada na pasta Utilizar feed ULS a partir do diretório de ficheiros de registo predefinido. Caso contrário, selecione Utilizar localização do diretório para feeds em tempo real e especifique a pasta %CommonProgramFiles% \Microsoft Shared\Web Server Extensions\16\LOGS ou \Microsoft Shared\Web Server Extensions\15\LOGS na localização do ficheiro de registo.
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.
Selecione OK.
Selecione Editar e, em seguida, selecione Modificar Filtro.
Na caixa de diálogo Filtrar por , em Campo, selecione Categoria.
Em Valor, escreva Autorização de Autenticação ou Autenticação de Afirmações e, em seguida, selecione OK.
Repita a tentativa de autenticação.
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).
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
Na Administração Central, selecione Gestão de Aplicações na Iniciação Rápida e, em seguida, selecione Gerir aplicações Web.
Selecione o nome da aplicação Web à qual o utilizador está a tentar aceder e, no grupo Segurança do friso, selecione Fornecedores de Autenticação.
Na lista de fornecedores de autenticação, selecione a zona adequada (como Predefinição).
Na caixa de diálogo Editar Autenticação , na secção Tipos de Autenticação de Afirmações , verifique as definições da autenticação de afirmaçõ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. Estes valores têm de corresponder aos valores do fornecedor de associação e da função que configurou nos seus ficheiros de web.config para o site da Administração Central do SharePoint, a aplicação Web e os Serviços Web do SharePoint\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.
Selecione Guardar para guardar as alterações às definições de autenticação.
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?
Se a autenticação continuar a falhar, marcar os registos ULS para determinar se existe alguma diferença entre a tentativa de autenticação antes da alteração da configuração de autenticação e depois da mesma.
Passo 3: Mais itens a marcar
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 Monitor de Rede, tem de instalar e configurar o Especialista no Monitor de Rede. 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 de condição de erro, que pode utilizar para determinar mais passos de resolução de problemas.
Se as mensagens de solicitação têm respostas correspondentes. Várias mensagens de pedido enviadas que não recebem uma resposta podem indicar que o tráfego de rede não está a atingir o destino pretendido. 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