Compartilhar via


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

Neste artigo, você aprenderá a integrar o SAP NetWeaver à ID do Microsoft Entra. Ao integrar o SAP NetWeaver ao Microsoft Entra ID, você poderá:

  • Controle no Microsoft Entra ID quem tem acesso ao SAP NetWeaver.
  • Permita que seus usuários sejam automaticamente conectados ao SAP NetWeaver com suas contas do 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 SSO (logon único) do SAP NetWeaver.
  • SAP NetWeaver V7.20 ou posterior

Descrição do cenário

  • O SAP NetWeaver dá suporte a SAML (SSO iniciado com SP) e OAuth. Neste artigo, você configurará e testará o SSO do Microsoft Entra em um ambiente de teste.

Observação

O identificador desse aplicativo é um valor de cadeia de caracteres fixo; portanto apenas uma instância pode ser configurada em um locatário.

Observação

Configure o aplicativo no SAML ou no OAuth de acordo com os requisitos de sua organização.

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 Administrador de Aplicativo de nuvem.
  2. Navegue até Entrar ID>Aplicativos empresariais>Novo aplicativo.
  3. Na seção Adicionar da por meio da galeria, digite SAP NetWeaver na caixa de pesquisa.
  4. Selecione SAP NetWeaver no painel de resultados e, em seguida, adicione o aplicativo. Aguarde alguns segundos enquanto o aplicativo é adicionado ao seu locatário.

Opcionalmente, você também pode usar o Assistente de Configuração de Aplicativos do Enterprise. Neste assistente, você pode adicionar um aplicativo ao seu locatário, adicionar usuários/grupos ao aplicativo, atribuir funções e também percorrer a configuração de SSO. Saiba mais sobre os assistentes do Microsoft 365.

Configurar e testar o SSO do Microsoft Entra para SAP NetWeaver

Configurar e testar o SSO do Microsoft Entra com o SAP NetWeaver usando um usuário de teste chamado B.Simon. Para que o SSO do Microsoft Entra funcione, você precisa estabelecer um relacionamento vinculado entre um usuário do Microsoft Entra e o usuário relacionado no SAP NetWeaver.

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

  1. Configurar o SSO do Microsoft Entra para permitir que os usuários usem esse recurso.
    1. Crie 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 para permitir que B.Simon use o login único do Microsoft Entra.
  2. Configurar o SAP NetWeaver usando SAML para definir as configurações de SSO no lado do aplicativo.
    1. Crie um usuário de teste do SAP NetWeaver para ter um equivalente de B.Simon no SAP NetWeaver, vinculado à representação de usuário no Microsoft Entra.
  3. Teste o SSO para verificar se a configuração funciona.
  4. Configurar o SAP NetWeaver para OAuth​ a fim de definir as configurações do OAuth no lado do aplicativo.
  5. Solicite um Token de Acesso do Microsoft Entra ID para usar o Microsoft Entra ID como IdP (Provedor de Identidade).

Configurar o SSO do Microsoft Entra

Nessa 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 entre no site da empresa do SAP NetWeaver como administrador

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

  3. Entre no cliente de negócios do Sistema SAP (T01) em que o SSO é necessário e ative o Gerenciamento de sessão de segurança HTTP.

    1. Vá para o código de transação SICF_SESSIONS. Ele exibe todos os parâmetros de perfil relevante com os valores atuais. Serão apresentados como 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
      

      Observação

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

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

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

      A sessão de segurança HTTP

    4. Ative os serviços SICF abaixo:

      /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. Vá para o código de transação SAML2 no cliente de negócios do sistema SAP [T01/122]. Isso abrirá uma interface do usuário em um navegador. Neste exemplo, supomos 122 como cliente do SAP Business.

    Código da transação

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

    nome de usuário e senha

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

    Observação

    Por padrão, o nome do provedor vem no formato <sid><client>, mas o Microsoft Entra ID espera um nome no formato <protocol>://<name>. Recomendamos 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 ABAP do SAP NetWeaver

  7. Gerando metadados do provedor de serviço:- Depois de terminarmos de definir as configurações de Provedor Local e Provedores Confiáveis na Interface do Usuário do 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). Depois que esse arquivo for gerado, carregue esse arquivo no Microsoft Entra ID.

    Como gerar metadados de provedor de serviços

    1. Vá para a guia do Provedor Local.

    2. Selecione Metadados.

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

