Visão geral da API de sincronização do Azure AD
Namespace: microsoft.graph
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor de versão.
A sincronização de identidade do Azure Active Directory (Azure AD) (também chamada de "provisionamento") permite automatizar o provisionamento (criação, manutenção) e o des provisionamento (remoção) de identidades de qualquer um dos seguintes:
- Active Directory para Azure AD
- Dia de trabalho para o Azure AD
- Azure AD para aplicativos de nuvem como Dropbox, Salesforce, ServiceNow e muito mais
Você pode usar as APIs de sincronização no Microsoft Graph para gerenciar a sincronização de identidade programaticamente, incluindo:
- Criar, iniciar e interromper trabalhos de sincronização
- Fazer alterações no esquema de sincronização para trabalhos
- Status de sincronização atual.
Para saber mais sobre a sincronização no Azure AD, confira:
- Automatizar o provisionamento e o desprovisionamento de usuários para aplicativos SaaS com o Azure Active Directory
- Gerenciando o provisionamento de conta de usuário para aplicativos corporativos no portal do Azure
Você também pode experimentar a API no Explorador do Graph em um locatário de exemplo ou em seu próprio locatário.
Trabalho de sincronização
Os trabalhos de sincronização executam a sincronização periodicamente em segundo plano, sondando alterações em um diretório e os pressionando para outro diretório. O trabalho de sincronização é sempre específico para uma instância específica de um aplicativo em seu locatário. Como parte da configuração do trabalho de sincronização, você precisa dar autorização para ler e gravar objetos no diretório de destino e personalizar o esquema de sincronização do trabalho.
Para obter mais informações, consulte o trabalho de sincronização.
Esquema de sincronização
O esquema de sincronização define quais objetos serão sincronizados e como eles serão sincronizados. O esquema de sincronização contém a maioria das informações de configuração para um trabalho de sincronização específico. Normalmente, você personalizará alguns dos mapeamentosde atributos ou adicionará um filtro de scoping para sincronizar somente objetos que atendam a uma determinada condição.
O esquema de sincronização inclui os seguintes componentes:
- Definições de diretório
- Regras de sincronização
- Mapeamentos de objetos
Para obter mais informações, consulte o esquema de sincronização.
Modelo de sincronização
O modelo de sincronização fornece configurações de sincronização pré-configuradas para um aplicativo específico. Essas configurações (o mais importante,esquema de sincronização ) serão usadas por padrão para qualquer trabalho de sincronização baseado no modelo. Os modelos são especificados pelo desenvolvedor do aplicativo.
Para obter mais informações, consulte o modelo de sincronização.
Trabalhar com a API de sincronização
Trabalhar com a API de sincronização envolve principalmente o acesso aos recursos synchronizationJob e synchronizationSchema. Para encontrar o recurso synchronizationJob, você precisa saber a ID do objeto de entidade de serviço ao qual o trabalho de sincronização pertence. Os exemplos a seguir mostram como trabalhar com os recursos synchronizationJob e synchronizationSchema.
Autorização
A API de sincronização do Azure AD usa o OAuth 2.0 para autorização. Antes de fazer solicitações à API, você precisa obter um token de acesso. Para saber mais, confira Obter tokens de acesso para chamar o Microsoft Graph. Para acessar os recursos de sincronização, seu aplicativo precisa de permissões Directory.ReadWrite.All. Para obter mais informações, consulte Permissões de diretório.
Encontrar o objeto de entidade de serviço por nome de exibição
O exemplo a seguir mostra como encontrar o objeto de entidade de serviço pelo nome de exibição.
Solicitação
GET https://graph.microsoft.com/beta/servicePrincipals?$select=id,appId,displayName&$filter=startswith(displayName, 'salesforce')
Response
HTTP/1.1 200 OK
{
"value":[
{
"id":"bc0dc311-87df-48ac-91b1-259bd2c3a31c",
"appId":"f7808c5e-cb57-4e37-8094-406d302c0f8d",
"displayName":"Salesforce"
},
{
"id":"d813d7d7-0f41-4edc-b284-d0dfaf399d15",
"appId":"219561ee-1480-4c67-9aa6-63d861fae3ef",
"displayName":"salesforce 3"
}
]
}
Encontrar o objeto da entidade de serviço por ID do aplicativo
O exemplo a seguir mostra como encontrar o objeto de entidade de serviço por ID do aplicativo.
Solicitação
GET https://graph.microsoft.com/beta/servicePrincipals?$select=id,appId,displayName&$filter=AppId eq '219561ee-1480-4c67-9aa6-63d861fae3ef'
Response
HTTP/1.1 200 OK
{
"value": [
{
"id": "d813d7d7-0f41-4edc-b284-d0dfaf399d15",
"appId": "219561ee-1480-4c67-9aa6-63d861fae3ef",
"displayName": "salesforce 3"
}
]
}
Listar trabalhos de sincronização existentes
O exemplo a seguir mostra como listar trabalhos de sincronização existentes.
Solicitação
GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs
GET https://graph.microsoft.com/beta/servicePrincipals/60443998-8cf7-4e61-b05c-a53b658cb5e1/synchronization/jobs
Response
HTTP/1.1 200 OK
{
"value": [
{
"id": "SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa",
"templateId": "SfSandboxOutDelta",
"schedule": {
"expiration": null,
"interval": "PT20M",
"state": "Active"
},
"status": {}
}
]
}
Obter status do trabalho de sincronização
O exemplo a seguir mostra como obter o status de um trabalho de sincronização.
Solicitação
GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}
GET https://graph.microsoft.com/beta/servicePrincipals/60443998-8cf7-4e61-b05c-a53b658cb5e1/synchronization/jobs/SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa
Response
HTTP/1.1 200 OK
{
"id": "SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa",
"templateId": "SfSandboxOutDelta",
"schedule": {
"expiration": null,
"interval": "PT20M",
"state": "Active"
},
"status": {}
}
Obter esquema de sincronização
O exemplo a seguir mostra como obter o esquema de sincronização.
Solicitação
GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Response
HTTP/1.1 200 OK
{
"directories": [],
"synchronizationRules": []
}
Confira também
Comentários
Enviar e exibir comentários de