Compartilhar via


Conector do Microsoft Identity Manager para o Microsoft Graph

Resumo

O conector Microsoft Identity Manager para o Microsoft Graph permite cenários de integração adicionais para Microsoft Entra ID clientes P1 ou P2. Ele aparece em objetos adicionais de metaverso de sincronização do MIM obtidos da API do Microsoft Graph v1 e beta.

Cenários cobertos

Gerenciamento de ciclo de vida de conta B2B

O cenário inicial para o conector do Microsoft Identity Manager para o Microsoft Graph é como um conector para ajudar a automatizar o gerenciamento de ciclo de vida de conta do AD DS para usuários externos. Nesse cenário, uma organização está sincronizando funcionários para Microsoft Entra ID do AD DS usando o Microsoft Entra Connect e também convidou convidados para seu diretório Microsoft Entra. Convidar um convidado faz com que um objeto de usuário externo esteja no diretório Microsoft Entra dessa organização, que não está no AD DS dessa organização. Em seguida, a organização deseja conceder a esses convidados acesso à Autenticação Integrada do Windows local ou a aplicativos baseados em Kerberos, por meio do proxy de aplicativo Microsoft Entra ou outros mecanismos de gateway. O proxy de aplicativo Microsoft Entra exige que cada usuário tenha sua própria conta do AD DS, para fins de identificação e delegação.

Para saber como configurar a sincronização do MIM para criar e manter automaticamente contas do AD DS para convidados, depois de ler as instruções neste artigo, continue lendo o artigo Microsoft Entra colaboração B2B (entre empresas) com o MIM 2016 e o proxy de aplicativo Microsoft Entra. Este artigo ilustra as regras de sincronização necessárias para o conector.

Outros cenários de gerenciamento de identidade

O conector pode ser usado para outros cenários específicos de gerenciamento de identidades que envolvem criar, ler, atualizar e excluir objetos de usuário, grupo e contato em Microsoft Entra ID, além da sincronização de usuários e grupos para Microsoft Entra ID. Ao avaliar possíveis cenários, tenha em mente: esse conector não pode ser operado em um cenário, o que resultaria em uma sobreposição de fluxo de dados, conflito real ou potencial de sincronização com uma implantação do Microsoft Entra Connect. Microsoft Entra Connect é a abordagem recomendada para integrar diretórios locais com Microsoft Entra ID, sincronizando usuários e grupos de diretórios locais com Microsoft Entra ID. Microsoft Entra Connect tem muito mais recursos de sincronização e habilita cenários como write-back de senha e dispositivo, que não são possíveis para objetos criados pelo MIM. Se os dados estiverem sendo trazidos para o AD DS, por exemplo, verifique se eles foram excluídos do Microsoft Entra Connect tentando fazer a correspondência desses objetos com o diretório Microsoft Entra. Esse conector também não pode ser usado para fazer alterações em objetos Microsoft Entra, que foram criados pelo Microsoft Entra Connect.

Como preparar-se para usar o Connector para o Microsoft Graph

Autorizando o conector a recuperar ou gerenciar objetos no diretório Microsoft Entra

  1. O conector requer que um aplicativo Web/aplicativo de API seja criado em Microsoft Entra ID, para que ele possa ser autorizado com permissões apropriadas para operar em objetos Microsoft Entra por meio do Microsoft Graph.

    Imagem do novo botão de registro de aplicativo Imagem do registro do aplicativo

    Figura 1. Novo registro de aplicativo

  2. No portal do Azure, abra o aplicativo criado e salve a ID do aplicativo como uma ID de cliente para usar mais tarde na página de conectividade do MA:

    Imagem dos detalhes do registro do aplicativo

    Figura 2. ID do aplicativo

  3. Gere um novo Segredo do Cliente abrindo Certificados & segredos. Defina alguma Descrição da chave e selecione a duração máxima. Salve as alterações e recupere o segredo do cliente. O valor do segredo do cliente não estará disponível para exibição novamente depois de sair da página.

    Imagem do botão Adicionar novo segredo

    Figura 3. Novo segredo do cliente

  4. Conceda permissões adequadas do 'Microsoft Graph' ao aplicativo abrindo "Permissões de API"

    Imagem do botão Adicionar permissões Imagem 4. Adicionar nova API

    Selecione Permissões de aplicativo 'Microsoft Graph'. Imagem de permissões de aplicativos

    Revogar todas as permissões desnecessárias.

    Imagem de permissões de aplicativos não concedidos

    A permissão a seguir deve ser adicionada ao aplicativo para permitir que ele use a "API do Microsoft Graph", dependendo do cenário:

    Operação com objeto Permissão necessária Tipo de permissão
    Detecção de esquema Application.Read.All Aplicativo
    Importar Grupo Group.Read.All ou Group.ReadWrite.All Aplicativo
    Importar Usuário User.Read.All, User.ReadWrite.All, Directory.Read.All ou Directory.ReadWrite.All Aplicativo

    Mais detalhes sobre as permissões necessárias podem ser encontrados na referência de permissões.

