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.
No Visual Studio, certifique-se de entrar na conta que tem acesso aos seus recursos de hospedagem.
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.
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.
Selecione Criar perfil e verifique se Serviço de Aplicativo e Criar novo estão selecionados.
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.
Selecione o grupo de recursos a ser usado e selecione Publicar.
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
.
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>/"
}