Provisionamento de entrada orientado por API de início rápido com 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 o provisionamento de entrada controlado por API com cURL.
Pré-requisitos
- Você configurou o 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 o
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.
- Use OAuth client_credentials fluxo de concessão para obter um token de acesso. Substitua as variáveis
[yourClientId]
,[yourClientSecret]
e[yourTenantId]
com 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 o conteúdo 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[AccessToken]
valor 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 do Microsoft Entra como pelo menos um Administrador de Aplicações.
Navegue até Microsoft Entra ID -> Applications -> Enterprise applications.
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 a folha 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 de 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 extraídos da solicitação em massa.
- A etapa Corresponder 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 Determinar se o usuário está no escopo mostra 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 chama a etapa de processamento final e as alterações aplicadas à conta do usuário.
- Use a guia Propriedades modificadas para exibir atualizações de atributos.
Anexo
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 do pedido
{
"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
}