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 uma ferramenta como cURL ou integrando-se ao serviço de provisionamento 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.
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 Development
fornecer o token de teste a /scim/token
partir do ponto de extremidade, ou pode alterar o ambiente para Production
e 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>/"
}