Observação

A permissão Application.Read.All é obrigatória para detecção de esquema e deve ser concedida independentemente do tipo de objeto com o qual o conector estará trabalhando.

  1. Conceda consentimento do administrador para permissões selecionadas. Imagem do consentimento do administrador concedido

Instalação do conector

  1. Antes de instalar o conector, verifique se que você tem o seguinte no servidor de sincronização:
  • Microsoft .NET 4.6.2 Framework ou posterior
  • Microsoft Identity Manager 2016 SP2 e deve usar o hotfix 4.4.1642.0 KB4021562 ou posterior.
  1. O conector do Microsoft Graph, além de outros conectores para Microsoft Identity Manager 2016 SP2, está disponível como download no Centro de Download da Microsoft.

  2. Reinicie o Serviço de Sincronização do MIM.

Configuração do conector

  1. Na interface de usuário do Synchronization Service Manager, selecione Conectores e Criar. Selecione Graph (Microsoft), crie um conector e dê a ele um nome descritivo.

Nova imagem do conector

  1. Na interface do usuário do serviço de sincronização do MIM, especifique a ID do Aplicativo e o Segredo do Cliente gerado. Cada agente de gerenciamento configurado na Sincronização do MIM deve ter seu próprio aplicativo em Microsoft Entra ID para evitar a execução da importação em paralelo para o mesmo aplicativo.

Imagem de configurações do conector com detalhes de conectividade

Figura 5. Página Conectividade

A página de conectividade (Figura 5) contém a versão de API do Graph que é usada e o nome do locatário. A ID do cliente e o segredo do cliente representam a ID do aplicativo e o valor da chave do aplicativo que foi criado anteriormente no Microsoft Entra ID.

O conector usa como padrão a v1.0 e os pontos de extremidade de logon e grafo do serviço global do Microsoft Graph. Se o locatário estiver em uma nuvem nacional, você precisará alterar sua configuração para usar os pontos de extremidade para a nuvem nacional. Observe que determinados recursos do Graph que estão no serviço global podem não estar disponíveis em todas as nuvens nacionais.

  1. Faça as alterações necessárias na página Parâmetros Globais:

Imagem da página de parâmetros globais

Figura 6. Página Parâmetros globais

A página de parâmetros globais contém as seguintes configurações:

  • Formato de data/hora – formato que é usado para qualquer atributo com o tipo Edm.DateTimeOffset. Todas as datas são convertidas em uma cadeia de caracteres usando esse formato durante a importação. O formato de conjunto é aplicado a qualquer atributo, o que salva a data.

  • Tempo limite http (segundos) – tempo limite em segundos que será usado durante cada chamada HTTP para o Graph.

  • Forçar a alteração de senha do usuário criado no próximo logon – essa opção é usada para o novo usuário que será criado durante a exportação. Se a opção estiver habilitada, a propriedade forceChangePasswordNextSignIn será definida como true; caso contrário, será false.

Configurando o esquema do conector e as operações

  1. Configure o esquema. O conector dá suporte à seguinte lista de tipos de objeto quando usado com o ponto de extremidade do Graph v1.0:
  • Usuário

    • Importação Completa/Delta

    • Exportar (Adicionar, Atualizar, Excluir)

  • Grupo

    • Importação Completa/Delta

    • Exportar (Adicionar, Atualizar, Excluir)

Tipos de objeto adicionais podem estar visíveis quando você configura o conector para usar o ponto de extremidade beta do Graph.

