Partilhar via


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

Carregar dados do usuário para a API de provisionamento de entrada

  1. Recupere o client_id e client_secret da entidade de serviço que tem acesso à API de aprovisionamento de entrada.
  2. 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 gerado
    curl -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"
    
  3. 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.
  4. 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"
    
  5. Após o upload bem-sucedido, você receberá o código de resposta HTTP 202 Aceito.
  6. 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

  1. Inicie sessão no centro de administração do Microsoft Entra como pelo menos um Administrador de Aplicações.

  2. Navegue até Entra ID>Enterprise apps.

  3. Em todos os aplicativos, use a caixa de texto do filtro de pesquisa para localizar e abrir seu aplicativo de provisionamento controlado por API.

  4. Abra o painel de Provisionamento. A página de destino exibe o status da última execução.

  5. Selecione Exibir logs de provisionamento para abrir a folha de logs de provisionamento. Como alternativa, pode selecionar a opção de menu Monitor>registos de aprovisionamento.

    Captura de ecrã dos logs de provisionamento no menu.

  6. Selecione qualquer registro nos logs de provisionamento para exibir mais detalhes de processamento.

  7. 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ê definir 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 Utilizador destaca a etapa de processamento final e as alterações aplicadas à conta do utilizador.
    • Use 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 a seguir usa o padrão SCIM Core User e Enterprise User Schema.

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
}

Próximos passos