Partilhar via


Como baixar e analisar os logs de provisionamento do Microsoft Entra

Os logs de provisionamento do Microsoft Entra fornecem detalhes sobre os eventos de provisionamento que ocorrem em seu locatário. Você pode usar as informações capturadas nos logs de provisionamento para ajudar a solucionar problemas com um usuário provisionado.

Este artigo descreve as opções para baixar os logs de provisionamento do centro de administração do Microsoft Entra e como analisar os logs. Códigos de erro e considerações especiais também estão incluídos.

Pré-requisitos

Para exibir os logs de provisionamento, seu locatário deve ter uma licença do Microsoft Entra ID P1 ou P2 associada a ele. Para atualizar sua edição do Microsoft Entra, consulte Introdução ao Microsoft Entra ID P1 ou P2.

Os proprietários de aplicativos podem exibir logs para seus próprios aplicativos. As seguintes funções são necessárias para exibir logs de provisionamento:

  • Leitor de Relatórios
  • Leitor de Segurança
  • Operador de Segurança
  • Administrador de Segurança
  • Administrador da Aplicação
  • Administrador de Aplicações na Cloud
  • Usuários em uma função personalizada com a permissão provisioningLogs

Como exibir os logs de provisionamento

Há várias maneiras de exibir ou analisar os logs de provisionamento:

Gorjeta

As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.

Para acessar os logs no portal do Azure:

  1. Entre no centro de administração do Microsoft Entra como pelo menos um Leitor de Relatórios.
  2. Navegue até Monitoramento de identidade>& logs de provisionamento de integridade>.

Como baixar os logs de provisionamento

Você pode baixar os logs de provisionamento para uso posterior acessando os logs no portal do Azure e selecionando Baixar. Os resultados são filtrados com base nos critérios de filtro selecionados. Torne os filtros o mais específicos possível para reduzir o tamanho e o tempo do download.

Captura de tela do botão de download nos logs de provisionamento.

Formato CSV

O download CSV inclui três arquivos:

  • ProvisioningLogs: Baixa todos os logs, exceto as etapas de provisionamento e as propriedades modificadas.
  • ProvisioningLogs_ProvisioningSteps: Contém as etapas de provisionamento e a ID de alteração. Você pode usar o ID de alteração para ingressar no evento com os outros dois arquivos.
  • ProvisioningLogs_ModifiedProperties: Contém os atributos que foram alterados e a ID de alteração. Você pode usar o ID de alteração para ingressar no evento com os outros dois arquivos.

Formato JSON

Para abrir o arquivo JSON, use um editor de texto, como o Microsoft Visual Studio Code. O Visual Studio Code torna o arquivo mais fácil de ler fornecendo realce de sintaxe. Você também pode abrir o arquivo JSON usando navegadores em um formato não editável, como o Microsoft Edge.

Prettify o arquivo JSON

O arquivo JSON é baixado em um formato para reduzir o tamanho do download. Este formato pode tornar a carga útil difícil de ler. Confira duas opções para prettify o arquivo:

  • Use o Visual Studio Code para formatar o JSON.

  • Use o PowerShell para formatar o JSON. Esse script produz uma saída JSON em um formato que inclui guias e espaços:

    $JSONContent = Get-Content -Path "<PATH TO THE PROVISIONING LOGS FILE>" | ConvertFrom-JSON

    $JSONContent | ConvertTo-Json > <PATH TO OUTPUT THE JSON FILE>

Analisar o arquivo JSON

Você pode usar qualquer linguagem de programação com a qual se sinta confortável. Os exemplos a seguir estão no PowerShell.

  • Leia o arquivo JSON:

    $JSONContent = Get-Content -Path "<PATH TO THE PROVISIONING LOGS FILE>" | ConvertFrom-JSON

