Guia de início rápido: introdução ao provisionamento de entrada controlado por API usando cURL
Introdução
cURL é uma ferramenta de linha de comando popular, gratuita e de código aberto usada por desenvolvedores de API, e está disponível por padrão no Windows 10/11. Este tutorial descreve como você pode testar rapidamente de provisionamento de entrada orientada por API com cURL.
Pré-requisitos
- Você configurou aplicativo de provisionamento de entrada controlado por API.
- Você configurou uma entidade de serviço e ela tem acesso à API de provisionamento de entrada. Anote os
ClientId
eClientSecret
do seu aplicativo principal de serviço para uso neste tutorial.
Carregar dados do usuário para a API de provisionamento de entrada
- Recupere o client_id e o client_secret da entidade de serviço que tem acesso à API de provisionamento de entrada.
- Utilize o fluxo de concessão de credenciais do cliente do OAuth para obter um token de acesso. Substitua as variáveis
[yourClientId]
,[yourClientSecret]
e[yourTenantId]
por valores aplicáveis à sua configuração e execute o seguinte comando cURL. Copie o valor do token de acesso geradocurl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d "client_id=[yourClientId]&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default&client_secret=[yourClientSecret]&grant_type=client_credentials" "https://login.microsoftonline.com/[yourTenantId]/oauth2/v2.0/token"
- Copie a solicitação em massa com o SCIM Enterprise User Schema e salve os conteúdos em um arquivo chamado
scim-bulk-upload-users.json
. - Substitua a variável
[InboundProvisioningAPIEndpoint]
pelo ponto de extremidade da API de provisionamento associado ao seu aplicativo de provisionamento. Use o valor[AccessToken]
da etapa anterior e execute o seguinte comando curl para carregar a solicitação em massa para o ponto de extremidade da API de provisionamento.curl -v "[InboundProvisioningAPIEndpoint]" -d @scim-bulk-upload-users.json -H "Authorization: Bearer [AccessToken]" -H "Content-Type: application/scim+json"
- Após o upload bem-sucedido, você receberá o código de resposta HTTP 202 Aceito.
- O serviço de provisionamento começa a processar a carga útil de solicitação em massa imediatamente e você pode ver os detalhes de provisionamento acessando os logs de provisionamento do aplicativo de provisionamento de entrada.
Verificar o processamento da carga útil da solicitação em massa
Inicie sessão no centro de administração Microsoft Entra como pelo menos um Administrador de Aplicações.
Navegue até Microsoft Entra ID -> Aplicações -> Aplicações empresariais.
Em todos os aplicativos, use a caixa de texto do filtro de pesquisa para localizar e abrir seu aplicativo de provisionamento controlado por API.
Abra o painel de Provisionamento. A página de destino exibe o status da última execução.
Clique em Exibir logs de provisionamento para abrir a folha de logs de provisionamento. Como alternativa, você pode clicar na opção de menu Monitor -> Provisionamento logs.
Clique em qualquer registro nos logs de provisionamento para visualizar mais detalhes de processamento.
A tela de detalhes do log de provisionamento exibe todas as etapas executadas para um usuário específico.
- Na etapa Importar da API, consulte os detalhes dos dados do usuário provenientes da solicitação em massa.
- A etapa Correspondência de usuário mostra detalhes de qualquer correspondência de usuário com base no identificador correspondente. Se ocorrer uma correspondência de usuário, o serviço de provisionamento executará uma operação de atualização. Se não houver correspondência de usuário, o serviço de provisionamento executará uma operação de criação.
- A etapa Verificar se o utilizador está no escopo mostra os detalhes da avaliação do filtro de escopo. Por padrão, todos os usuários são processados. Se você tiver definido um filtro de escopo (por exemplo, processar apenas usuários pertencentes ao departamento de vendas), os detalhes da avaliação do filtro de escopo serão exibidos nesta etapa.
- A etapa Provisionar Usuário destaca a fase final de processamento e as alterações aplicadas à conta do utilizador.
- Utilize a guia Propriedades modificadas para exibir atualizações de atributos.
Apêndice
Consulte esta seção para obter informações sobre a solicitação em massa com o SCIM Enterprise User Schema.
Solicitação em massa com o SCIM Enterprise User Schema
A solicitação em massa mostrada abaixo usa o esquema padrão SCIM Core User e Enterprise User.
Corpo da solicitação
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
"Operations": [
{
"method": "POST",
"bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
"path": "/Users",
"data": {
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
"externalId": "701984",
"userName": "bjensen@example.com",
"name": {
"formatted": "Ms. Barbara J Jensen, III",
"familyName": "Jensen",
"givenName": "Barbara",
"middleName": "Jane",
"honorificPrefix": "Ms.",
"honorificSuffix": "III"
},
"displayName": "Babs Jensen",
"nickName": "Babs",
"emails": [
{
"value": "bjensen@example.com",
"type": "work",
"primary": true
}
],
"addresses": [
{
"type": "work",
"streetAddress": "100 Universal City Plaza",
"locality": "Hollywood",
"region": "CA",
"postalCode": "91608",
"country": "USA",
"formatted": "100 Universal City Plaza\nHollywood, CA 91608 USA",
"primary": true
}
],
"phoneNumbers": [
{
"value": "555-555-5555",
"type": "work"
}
],
"userType": "Employee",
"title": "Tour Guide",
"preferredLanguage": "en-US",
"locale": "en-US",
"timezone": "America/Los_Angeles",
"active":true,
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
"employeeNumber": "701984",
"costCenter": "4130",
"organization": "Universal Studios",
"division": "Theme Park",
"department": "Tour Operations",
"manager": {
"value": "89607",
"displayName": "John Smith"
}
}
}
},
{
"method": "POST",
"bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
"path": "/Users",
"data": {
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
"externalId": "701985",
"userName": "Kjensen@example.com",
"name": {
"formatted": "Ms. Kathy J Jensen, III",
"familyName": "Jensen",
"givenName": "Kathy",
"middleName": "Jane",
"honorificPrefix": "Ms.",
"honorificSuffix": "III"
},
"displayName": "Kathy Jensen",
"nickName": "Kathy",
"emails": [
{
"value": "kjensen@example.com",
"type": "work",
"primary": true
}
],
"addresses": [
{
"type": "work",
"streetAddress": "100 Oracle City Plaza",
"locality": "Hollywood",
"region": "CA",
"postalCode": "91618",
"country": "USA",
"formatted": "100 Oracle City Plaza\nHollywood, CA 91618 USA",
"primary": true
}
],
"phoneNumbers": [
{
"value": "555-555-5545",
"type": "work"
}
],
"userType": "Employee",
"title": "Tour Lead",
"preferredLanguage": "en-US",
"locale": "en-US",
"timezone": "America/Los_Angeles",
"active":true,
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
"employeeNumber": "701985",
"costCenter": "4130",
"organization": "Universal Studios",
"division": "Theme Park",
"department": "Tour Operations",
"manager": {
"value": "701984",
"displayName": "Barbara Jensen"
}
}
}
}
],
"failOnErrors": null
}