Partilhar via


Configurar o SAP NetWeaver para logon único com o Microsoft Entra ID

Neste artigo, você aprenderá a integrar o SAP NetWeaver ao Microsoft Entra ID. Ao integrar o SAP NetWeaver com o Microsoft Entra ID, você pode:

  • Controle no Microsoft Entra ID quem tem acesso ao SAP NetWeaver.
  • Permita que seus usuários façam login automaticamente no SAP NetWeaver com suas contas Microsoft Entra.
  • Gerencie suas contas em um local central.

Pré-requisitos

O cenário descrito neste artigo pressupõe que você já tenha os seguintes pré-requisitos:

  • Assinatura habilitada para logon único (SSO) do SAP NetWeaver.
  • SAP NetWeaver V7.20 ou posterior

Descrição do cenário

  • O SAP NetWeaver suporta SAML (SSO iniciado pelo SP) e OAuth. Neste artigo, você configura e testa o Microsoft Entra SSO em um ambiente de teste.

Nota

O identificador deste aplicativo é um valor de cadeia de caracteres fixo para que apenas uma instância possa ser configurada em um locatário.

Nota

Configure o aplicativo no SAML ou no OAuth de acordo com seu requisito organizacional.

Para configurar a integração do SAP NetWeaver no Microsoft Entra ID, você precisa adicionar o SAP NetWeaver da galeria à sua lista de aplicativos SaaS gerenciados.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.
  2. Navegue até Entra ID>Enterprise apps>Novo aplicativo.
  3. Na seção Adicionar da galeria, digite SAP NetWeaver na caixa de pesquisa.
  4. Selecione SAP NetWeaver no painel de resultados e adicione o aplicativo. Aguarde alguns segundos enquanto o aplicativo é adicionado ao seu locatário.

Como alternativa, você também pode usar o Assistente de Configuração de Aplicativo Empresarial. Neste assistente de configuração, pode adicionar uma aplicação ao seu tenant, adicionar utilizadores/grupos à aplicação, atribuir funções e também configurar o SSO. Saiba mais sobre os assistentes do Microsoft 365.

Configurar e testar o Microsoft Entra SSO para SAP NetWeaver

Configure e teste o Microsoft Entra SSO com o SAP NetWeaver usando um usuário de teste chamado B.Simon. Para que o SSO funcione, você precisa estabelecer uma relação de vínculo entre um usuário do Microsoft Entra e o usuário relacionado no SAP NetWeaver.

Para configurar e testar o Microsoft Entra SSO com o SAP NetWeaver, execute as seguintes etapas:

  1. Configure o Microsoft Entra SSO para permitir que seus usuários usem esse recurso.
    1. Criar um usuário de teste do Microsoft Entra para testar o logon único do Microsoft Entra com B.Simon.
    2. Atribua o usuário de teste do Microsoft Entra de modo a permitir que B.Simon utilize o início de sessão único do Microsoft Entra.
  2. Configure o SAP NetWeaver usando SAML para definir as configurações de SSO no lado do aplicativo.
    1. Crie o usuário de teste do SAP NetWeaver para ter um equivalente de B.Simon no SAP NetWeaver vinculado à representação do usuário do Microsoft Entra.
  3. Teste o SSO para verificar se a configuração funciona.
  4. Configure o SAP NetWeaver for OAuth para configurar as configurações do OAuth no lado do aplicativo.
  5. Solicite um token de acesso ao Microsoft Entra ID para utilizar o Microsoft Entra como o Provedor de Identidade (IdP).

Configurar Microsoft Entra SSO

Nesta seção, você habilita o logon único do Microsoft Entra.