Agora você pode analisar os dados de acordo com seu cenário. Eis alguns exemplos:

  • Saída de todos os IDs de trabalho no arquivo JSON:

    foreach ($provitem in $JSONContent) { $provitem.jobId }

  • Saída de todas as IDs de alteração para eventos em que a ação foi "criada":

    foreach ($provitem in $JSONContent) { if ($provItem.action -eq 'Create') { $provitem.changeId } }

O que deve saber

Aqui estão algumas dicas e considerações para analisar os logs de provisionamento:

  • O portal do Azure armazena dados de provisionamento relatados por 30 dias se você tiver uma edição premium e 7 dias se tiver uma edição gratuita. Você pode rotear os logs de provisionamento para os logs do Azure Monitor para retenção além de 30 dias.

  • Você pode usar o atributo change ID como identificador exclusivo, o que pode ser útil quando você está interagindo com o suporte ao produto, por exemplo.

  • Você pode ver eventos ignorados para usuários que não estão no escopo.

    • Exemplo 1: Se você tiver o escopo definido e all users and groups configurado filtros de escopo, poderá ver logs ignorados para usuários que não atendem aos critérios de escopo.
    • Exemplo 2: Se você tiver definido o escopo como assigned users and groups, poderá continuar a ver os usuários nos logs como ignorados, mesmo que eles não estejam atribuídos ao aplicativo. Isso se deve à forma como o serviço de provisionamento recebe alterações do diretório.
  • Os logs de provisionamento não mostram importações de função (se aplica à AWS, Salesforce e Zendesk). Você pode encontrar os logs para importações de função nos logs de auditoria.

Códigos de erro

Use a tabela a seguir para entender melhor como resolver erros encontrados nos logs de provisionamento.

Código de erro Description
Conflito,
EntryConflict
Corrija os valores de atributo conflitantes no ID do Microsoft Entra ou no aplicativo. Ou revise sua configuração de atributo correspondente se a conta de usuário conflitante deveria ser correspondida e assumida. Consulte a documentação para obter mais informações sobre como configurar atributos correspondentes.
TooManyRequests O aplicativo de destino rejeitou essa tentativa de atualizar o usuário porque está sobrecarregado e recebendo muitas solicitações. Não há nada a fazer. Esta tentativa é automaticamente desativada. A Microsoft também foi notificada sobre esse problema.
InternalServerError O aplicativo de destino retornou um erro inesperado. Um problema de serviço com o aplicativo de destino pode estar impedindo que ele funcione. Esta tentativa é repetida automaticamente em 40 minutos.
Direitos insuficientes,
MethodNotAllowed,
Não permitido,
Não autorizado
O Microsoft Entra foi autenticado com o aplicativo de destino, mas não foi autorizado a executar a atualização. Revise todas as instruções que o aplicativo de destino forneceu, juntamente com o respetivo tutorial do aplicativo.
UnprocessableEntity O aplicativo de destino retornou uma resposta inesperada. A configuração do aplicativo de destino pode não estar correta ou um problema de serviço com o aplicativo de destino pode estar impedindo que ele funcione.
WebExceptionProtocolError Ocorreu um erro de protocolo HTTP ao conectar-se ao aplicativo de destino. Não há nada a fazer. Esta tentativa é repetida automaticamente em 40 minutos.
InvalidAnchor Um usuário que foi criado anteriormente ou correspondido pelo serviço de provisionamento não existe mais. Certifique-se de que o usuário existe. Para forçar uma nova correspondência de todos os usuários, use a API do Microsoft Graph para reiniciar o trabalho.

