Tutorial: Desenvolver um exemplo de ponto de extremidade SCIM no Microsoft Entra ID

Este tutorial descreve como implantar o código de referência SCIM com o Serviço de Aplicativo do Azure. Em seguida, teste o código usando o Postman ou integrando-se ao serviço de provisionamento do Microsoft Entra. O tutorial destina-se a desenvolvedores que desejam começar a usar o SCIM ou qualquer pessoa interessada em testar um ponto de extremidade SCIM.

Neste tutorial, irá aprender a:

  • Implante seu ponto de extremidade SCIM no Azure.
  • Teste o seu endpoint SCIM.

Implantar seu ponto de extremidade SCIM no Azure

As etapas aqui implantam o ponto de extremidade SCIM em um serviço usando o Visual Studio 2019 e o Visual Studio Code com o Serviço de Aplicativo do Azure. O código de referência SCIM pode ser executado localmente, hospedado por um servidor local ou implantado em outro serviço externo. Para obter informações sobre o provisionamento de um ponto de extremidade SCIM, consulte Tutorial: Desenvolver e planejar o provisionamento para um ponto de extremidade SCIM.

Obter e implantar o aplicativo de exemplo

Vá para o código de referência do GitHub e selecione Clone ou download. Selecione Abrir na Área de Trabalho ou copie o link, abra o Visual Studio e selecione Clonar ou fazer check-out do código para inserir o link copiado e fazer uma cópia local. Salve os arquivos em uma pasta onde o comprimento total do caminho é de 260 ou menos caracteres.

  1. No Visual Studio, certifique-se de entrar na conta que tem acesso aos seus recursos de hospedagem.

  2. No Gerenciador de Soluções, abra Microsoft.SCIM .sln e clique com o botão direito do mouse no arquivo Microsoft.SCIM.WebHostSample . Selecione Publicar.

    Screenshot that shows the sample file.

    Nota

    Para executar essa solução localmente, clique duas vezes no projeto e selecione IIS Express para iniciar o projeto como uma página da Web com uma URL de host local. Para obter mais informações, consulte Visão geral do IIS Express.

  3. Selecione Criar perfil e verifique se Serviço de Aplicativo e Criar novo estão selecionados.

    Screenshot that shows the Publish window.

  4. Percorra as opções de diálogo e renomeie o aplicativo para um nome de sua escolha. Esse nome é usado no aplicativo e na URL do ponto de extremidade SCIM.

    Screenshot that shows creating a new app service.

  5. Selecione o grupo de recursos a ser usado e selecione Publicar.

    Screenshot that shows publishing a new app service.

Configurar o Serviço de Aplicativo

Vá para o aplicativo na Configuração do Serviço de Aplicativo do>Azure e selecione Nova configuração do aplicativo para adicionar a configuração Token__TokenIssuer com o valor https://sts.windows.net/<tenant_id>/. Substitua <tenant_id> pelo ID de locatário do Microsoft Entra. Se você quiser testar o ponto de extremidade SCIM usando o Postman, adicione uma configuração de ASPNETCORE_ENVIRONMENT com o valor Development.

Screenshot that shows the Application settings window.

Quando você testa seu ponto de extremidade com um aplicativo corporativo no centro de administração do Microsoft Entra, você tem duas opções. Você pode manter o ambiente e fornecer o token de teste a /scim/token partir do ponto de extremidade, ou pode alterar o ambiente para Production e Development deixar o campo de token vazio.

Está feito! Seu ponto de extremidade SCIM agora está publicado e você pode usar a URL do Serviço de Aplicativo do Azure para testar o ponto de extremidade SCIM.

Teste seu endpoint SCIM

As solicitações para um ponto de extremidade SCIM exigem autorização. O padrão SCIM tem várias opções disponíveis. As solicitações podem usar cookies, autenticação básica, autenticação de cliente TLS ou qualquer um dos métodos listados na RFC 7644.

Certifique-se de evitar métodos que não são seguros, como nome de usuário e senha, em favor de um método mais seguro, como OAuth. O Microsoft Entra ID suporta tokens de portador de longa duração (para aplicativos de galeria e não galeria) e a concessão de autorização OAuth (para aplicativos de galeria).

Nota

Os métodos de autorização fornecidos no acordo de recompra são apenas para testes. Ao integrar com o Microsoft Entra ID, você pode revisar as diretrizes de autorização. Consulte Planejar provisionamento para um ponto de extremidade SCIM.

O ambiente de desenvolvimento permite que recursos que não são seguros para produção, como código de referência, controlem o comportamento da validação do token de segurança. O código de validação do token usa um token de segurança autoassinado e a chave de assinatura é armazenada no arquivo de configuração. Consulte o parâmetro Token:IssuerSigningKey nas configurações do aplicativo. Development.json arquivo.

"Token": {
    "TokenAudience": "Microsoft.Security.Bearer",
    "TokenIssuer": "Microsoft.Security.Bearer",
    "IssuerSigningKey": "A1B2C3D4E5F6A1B2C3D4E5F6",
    "TokenLifetimeInMins": "120"
}

Nota

Quando você envia uma solicitação GET para o /scim/token ponto de extremidade, um token é emitido usando a chave configurada. Esse token pode ser usado como um token ao portador para autorização posterior.

O código de validação de token padrão é configurado para usar um token Microsoft Entra e requer que o locatário emissor seja configurado usando o parâmetro Token:TokenIssuer no arquivo appsettings.json .

"Token": {
    "TokenAudience": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "TokenIssuer": "https://sts.windows.net/<tenant_id>/"
}

Próximos passos