Configurar o Microsoft Entra ID, a API Management do Azure e SAP para SSO a partir do conector OData SAP
Pode configurar o conector OData SAP do Power Platform para usar credenciais do Microsoft Entra ID para início de sessão único (SSO) para SAP. Isto permite que os seus utilizadores acedam a dados SAP em soluções do Power Platform sem terem de iniciar sessão várias vezes em vários serviços, honrando as suas autorizações e funções atribuídas no SAP.
Este artigo explica-lhe o processo, incluindo a configuração de uma confiança entre o SAP e o Microsoft Entra ID e a configuração do API Management do Azure para converter o token OAuth do Microsoft Entra num token SAML usado para fazer chamadas OData para SAP.
Também pode obter informações e contexto adicionais sobre o processo de configuração na publicação de blogue, Hurray! O conector SAP OData agora suporta OAuth2 e Propagação Principal SAP.
Pré-requisitos
- Instância do SAP
- Recurso da API Management do Azure
Transferir metadados SAML do fornecedor local do SAP
Para configurar uma relação de confiança entre o SAP e o Microsoft Entra ID usando SAML 2.0, comece por transferir o ficheiro xml de metadados do SAP.
Realize estes passos como um admin do SAP Basis no SAP GUI.
No SAP GUI, execute a transação SAML2 para abrir o assistente dependente do cliente SAP relevante e escolha o separador Fornecedor Local.
Selecione Metadados e, em seguida, selecione Transferir Metadados. Irá carregar os metadados do SAP SAML para o Microsoft Entra ID num passo posterior.
Anote o Nome do Fornecedor compatível com URI.
Nota
O Microsoft Entra ID requer que este valor seja compatível com URI. Se o Nome de Fornecedor já estiver definido e não estiver em conformidade com URI, não o altere sem consultar primeiro a sua equipa do SAP Basis. Alterar o Nome de Fornecedor pode interromper as configurações SAML existentes. Os passos para alterá-lo estão além do âmbito deste artigo. Consulte a sua equipa do SAML Basis para obter orientação.
Consulte a documentação oficial SAP para obter informações adicionais.
Importar metadados SAP para a aplicação empresarial Microsoft Entra ID
Realize estes passos como admin do Microsoft Entra ID no portal do Azure.
Selecione ID do Microsoft Entra>Aplicações empresariais.
Selecione Nova aplicação.
Pesquise por SAP Netweaver.
Dê um nome à aplicação empresarial e, em seguida, selecione Criar fluxo.
Aceda a Início de sessão único e selecione SAML.
Selecione Carregar ficheiro de metadados e selecione o ficheiro de metadados que transferiu do SAP.
Selecione Adicionar.
Altere o URL de Resposta (URL do Serviço de Consumidor de Asserções) para o ponto de extremidade do token OAuth do SAP. O URL está no formato
https://<SAP server>:<port>/sap/bc/sec/oauth2/token
.Altere o URL de Início de Sessão para um valor compatível com URI. Este parâmetro não é usado e pode ser definido como qualquer valor compatível com URI.
Selecione Guardar.
Em Atributos e Afirmações, selecione Editar.
Confirme se o Identificador de Utilizador Exclusivo do Nome da afirmação (ID do Nome) está definido como user.userprincipalname [nameid=format:emailAddress].
Em Certificados SAML, selecione Transferir para Certificado (Base64) e XML de Metadados de Federação.
Configure o Microsoft Entra ID como um Fornecedor de Identidade fidedigno para OAuth 2.0 no SAP
Siga os passos descritos na secção Documentação do Microsoft Entra ID para SAP NetWeaver e OAuth2.
Regresse a este artigo assim que o cliente OAuth2 for criado no SAP.
Consulte a Documentação oficial do SAP sobre o SAP NETWEAVER para obter detalhes adicionais. Observe que tem de ser um administrador do SAP para aceder às informações.
Criar uma aplicação Microsoft Entra ID que representa o recurso da Azure API Management
Configure uma aplicação do Microsoft Entra ID que conceda acesso ao conector SAP OData do Microsoft Power Platform. Esta aplicação permite que um recurso da API Management do Azure converta tokens OAuth em tokens SAML.
Siga estes passos como administrador do Microsoft Entra ID no portal do Azure.
Selecione Microsoft Entra ID>Registos de aplicações>Novo Registo.
Introduza um Nome e, em seguida, selecione Registar.
Selecione Certificados & segredos>Novo segredo do cliente.
Introduza uma Descrição e, em seguida, selecione Adicionar.
Copie e guarde este segredo nalgum lugar seguro.
Selecione Permissões de API>Adicionar uma permissão.
Selecione Microsoft Graph>Permissões delegadas.
Pesquise por openid e selecione-o.
Selecione Adicionar permissões.
Selecione Autenticação>Adicionar uma plataforma>Web.
Defina os URIs de Redirecionamento como
https://localhost:44326/signin-oidc
.Selecione Tokens de acesso e Tokens de ID e, em seguida, selecione Configurar.
Selecione Expor uma API.
Junto de URI do ID da Aplicação, selecione Adicionar.
Aceite o valor predefinido e selecione Guardar.
Selecione Adicionar um âmbito.
Defina Nome do âmbito como user_impersonation.
Defina Quem pode consentir? como Admins e utilizadores.
Selecione Adicionar um âmbito.
Copie o ID da Aplicação (cliente).
Autorizar o recurso Azure API Management a aceder ao SAP Netweaver usando a aplicação empresarial Microsoft Entra ID
Quando uma aplicação empresarial do Microsoft Entra ID é criada, esta cria um registo de aplicação correspondente. Localize o Registo da aplicação que corresponde à aplicação empresarial do Microsoft Entra ID que criou para o SAP NetWeaver.
Selecione Expor uma API>Adicionar uma aplicação de cliente.
Cole o ID da Aplicação (cliente) do registo da aplicação do Microsoft Entra ID da sua instância do Azure API Management no ID do Cliente.
Selecione o âmbito user_impersonation e, em seguida, selecione Adicionar aplicação.
Autorizar o conector SAP OData do Microsoft Power Platform a aceder a APIs expostas pela Azure API Management
No registo da aplicação Microsoft Entra ID do Azure API Management, selecione Expor uma API> Adicionar o ID do cliente do conector SAP OData do Power Platform
6bee4d13-fd19-43de-b82c-4b6401d174c3
em aplicações de cliente autorizados.Selecione o âmbito user_impersonation e, em seguida, selecione Guardar.
Configurar SAPOAuth
Crie um cliente OAuth 2.0 no SAP que permita que a API Management do Azure obtenha tokens em nome dos utilizadores.
Consulte a documentação oficial SAP para obter detalhes.
Realize estes passos como um admin do SAP Basis no SAP GUI.
Execute a transação SOAUTH2.
Selecione Criar.
Na página ID de Cliente:
- Para ID de Cliente OAuth 2.0, selecione um utilizador do sistema SAP.
- Introduza uma Descrição e, em seguida, selecione Seguinte.
Na página Autenticação de Cliente, selecione Seguinte.
Na página Definições do Tipo de Concessão:
- Para IdP OAuth 2.0 Fidedigno, selecione a entrada do Microsoft Entra ID.
- Selecione Atualização Permitida e, em seguida, selecione Seguinte.
Na página Atribuição de Âmbito, selecione Adicionar, selecione os serviços OData que a API Management do Azure usa (por exemplo, ZAPI_BUSINESS_PARTNER_0001) e selecione Seguinte.
Selecione Concluir.
Configurar a API Management do Azure
Importe os metadados XML do SAP OData para a sua instância do Azure API Management. Em seguida, aplique uma política da API Management do Azure para converter os tokens.
Abra a sua instância do Azure API Management e siga os passos para criar uma API do SAP OData.
Em APIs, selecione Valores nomeados.
Adicione os seguintes pares chave/valor:
Chave | Valor |
---|---|
AADSAPResource | URI do fornecedor local SAP |
AADTenantId | O seu GUID de inquilino |
APIMAADRegisteredAppClientId | GUID da Aplicação do Microsoft Entra ID |
APIMAADRegisteredAppClientSecret | Segredo do cliente do passo anterior |
SAPOAuthClientID | Utilizador do sistema SAP |
SAPOAuthClientSecret | Palavra-passe do utilizador do sistema SAP |
SAPOAuthRefreshExpiry | Expiração da atualização do token |
SAPOAuthScope | Âmbitos OData escolhidos durante a configuração do OAuth do SAP |
SAPOAuthServerAddressForTokenEndpoint | Ponto final SAP para a API Management do Azure a chamar para realizar a aquisição do token |
Nota
Lembre-se de que as definições diferem ligeiramente para SuccessFactors SAP. Para mais informações, consulte a Política do Azure API Management para SuccessFactors do SAP.
Aplicar a política de tokens da API Management do Azure
Use as políticas do Azure API Management para converter um token emitido pelo Microsoft Entra ID num aceite pelo SAP NetWeaver. Isto é feito com o fluxo OAuth2SAMLBearer. Consulte a documentação oficial para obter mais informações.
Copie a política da API Management do Azure da página do GitHub da Microsoft.
Abra o portal do Azure.
Aceda ao seu recurso da API Management do Azure.
Selecione APIs e, em seguida, selecione a API OData que criou.
Selecione Todas as operações.
Em Processamento de entrada, selecione Políticas </>.
Elimine a política existente e cole a política que copiou.
Selecione Guardar.
Conteúdos relacionados
- Conector OData SAP
- O conector OData SAP agora suporta OAuth2 e a Propagação Principal SAP | Blogue da comunidade do Power Automate
- Política API Management do Azure para SuccessFactors SAP | GitHub
- Conector OData SAP para SuccessFactors SAP | Blogue da comunidade SAP
- O SAP Business Accelerator Hub também oferece conteúdo relacionado com a política do Integration Suite do SAP para SuccessFactors e NetWeaver. Tem de ter uma conta SAP para aceder a este conteúdo.