A reinicialização do provisionamento aciona um ciclo inicial, que pode levar tempo para ser concluído. A reinicialização do provisionamento também exclui o cache que o serviço de provisionamento usa para operar. Isso significa que todos os usuários e grupos no locatário devem ser avaliados novamente e certos eventos de provisionamento podem ser descartados.
NãoImplementado O aplicativo de destino retornou uma resposta inesperada. A configuração do aplicativo pode não estar correta ou um problema de serviço com o aplicativo de destino pode estar impedindo que ele funcione. Revise todas as instruções que o aplicativo de destino forneceu, juntamente com o respetivo tutorial do aplicativo.
Campos obrigatóriosAusentes,
MissingValues
O usuário não pôde ser criado porque os valores necessários estão faltando. Corrija os valores de atributo ausentes no registro de origem ou revise sua configuração de atributo correspondente para garantir que os campos obrigatórios não sejam omitidos. Saiba mais sobre como configurar atributos correspondentes.
SchemaAttributeNotFound A operação não pôde ser executada porque foi especificado um atributo que não existe no aplicativo de destino. Consulte a documentação sobre personalização de atributos e verifique se a configuração está correta.
Erro interno Ocorreu um erro de serviço interno no serviço de provisionamento do Microsoft Entra. Não há nada a fazer. Esta tentativa é automaticamente desativada em 40 minutos.
Domínio Inválido A operação não pôde ser executada porque um valor de atributo contém um nome de domínio inválido. Atualize o nome de domínio no usuário ou adicione-o à lista de permissões no aplicativo de destino.
Limite de tempo excedido A operação não pôde ser concluída porque o aplicativo de destino demorou muito para responder. Não há nada a fazer. Esta tentativa é repetida automaticamente em 40 minutos.
LicenseLimitExceeded O usuário não pôde ser criado no aplicativo de destino porque não há licenças disponíveis para esse usuário. Obtenha mais licenças para o aplicativo de destino. Ou revise suas atribuições de usuário e configuração de mapeamento de atributos para garantir que os usuários corretos sejam atribuídos com os atributos corretos.
DuplicateTargetEntries A operação não pôde ser concluída porque mais de um usuário no aplicativo de destino foi encontrado com os atributos de correspondência configurados. Remova o usuário duplicado do aplicativo de destino ou reconfigure seus mapeamentos de atributo.
DuplicateSourceEntries A operação não pôde ser concluída porque mais de um usuário foi encontrado com os atributos de correspondência configurados. Remova o usuário duplicado ou reconfigure os mapeamentos de atributos.
ImportIgnorado Quando cada usuário é avaliado, o sistema tenta importá-lo do sistema de origem. Esse erro geralmente ocorre quando o usuário que está sendo importado não tem a propriedade correspondente definida em seus mapeamentos de atributo. Sem um valor presente no objeto de usuário para o atributo de correspondência, o sistema não pode avaliar o escopo, a correspondência ou as alterações de exportação. A presença desse erro não indica que o usuário está no escopo, porque você ainda não avaliou o escopo para o usuário.
EntrySynchronizationSkipped O serviço de provisionamento consultou com êxito o sistema de origem e identificou o usuário. Nenhuma outra ação foi tomada sobre o usuário e eles foram ignorados. O usuário pode estar fora do escopo ou pode já ter existido no sistema de destino sem mais alterações necessárias.
SystemForCrossDomainIdentity
ManagementMultipleEntriesInResponse
Uma solicitação GET para recuperar um usuário ou grupo recebeu vários usuários ou grupos na resposta. O sistema espera receber apenas um usuário ou grupo na resposta. Por exemplo, se você fizer uma solicitação de Grupo GET para recuperar um grupo, fornecer um filtro para excluir membros e seu ponto de extremidade System for Cross-Domain Identity Management (SCIM) retornar os membros, esse erro será exibido.
SystemForCrossDomainIdentity
ManagementServiceIncompatível
O serviço de provisionamento Microsoft Entra não consegue analisar a resposta do aplicativo de terceiros. Trabalhe com o desenvolvedor de aplicativos para garantir que o servidor SCIM seja compatível com o cliente Microsoft Entra SCIM.
SchemaPropertyCanOnlyAcceptValue A propriedade no sistema de destino só pode aceitar um valor, mas a propriedade no sistema de origem tem vários. Certifique-se de mapear um atributo de valor único para a propriedade que está gerando um erro, atualizar o valor na origem para ser de valor único ou remover o atributo dos mapeamentos.

Códigos de erro para sincronização entre locatários