Siga estas etapas para habilitar o SSO do Microsoft Entra.

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.

  2. Navegue até a página de integração de aplicativos empresariais>SAP NetWeaver do >, localize a seção Gerenciar e selecione Logon único.

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

  4. Na página Configuração Única Sign-On com SAML, selecione o ícone de lápis da Configuração Básica do SAML para editar as configurações.

    Editar a Configuração Básica de SAML

  5. Na seção Configuração Básica do SAML, caso deseje configurar o aplicativo no modo iniciado por 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 logotipo da pasta para selecionar o arquivo de metadados e selecione Carregar.

    3. Depois que o arquivo de metadados for carregado com êxito, os valores de Identificador e URL de Resposta serão populados automaticamente na caixa de texto da seção Configuração Básica do SAML, conforme mostrado abaixo:

    4. Na caixa de texto URL de Entrada digite uma URL usando o seguinte padrão: https://<your company instance of SAP NetWeaver>

    Observação

    Alguns clientes encontraram um erro de uma URL de Resposta incorreta configurada para as respectivas instâncias. Se você receber qualquer erro desse tipo, use estes comandos do PowerShell. Primeiro, atualize as URLs de Resposta no objeto do aplicativo com a URL de Resposta e, depois, atualize a entidade de serviço. Use Get-MgServicePrincipal para obter o valor da ID da entidade 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 declarações SAML em um formato específico, o que exige que você adicione mapeamentos de atributo personalizados à sua configuração de atributos do 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 atributos

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

    1. Selecione o ícone Editar para abrir a caixa de diálogo Gerenciar declarações do usuário .

      ícone editar

      imagem

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

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

    4. Clique em Salvar.

  8. Na página Configurar logon único com SAML, na seção Certificado de assinatura SAML, localize XML de Metadados de Federação e escolha Download para fazer o download do certificado e salve-o em seu computador.

    O link de download do Certificado

  9. Na seção Configurar o SAP NetWeaver, copie as URLs apropriadas de acordo com as suas necessidades.

    Copiar URLs de configuração

Criar e atribuir um usuário de teste do Microsoft Entra

Siga as diretrizes no início rápido de criação e atribuição de uma conta de usuário para criar uma conta de usuário de teste chamada B.Simon.

Configurar o SAP NetWeaver usando SAML

  1. Entre no sistema SAP e acesse o código de transação SAML2. Isso abre a nova janela do navegador com a tela de configuração do SAML.

  2. Para configurar os pontos de extremidade para o provedor de identidade confiável (Microsoft Entra ID), acesse a guia Provedores Confiáveis.

    Configurar provedores confiáveis de logon único

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

    Configurar Logon Único 2

  4. Carregue o arquivo de metadados baixado.

    Configurar Logon Único 3

  5. Na próxima tela, digite o nome do alias. Por exemplo, digite aadsts e pressione Avançar para continuar.

    Configurar Logon Único 4

  6. Certifique-se de que seu Algoritmo de código hash deve ser SHA-256 e não requer alterações e pressione Próxima.

    Configurar Logon Único 5

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

    Configurar Logon Único 6

  8. Em Endpoints de Logoff Único, selecione HTTPRedirect e selecione Avançar para continuar.

    Configurar Logon Único 7

  9. Nos pontos de extremidade de artefato, aperte Próxima para continuar.

    Configurar Logon Único 8

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

    Configurar Logon Único 9

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

    Configurar Logon Único 10

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

    Configurar Logon Único 11

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

    Configurar Logon Único 12

  14. Forneça o valor da Origem da ID de Usuário como um Atributo de Declaração, o valor de Modo de mapeamento da ID de usuário como Email e o Nome do Atributo de Declaração como http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name.

    Configurar o logon único

  15. Observe que os valores da Origem da ID do Usuário e do Modo de Mapeamento da ID do Usuário determinam o vínculo entre o usuário SAP e as declarações do Microsoft Entra ID.

Cenário: mapeamento do Usuário SAP para usuários do Microsoft Entra.

  1. Captura de tela de detalhes da NameID do SAP.

    Configurar Logon Único 13

  2. Captura de tela mencionando as declarações exigidas do Microsoft Entra ID.

    Configurar Logon Único 14

    Cenário: Selecione a ID de usuário do SAP com base no endereço de email configurado no SU01. Nesse caso, a ID de email deve ser configurada no su01 para cada usuário que precisar do SSO.

    1. Captura de tela de detalhes da NameID do SAP.

      Configurar Logon Único 15

    2. captura de tela mencionando as declarações exigidas do Microsoft Entra ID.

    Configurar Logon Único 16

  3. Selecione Salvar e depois Habilitar para habilitar o provedor de identidade.

    Configurar Logon Único 17

  4. Selecione OK uma vez solicitado.

    Configurar Logon Único 18

Criar um usuário de teste do SAP NetWeaver

Nesta seção, você criará uma usuária chamada B. Fernandes no SAP NetWeaver. Trabalhe sua equipe de especialistas SAP internamente ou trabalhe com seu parceiro do SAP de organização para adicionar os usuários à plataforma SAP NetWeaver.