Para configurar o logon único do Microsoft Entra com o SAP NetWeaver, execute as seguintes etapas:

  1. Abra uma nova janela do navegador da Web e faça login no site da empresa SAP NetWeaver como administrador

  2. Certifique-se de que os serviços http e https estão ativos e que as portas apropriadas são atribuídas no SMICM T-Code.

  3. Inicie sessão no cliente empresarial do SAP System (T01), onde o SSO é necessário e ative a Gestão de Sessões de Segurança HTTP.

    1. Vá para Código de transação SICF_SESSIONS. Ele exibe todos os parâmetros de perfil relevantes com valores atuais. Conforme mostrado abaixo:

      login/create_sso2_ticket = 2
      login/accept_sso2_ticket = 1
      login/ticketcache_entries_max = 1000
      login/ticketcache_off = 0  login/ticket_only_by_https = 0 
      icf/set_HTTPonly_flag_on_cookies = 3
      icf/user_recheck = 0  http/security_session_timeout = 1800
      http/security_context_cache_size = 2500
      rdisp/plugin_auto_logout = 1800
      rdisp/autothtime = 60
      

      Nota

      Ajuste os parâmetros acima de acordo com os requisitos da sua organização, os parâmetros acima são fornecidos aqui apenas como indicação.

    2. Se necessário, ajuste os parâmetros, no perfil de instância/padrão do sistema SAP e reinicie o sistema SAP.

    3. Selecione duas vezes o cliente relevante para habilitar a sessão de segurança HTTP.

      A sessão de Segurança HTTP

    4. Ative abaixo os serviços SICF:

      /sap/public/bc/sec/saml2
      /sap/public/bc/sec/cdc_ext_service
      /sap/bc/webdynpro/sap/saml2
      /sap/bc/webdynpro/sap/sec_diag_tool (This is only to enable / disable trace)
      
  4. Aceda ao código de transação SAML2 no cliente de negócios do sistema SAP [T01/122]. Ele abrirá uma interface de usuário em um navegador. Neste exemplo, assumimos 122 como cliente de negócios SAP.

    Código da transação

  5. Forneça seu nome de usuário e senha para entrar na interface do usuário e selecione Editar.

    nome de utilizador e palavra-passe

  6. Substitua Nome do provedor de T01122 para http://T01122 e selecione Salvar.

    Nota

    Por padrão, o nome do provedor vem no formato <sid><client>, mas o Microsoft Entra ID espera o nome no formato de <protocol>://<name>, recomendando manter o nome do provedor como https://<sid><client> para permitir que vários mecanismos SAP NetWeaver ABAP sejam configurados no Microsoft Entra ID.

    Os vários mecanismos SAP NetWeaver ABAP

  7. Gerando metadados do provedor de serviços:- Quando terminarmos de configurar as configurações do provedor local e dos provedores confiáveis na interface do usuário SAML 2.0, a próxima etapa seria gerar o arquivo de metadados do provedor de serviços (que conteria todas as configurações, contextos de autenticação e outras configurações no SAP). Assim que este ficheiro for gerado, carregue-o para o Microsoft Entra ID.

    Gerando metadados do provedor de serviços

    1. Vá para a guia Provedor Local.

    2. Selecione Metadados.

    3. Salve o arquivo XML de Metadados gerado em seu computador e carregue-o na seção Configuração Básica de SAML para preencher automaticamente os valores de URL de Identificador e Resposta no portal do Azure.

Siga estas etapas para habilitar o Microsoft Entra SSO.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.

  2. Navegue até a página de integração de Entra ID>aplicações empresariais>SAP NetWeaver, localize a seção Gerenciar e selecione Logon único.

  3. Na página Selecionar um método de logon único, selecione SAML.

  4. Na página Configurar Início de Sessão Único com SAML, selecione o ícone de lápis no item Configuração Básica do SAML para editar as definições.

    Editar configuração básica de SAML

  5. Na seção Configuração Básica do SAML, se desejar configurar o aplicativo no modo iniciado pelo IDP, execute a seguinte etapa:

    1. Selecione Carregar arquivo de metadados para carregar o arquivo de metadados do provedor de serviços, que você obteve anteriormente.

    2. Selecione o ícone de pasta para selecionar o arquivo de metadados e selecione Carregar.

    3. Depois de o ficheiro de metadados ser carregado com êxito, os valores de Identificador e URL de Resposta são preenchidos automaticamente nas caixas de texto da secção Configuração Básica de SAML, conforme mostrado abaixo.

    4. Na caixa de texto URL de Sessão, escreva um URL utilizando o seguinte padrão: https://<your company instance of SAP NetWeaver>

    Nota

    Alguns clientes encontraram um erro de uma URL de resposta incorreta configurada para sua instância. Se você receber esse erro, use esses comandos do PowerShell. Primeiro, atualize as URLs de resposta no objeto da aplicação com a URL de resposta e, em seguida, atualize o principal de serviço. Use o Get-MgServicePrincipal para obter o valor do ID do principal de serviço.

    $params = @{
       web = @{
          redirectUris = "<Your Correct Reply URL>"
       }
    }
    Update-MgApplication -ApplicationId "<Application ID>" -BodyParameter $params
    Update-MgServicePrincipal -ServicePrincipalId "<Service Principal ID>" -ReplyUrls "<Your Correct Reply URL>"
    
  6. O aplicativo SAP NetWeaver espera as asserções SAML em um formato específico, o que requer que você adicione mapeamentos de atributos personalizados à sua configuração de atributos de token SAML. A captura de tela a seguir mostra a lista de atributos padrão. Selecione o ícone Editar para abrir a caixa de diálogo Atributos do usuário.

    editar atributo

  7. Na seção Declarações do Usuário na caixa de diálogo Atributos do Usuário, configure o atributo de token SAML conforme mostrado na imagem acima e execute as seguintes etapas:

    1. Selecione ícone de edição para abrir a caixa de diálogo Gerir reclamações de utilizador.

      ícone de edição

      imagem

    2. Na lista Transformação , selecione ExtractMailPrefix().

    3. Na lista Parâmetro 1 , selecione user.userprincipalname.

    4. Selecione Guardar.

  8. Na página Configurar Logon Único com SAML, na seção Certificado de Assinatura SAML, localize XML de Metadados de Federação e selecione Download para baixar o certificado e salvá-lo no seu computador.

    O link de download do certificado

  9. Na seção Configurar o SAP NetWeaver , copie as URLs apropriadas, com base em sua necessidade.

    Copiar URLs de configuração