Use a tabela a seguir para entender melhor como resolver erros encontrados nos logs de provisionamento para sincronização entre locatários.

Código de erro Causa Solução
Microsoft Entra ID
CannotUpdateObjectsOriginado
InExternalService
O mecanismo de sincronização não pôde atualizar uma ou mais propriedades de usuário no locatário de destino.

A operação falhou na API do Microsoft Graph devido à imposição de Source of Authority (SOA). Atualmente, as seguintes propriedades aparecem na lista:
Mail
showInAddressList
Em alguns casos (por exemplo, quando showInAddressList a propriedade faz parte da atualização do usuário), o mecanismo de sincronização pode repetir automaticamente a atualização (do usuário) sem a propriedade ofensiva. Caso contrário, você precisará atualizar a propriedade diretamente no inquilino de destino.
AzureDirectory
B2BManagementPolicy
Falha de verificação
A política de sincronização entre locatários que permite o resgate automático falhou.

O mecanismo de sincronização verifica se o administrador do locatário de destino criou uma política de sincronização entre locatários de entrada que permite o resgate automático. O mecanismo de sincronização também verifica se o administrador do locatário de origem habilitou uma política de saída para resgate automático.
Verifique se a configuração de resgate automático foi habilitada para os locatários de origem e de destino. Para obter mais informações, consulte Configuração de resgate automático.
Microsoft Entra ID
QuotaLimitExceeded
O número de objetos no locatário excede o limite de diretório.

O Microsoft Entra ID tem limites para o número de objetos que podem ser criados em um locatário.
Verifique se a quota pode ser aumentada. Para obter informações sobre os limites de diretório e as etapas para aumentar a cota, consulte Limites e restrições de serviço do Microsoft Entra.
ConviteCriaçãoFalha O serviço de provisionamento do Microsoft Entra tentou convidar o usuário no locatário de destino. Esse convite fracassou. Uma investigação mais aprofundada provavelmente requer entrar em contato com o suporte.
Microsoft Entra ID
Proibido
As configurações de colaboração externa bloquearam convites. Navegue até as configurações do usuário e verifique se as configurações de colaboração externa são permitidas.
ConviteCriação
FailureInvalidPropertyValue
Possíveis causas:
* O endereço SMTP primário é um valor inválido.
* UserType não é convidado ou membro
* O endereço de e-mail do grupo não é suportado
Soluções potenciais:
* O endereço SMTP primário tem um valor inválido. Resolver esse problema provavelmente exigirá a atualização da propriedade mail do usuário de origem. Para obter mais informações, consulte Preparar para a sincronização de diretórios com o Microsoft 365
* Certifique-se de que a propriedade userType está provisionada como tipo convidado ou membro. Isso pode ser corrigido verificando seus mapeamentos de atributos para entender como o atributo userType é mapeado.
* O endereço de e-mail do usuário corresponde ao endereço de e-mail de um grupo no locatário. Atualize o endereço de e-mail de um dos dois objetos.
ConviteCriação
FailureAmbiguousUser
O usuário convidado tem um endereço proxy que corresponde a um usuário interno no locatário de destino. O endereço do proxy deve ser exclusivo. Para resolver esse erro, exclua o usuário interno existente no locatário de destino ou remova esse usuário do escopo de sincronização.
Microsoft Entra ID
CannotUpdateObjects
MasteredOnPremises
Se o usuário no locatário de destino foi originalmente sincronizado do AD para o ID do Microsoft Entra e convertido em um usuário externo, a fonte de autoridade ainda está no local e o usuário não pode ser atualizado. O usuário não pode ser atualizado pela sincronização entre locatários
EntityTypeNotSupported Os grupos podem ser usados para determinar quais usuários estão no escopo para provisionamento. Os objetos de grupos não podem ser sincronizados. Não é precisa qualquer ação da parte do cliente. Este é um evento ignorado. Se você estiver usando o provisionamento sob demanda, certifique-se de escolher um usuário em vez de um grupo para provisionar.

Próximos passos