A lista de tipos de atributos que têm suporte:

  • Edm.Boolean

  • Edm.String

  • Edm.DateTimeOffset (cadeia de caracteres no espaço do conector)

  • microsoft.graph.directoryObject (referência no espaço do conector a qualquer um dos objetos com suporte)

  • microsoft.graph.contact

Os atributos de múltiplos valores (Coleção) também têm suporte para qualquer tipo de formulário da lista acima.

O conector usa o atributo 'id' para âncora e DN para todos os objetos. Portanto, a renomeação não é necessária, pois API do Graph não permite que um objeto altere seu id atributo.

Tempo de vida do token de acesso

Um aplicativo do Graph requer um token de acesso para acessar a API do Graph. Um conector solicitará um novo token de acesso para cada iteração de importação (a iteração de importação depende do tamanho da página). Por exemplo:

  • Microsoft Entra ID contém 10.000 objetos

  • O tamanho de página configurado no conector é 5000

Nesse caso, haverá duas iterações durante a importação, cada uma delas retornará 5.000 objetos para Sincronizar. Portanto, um novo token de acesso será solicitado duas vezes.

Durante a exportação, um novo token de acesso será solicitado para cada objeto que deve ser adicionado/atualizado/excluído.

Filtros de consulta

API do Graph pontos de extremidade oferecem a capacidade de limitar a quantidade de objetos retornados por consultas GET introduzindo $filter parâmetro.

Para habilitar o uso de filtros de consulta para melhorar o ciclo de desempenho de importação completa, na página Esquema 1 das propriedades do conector, habilite a caixa de seleção Adicionar filtro de objetos .

Caixa de seleção Página de configurações do conector uma imagem com a caixa de seleção Adicionar filtro de objetos marcada

Depois disso, na página Esquema 2 , digite uma expressão a ser usada para filtrar usuários, grupos, contatos ou entidades de serviço.

Imagem da página duas de configurações do conector com um filtro de exemplo startsWith(displayName,'J')

Na captura de tela acima, o filtro startsWith(displayName,'J') é definido para ler somente os usuários cujo valor de atributo displayName começa com 'J'.

Verifique se o atributo usado na expressão de filtro está selecionado nas propriedades do conector.

Imagem da página de configurações do conector com um atributo displayName selecionado

Para obter mais informações sobre $filter uso de parâmetro de consulta, consulte este artigo: Usar parâmetros de consulta para personalizar respostas.

Observação

O ponto de extremidade de consulta delta atualmente não oferece recursos de filtragem, portanto, o uso de filtros é limitado apenas à importação completa. você receberá um erro ao tentar iniciar a execução de importação delta com filtros de consulta habilitados.

Solução de problemas

Habilitar logs

Se houver algum problema no Graph, os logs poderão ser usados para localizar o problema. Assim, os rastreamentos podem ser habilitados da mesma forma que para conectores Genéricos. Ou simplesmente adicionando o seguinte a miiserver.exe.config (dentro da seção system.diagnostics/sources):

<source name="ConnectorsLog" switchValue="Verbose">
<listeners>
<add initializeData="ConnectorsLog"
type="System.Diagnostics.EventLogTraceListener, System, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ConnectorsLogListener" traceOutputOptions="LogicalOperationStack,
DateTime, Timestamp, Callstack" />
<remove name="Default" />
</listeners>
</source>

Observação

Se 'Executar este agente de gerenciamento em um processo separado' estiver habilitado, dllhost.exe.config deverá ser usado em vez de miiserver.exe.config.

Erro de token de acesso expirado

O conector pode retornar uma mensagem de Erro 401 HTTP não autorizado: "O token de acesso expirou":

Imagem de detalhes do erro

Figura 7. “O token de acesso expirou.” Erro

A causa desse problema pode ser a configuração da vida útil do token de acesso do lado do Azure. Por padrão, o token de acesso expira após uma hora. Para aumentar o tempo de expiração, consulte este artigo.

Exemplo de como usar a versão de visualização pública do módulo do PowerShell do Azure AD

Imagem de tempo de vida do token acces

New-AzureADPolicy -Definition @('{"TokenLifetimePolicy":{"Version":1, "AccessTokenLifetime":"5:00:00"}}') -DisplayName "OrganizationDefaultPolicyScenario" -IsOrganizationDefault $true -Type "TokenLifetimePolicy"

Próximas etapas