Criar e atribuir usuário de teste do Microsoft Entra

Siga as orientações do guia rápido para criar e atribuir uma conta de utilizador e crie uma conta de usuário de teste chamada B.Simon.

Configurar o SAP NetWeaver usando SAML

  1. Entre no sistema SAP e vá para o código de transação SAML2. Ele abre uma nova janela do navegador com a tela de configuração SAML.

  2. Para configurar pontos finais para o fornecedor de identidade de confiança (Microsoft Entra ID), vá para o separador Fornecedores de confiança.

    Configurar provedores confiáveis de logon único

  3. Pressione Adicionar e selecione Carregar arquivo de metadados no menu de contexto.

    Configurar Single Sign-On 2

  4. Carregue o arquivo de metadados, que você baixou.

    Configurar Single Sign-On 3

  5. Na tela seguinte, digite o nome do alias. Por exemplo, digite aadstse pressione Avançar para continuar.

    Configurar Single Sign-On 4

  6. Certifique-se de que seu algoritmo Digest deve ser SHA-256 e não requer nenhuma alteração e pressione Next.

    Configurar Single Sign-On 5

  7. Em Endpoints de Logon Único, use HTTP POST e selecione Avançar para continuar.

    Configurar Single Sign-On 6

  8. Em Pontos de extremidade de logout único , selecione HTTPRedirect e selecione Avançar para continuar.

    Configurar Single Sign-On 7

  9. No Artifact Endpoints, pressione Avançar para continuar.

    Configurar Single Sign-On 8

  10. Em Requisitos de autenticação, selecione Concluir.

    Configurar Single Sign-On 9

  11. Vá para a aba Provedor Confiável>Federação de Identidade (na parte inferior da tela). Selecione Editar.

    Configurar Single Sign-On 10

  12. Selecione Adicionar na guia Federação de Identidades (janela inferior).

    Configurar Single Sign-On 11

  13. Na janela pop-up, selecione Não especificado nos formatos NameID suportados e selecione OK.

    Configurar Single Sign-On 12

  14. Dê ao valor Origem do ID do Usuário como Atributo de Asserção, o valor do modo de mapeamento do ID do Usuário como Email e o Nome do Atributo de Asserção como http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name.

    Configurar o Logon Único

  15. Observe que os valores de Origem de ID de Usuário e de modo de mapeamento de ID de Usuário determinam o vínculo entre o usuário SAP e a declaração Microsoft Entra.

Cenário: Mapeamento de utilizador SAP para utilizador Microsoft Entra.

  1. Captura de ecrã dos detalhes do NameID no SAP.

    Configurar Single Sign-On 13

  2. Captura de tela mencionando as declarações necessárias do Microsoft Entra ID.

    Configurar a Autenticação Única 14

    Cenário: Selecione o ID de usuário SAP com base no endereço de e-mail configurado no SU01. Neste caso, o ID de e-mail deve ser configurado em su01 para cada usuário que requer SSO.

    1. Captura de ecrã dos detalhes do NameID no SAP.

      Configurar Single Sign-On 15

    2. captura de tela mencionando as declarações necessárias do Microsoft Entra ID.

    Configurar Single Sign-On 16

  3. Selecione Salvar e, em seguida, selecione Habilitar para habilitar o provedor de identidade.

    Configurar Single Sign-On 17

  4. Selecione OK uma vez solicitado.

    Configurar Single Sign-On 18

Criar usuário de teste do SAP NetWeaver

Nesta seção, você cria um usuário chamado B.simon no SAP NetWeaver. Trabalhe com sua equipe interna de especialistas SAP ou trabalhe com seu parceiro SAP da organização para adicionar os usuários na plataforma SAP NetWeaver.