Testar o SSO

  1. Depois que a ID do Microsoft Entra do provedor de identidade tiver sido ativada, tente acessar a URL abaixo para verificar o SSO, garantindo que não haja um prompt para nome de usuário e senha.

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

    (ou) use a URL abaixo

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

    Observação

    Substitua sapurl pelo nome de host real do SAP.

  2. A URL acima deve levar você para a tela mencionada abaixo. Se você conseguir acessar até a página abaixo, a instalação do SSO do Microsoft Entra será feita com êxito.

    testar Logon Único

  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 do SAP está disponível no local: Habilitação do serviço de gateway do NetWeaver e criação de escopo do OAuth 2.0

  2. Vá até SPRO e localize Ativar e manter serviços.

    Ativar e manter serviços

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

    Serviço Odata

    • Em seguida, selecione o botão OAuth na barra superior e atribua scope (mantenha o nome padrão conforme oferecido).
  4. Para nosso exemplo, o escopo é DAAG_MNGGRP_001. Ele é gerado com base no 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 OAuth

    Observação

    Mensagem soft state status isn't supported – pode ser ignorada, sem problemas.

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

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

  2. Ao registrar um cliente OAuth, usamos o SAML Bearer Grant type.

    Observação

    Para obter mais detalhes, veja o Registro de clientes do OAuth 2.0 para conhecer o tipo de concessão de portador SAML aqui.

  3. Execute o T-Code SU01 para criar o CLIENT1 do usuário como System type e atribuir a senha. Salve a senha que você precisará para fornecer a credencial ao programador de API, que deve salvá-la com o nome de usuário no código que faz a chamada. Nenhum perfil ou função deve ser atribuído.

Registrar a nova ID de cliente de 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 dos clientes OAuth 2.0 que já foram registrados. Escolha Criar para iniciar o assistente para o novo cliente OAuth, chamado CLIENT1 neste exemplo.

  2. Vá para T-Code: SOAUTH2 e insira a descrição, em seguida, clique em a seguir.

    SOAUTH2

    ID do cliente do OAuth 2.0

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

    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

    Escopo

    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 a ID do Microsoft Entra (anteriormente Azure AD) como o IdP (Provedor de Identidade), siga estas etapas:

Etapa 1: Registrar aplicativo no Microsoft Entra ID

  1. Faça logon no portal do Azure: navegue até o portal do Azure em portal.azure.com.
  2. Registrar um novo aplicativo:
    • Vá para "Microsoft Entra ID".
    • Selecione "Registros de aplicativo" > "Novo registro".
    • Preencha os detalhes do aplicativo, como Nome, URI de redirecionamento, etc.
    • Selecione "Registrar".
  3. Configure as permissões da 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 o consentimento do administrador para as permissões.

Etapa 2: criar um segredo do cliente

  1. Navegar até o aplicativo registrado: vá para "Certificados e segredos".
  2. Criar um novo segredo do cliente:
    • Selecione "Novo segredo do cliente".
    • Forneça uma descrição e defina um período de expiração.
    • Selecione "Adicionar" e anote o valor do segredo do cliente conforme necessário para autenticação.

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

  1. Acessar o SAP Cloud Platform: faça login no cockpit do SAP Cloud Platform.
  2. Definir 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 "Endpoints" do aplicativo Microsoft Entra ID (no documento de Metadados de Federação).
  3. Configure o cliente OAuth2:
    • No sistema SAP, configure um cliente OAuth2 usando a ID do cliente e o segredo do cliente obtidos da ID do Microsoft Entra.
    • Defina o ponto de extremidade do token e outros parâmetros OAuth2 relevantes.

Etapa 1: solicitar um token de acesso

Dica

Considere usar o Gerenciamento de API do Azure para simplificar o processo de Propagação de Usuário do SAP para todos os aplicativos cliente no Azure, Power Platform, Microsoft 365 e muito mais, em um único lugar, incluindo cache inteligente de tokens, manipulação segura de tokens e opções de governança, como limitação de solicitações. Saiba mais sobre a Propagação de Entidade de Segurança do SAP com o Gerenciamento de API do Azure. Caso a SAP Business Technology Platform seja preferencial, consulte este artigo.

  1. Prepare a solicitação do token:

    • Construa uma solicitação de token usando os seguintes detalhes:
      • Ponto de extremidade do token: normalmente é https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token.
      • ID do cliente: O ID do aplicativo (cliente) do Microsoft Entra ID.
      • Segredo do cliente: o valor do segredo 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 para o 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 cabeçalho Authorization.
    • Cabeçalho de exemplo:
      Authorization: Bearer {access_token}
      

Configurar o aplicativo empresarial para SAP NetWeaver para SAML2 e OAuth2 simultaneamente

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

Uma configuração típica usa como padrão SAML2 para SSO e OAuth2 para acesso à API.

Captura de tela do portal do Azure realçando a configuração para uso paralelo de SAML2 e OAuth2.