Teste de SSO

  1. Depois que o provedor de identidade Microsoft Entra ID foi ativado, tente acessar a URL abaixo para verificar o SSO, garantindo que não haja uma solicitação de nome de usuário e senha.

    https://<sapurl>/sap/bc/bsp/sap/it00/default.htm

    (ou) use o URL abaixo

    https://<sapurl>/sap/bc/bsp/sap/it00/default.htm

    Nota

    Substitua sapurl pelo nome de host SAP real.

  2. O URL acima deve levá-lo para a tela abaixo mencionada. Se você conseguir acessar a página abaixo, a instalação do Microsoft Entra SSO será concluída com êxito.

    testar Single Sign-On

  3. Se ocorrer um prompt de nome de usuário e senha, você poderá diagnosticar o problema habilitando um rastreamento, usando a URL:

    https://<sapurl>/sap/bc/webdynpro/sap/sec_diag_tool?sap-client=122&sap-language=EN#

Configurar o SAP NetWeaver para OAuth

  1. O processo documentado da SAP está disponível no local: NetWeaver Gateway Service Enabling e Criação de Escopo OAuth 2.0

  2. Vá para SPRO e encontre Ativar e Manter serviços.

    Ativar e manter serviços

  3. Neste exemplo, queremos conectar o serviço OData: DAAG_MNGGRP com OAuth ao Microsoft Entra SSO. Use a pesquisa do nome do serviço técnico para o serviço DAAG_MNGGRP e ative se ainda não estiver ativo (procure o status de green na aba de nós ICF). Verifique se o alias do sistema (o sistema de back-end conectado, onde o serviço está realmente em execução) está correto.

    Serviço OData

    • Em seguida, selecione o botão de pressão OAuth na barra de botões superior e atribua scope (mantenha o nome padrão como sugerido).
  4. Para o nosso exemplo, o escopo é DAAG_MNGGRP_001. Ele é gerado a partir do nome do serviço adicionando automaticamente um número. O relatório /IWFND/R_OAUTH_SCOPES pode ser usado para alterar o nome do escopo ou criar manualmente.

    Configurar o OAuth

    Nota

    Mensagem soft state status isn't supported – pode ser ignorada, pois não há problema.

Criar um usuário de serviço para o cliente OAuth 2.0

  1. OAuth2 usa a service ID para obter o token de acesso para o usuário final em seu nome. Restrição importante pelo design OAuth: o OAuth 2.0 Client ID deve ser idêntico ao que o username cliente OAuth 2.0 usa para login ao solicitar um Token de Acesso. Portanto, para o nosso exemplo, vamos registrar um cliente OAuth 2.0 com nome CLIENT1. Como pré-requisito, um usuário com o mesmo nome (CLIENT1) deve existir no sistema SAP e esse usuário configuraremos para ser usado pelo aplicativo referido.

  2. Ao registar um Cliente OAuth utilizamos o SAML Bearer Grant type.

    Nota

    Para obter mais detalhes, consulte o registo do cliente no OAuth 2.0 para o tipo de concessão SAML Bearer aqui.

  3. Execute o T-Code SU01 para criar CLIENT1 de usuário como System type e atribuir senha. Guarde a palavra-passe uma vez que deverá fornecer a credencial ao programador da API, que deverá guardá-la com o nome de utilizador no código que faz a chamada. Nenhum perfil ou função deve ser atribuído.

Registre a nova ID do cliente OAuth 2.0 com o assistente de criação

  1. Para registrar um novo cliente OAuth 2.0, inicie a transação SOAUTH2. A transação exibirá uma visão geral sobre os clientes OAuth 2.0 que já estavam registrados. Escolha Criar para iniciar o assistente para o novo cliente OAuth nomeado como CLIENT1 neste exemplo.

  2. Vá para T-Code: SOAUTH2 e Forneça a descrição e selecione Avançar.

    SOAUTH2

    ID do cliente OAuth 2.0

  3. Selecione o SAML2 IdP – Microsoft Entra ID já adicionado na lista suspensa e guarde.

    SAML2 IdP – Microsoft Entra ID 1

    SAML2 IdP – Microsoft Entra ID 2

    SAML2 IdP – Microsoft Entra ID 3

  4. Selecione Adicionar sob atribuição de escopo para adicionar o escopo criado anteriormente: DAAG_MNGGRP_001

    Âmbito

    Atribuição de escopo

  5. Selecione Concluir.

Solicitar Token de Acesso do Microsoft Entra ID

Para solicitar um token de acesso do sistema SAP usando o Microsoft Entra ID (anteriormente Azure AD) como o provedor de identidade (IdP), siga estas etapas:

Etapa 1: Registrar o aplicativo no Microsoft Entra ID

  1. Faça logon no portal do Azure: navegue até o portal do Azure em portal.azure.com.
  2. Registe uma nova candidatura:
    • Vá para "Microsoft Entra ID".
    • Selecione "Registos na aplicação" > "Novo registo".
    • Preencha os detalhes do aplicativo, como Nome, URI de redirecionamento, etc.
    • Selecione "Registrar".
  3. Configurar permissões de API:
    • Após o registro, navegue até "Permissões de API".
    • Selecione "Adicionar uma permissão" e selecione "APIs que minha organização usa".
    • Procure o sistema SAP ou a API relevante e adicione as permissões necessárias.
    • Conceda consentimento de administrador para as permissões.

Etapa 2: Criar segredo do cliente

  1. Navegue até a aplicação registrada: Vá para "Certificados & segredos".
  2. Crie um novo segredo do cliente:
    • Selecione "Novo segredo do cliente".
    • Forneça uma descrição e defina um período de validade.
    • Selecione "Adicionar" e anote o valor secreto do cliente conforme necessário para autenticação.

Etapa 3: Configurar o sistema SAP para integração do Microsoft Entra ID

  1. Acesse o SAP Cloud Platform: faça login no seu SAP Cloud Platform Cockpit.
  2. Defina a configuração de confiança:
    • Vá para "Segurança" > "Configuração de Confiança".
    • Adicione o Microsoft Entra ID como um IdP confiável importando o XML de metadados de federação do Microsoft Entra ID. Isso pode ser encontrado na seção "Pontos de extremidade" do registro do aplicativo Microsoft Entra ID (em Documento de metadados de federação).
  3. Configurar o cliente OAuth2:
    • No sistema SAP, configure um cliente OAuth2 usando o ID do cliente e o segredo do cliente obtidos do Microsoft Entra ID.
    • Defina o ponto de extremidade do token e outros parâmetros OAuth2 relevantes.

Etapa 4: Solicitar token de acesso

Gorjeta

Considere usar o Gerenciamento de API do Azure para simplificar o processo de propagação principal do SAP para todos os aplicativos cliente no Azure, Power Platform, Microsoft 365 e muito mais, em um único lugar, incluindo cache de token inteligente, manipulação segura de tokens e opções de governança, como limitação de solicitações. Saiba mais sobre o SAP Principal Propagation with Azure API Management. Caso o SAP Business Technology Platform seja preferido, consulte este artigo.

  1. Prepare a solicitação de token:

    • Construa uma solicitação de token usando os seguintes detalhes:
      • Endpoint de Token: Normalmente é https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token.
      • ID do cliente: o ID da aplicação (cliente) do Microsoft Entra.
      • Segredo do cliente: O valor secreto do cliente da ID do Microsoft Entra.
      • Escopo: Os escopos necessários (por exemplo, https://your-sap-system.com/.default).
      • Tipo de concessão: Use client_credentials para autenticação de servidor para servidor.
  2. Faça a solicitação de token:

    • Use uma ferramenta como Postman ou um script para enviar uma solicitação POST para o ponto de extremidade do token.
    • Exemplo de solicitação (em cURL):
      curl -X POST \
        https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token \
        -H 'Content-Type: application/x-www-form-urlencoded' \
        -d 'client_id={client_id}&scope=https://your-sap-system.com/.default&client_secret={client_secret}&grant_type=client_credentials'
      
  3. Extraia o token de acesso:

    • A resposta conterá um token de acesso se a solicitação for bem-sucedida. Use esse token de acesso para autenticar solicitações de API no sistema SAP.

Etapa 5: Usar o token de acesso para solicitações de API

  1. Inclua o token de acesso nas solicitações de API:
    • Para cada solicitação ao sistema SAP, inclua o token de acesso no Authorization cabeçalho.
    • Exemplo de cabeçalho:
      Authorization: Bearer {access_token}
      

Configurar aplicativo corporativo para SAP NetWeaver para SAML2 e OAuth2 simultaneamente

Para uso paralelo de SAML2 para SSO e OAuth2 para acesso à API, você pode configurar o mesmo aplicativo corporativo no Microsoft Entra ID para ambos os protocolos.

Um padrão de configuração típica é SAML2 para SSO e OAuth2 para acesso à API.

Portal do Azure Captura de tela destacando a configuração para uso paralelo de SAML2 e OAuth2.