Compartilhar via


Tutorial: integração do logon único (SSO) do Microsoft Entra ao SAP NetWeaver

Neste tutorial, você aprenderá como integrar o SAP NetWeaver ao Microsoft Entra ID. 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

Para começar, você precisará dos seguintes itens:

  • Uma assinatura do Microsoft Entra. Caso você não tenha uma assinatura, obtenha uma conta gratuita.
  • 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 tutorial, você vai 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é Identidade>Aplicativos>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, bem como 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. Criar um usuário de teste do Microsoft Entra para testar o logon único do Microsoft Entra com B.Fernandes.
    2. Atribuir o usuário de teste do Microsoft Entra para permitir que B.Fernandes use o logon único do Microsoft Entra.
  2. Configurar 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 uma contraparte de B.Simon no SAP NetWeaver que esteja vinculada à representação do usuário do 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 o token de acesso do Azure AD para usar o Azure AD como o 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. Clique duas vezes no cliente relevante 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 entrar na interface do usuário e clique em Editar.

    nome de usuário e senha

  6. Substitua Nome do Provedor de T01122 para http://T01122 e clique em 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. Geração de Metadados do Provedor de Serviço: uma vez que terminamos de configurar as configurações do Provedor Local e Provedores Confiáveis na Interface de usuário do SAML 2.0, a próxima etapa seria gerar arquivo de metadados do provedor de serviços (que contém 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. Clique em 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é Identidade>Aplicativos>Aplicativos empresariais>página de integração do aplicativo SAP NetWeaver, 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 Configurar o Logon Único com o SAML, clique no ícone de caneta 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. Clique em Carregar arquivo de metadados para carregar o Arquivo de metadados do provedor de serviços que você obteve anteriormente.

    2. Clique no logotipo da pasta para selecionar o arquivo de metadados e depois em 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. Clique no ícone Editar para abrir a caixa de diálogo Atributos de 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. Clique no í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 Save (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 um usuário de teste do Microsoft Entra

Nesta seção, você criará um usuário de teste chamado B.Fernandes.

  1. Entre no centro de administração do Microsoft Entra como, no mínimo, Administrador de Usuários.
  2. Navegue até Identidade>Usuários>Todos os usuários.
  3. Na parte superior da tela, selecione Novo usuário>Criar novo usuário.
  4. Nas propriedades do Usuário, siga estas etapas:
    1. No campo Nome de exibição, insira B.Simon.
    2. No campo Nome principal do usuário, insira o username@companydomain.extension. Por exemplo, B.Simon@contoso.com.
    3. Marque a caixa de seleção Mostrar senha e, em seguida, anote o valor exibido na caixa Senha.
    4. Selecione Examinar + criar.
  5. Selecione Criar.

Atribuir o usuário de teste do Microsoft Entra

Nesta seção, você habilitará B.Fernandes a usar o logon único permitindo acesso ao SAP NetWeaver.

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.
  2. Navegue até Identidade>Aplicativos>Aplicativos empresariais>SAP NetWeaver.
  3. Na página de visão geral do aplicativo, localize a seção Gerenciar e selecione Usuários e grupos.
  4. Escolha Adicionar usuário e, em seguida, Usuários e grupos na caixa de diálogo Adicionar Atribuição.
  5. Na caixa de diálogo Usuários e grupos, selecione B.Fernandes na lista Usuários e clique no botão Selecionar na parte inferior da tela. Se você estiver esperando que uma função seja atribuída aos usuários, escolha-a na lista suspensa Selecionar uma função. Se nenhuma função tiver sido configurada para esse aplicativo, você verá a função "Acesso Padrão" selecionada.
  6. Na caixa de diálogo Adicionar atribuição, clique no botão Atribuir.

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. Nos pontos de extremidade de logon único, use HTTP POST e clique em Próxima para continuar.

    Configurar Logon Único 6

  8. Nos pontos de extremidade de logout único, use HTTP POST e clique em Próxima 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, clique em Concluir.

    Configurar Logon Único 9

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

    Configurar Logon Único 10

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

    Configurar Logon Único 11

  13. Na janela pop-up, selecione Não especificado em Formatos de NameID com Suporte e clique em 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. Clique em Salvar e, em seguida, clique em Habilitar para habilitar o provedor de identidade.

    Configurar Logon Único 17

  4. Clique em OK quando 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 o provedor de identidade do Microsoft Entra ID tiver sido ativado, tente acessar abaixo da URL para verificar o SSO, garantindo que não haja nenhum prompt de 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 a página abaixo, a configuração do SSO do Microsoft Entra foi 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, clique no botão OAuth na barra de botões superior e atribua scope (mantenha o nome padrão como 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 is not 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, pois você precisará fornecer a credencial ao programador de API, que deve salvá-la com o nome de usuário no código de 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á até T-Code: SOAUTH2 e forneça a descrição e, em seguida, clique em avançar.

    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. Clique em Adicionar na atribuição de escopo para adicionar o escopo criado anteriormente: DAAG_MNGGRP_001

    Escopo

    atribuição de escopo

  5. Clique em concluir.

Solicitar token de acesso do Azure AD

Para solicitar um token de acesso do sistema SAP usando o Azure AD (Azure Active Directory) como o IdP (Provedor de Identidade), siga estas etapas:

Etapa 1: registrar o aplicativo no Azure AD

  1. Faça logon no portal do Azure: navegue até o portal do Azure em portal.azure.com.
  2. Registrar um novo aplicativo:
    • Acesse o "Azure Active Directory".
    • Selecione "Registros de aplicativo" > "Novo registro".
    • Preencha os detalhes do aplicativo, como Nome, URI de redirecionamento, etc.
    • Clique em "Registrar".
  3. Configure as permissões da API:
    • Após o registro, navegue até "Permissões de API".
    • Clique em "Adicionar uma permissão" e selecione "APIs que a 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:
    • Clique em "Novo segredo do cliente".
    • Forneça uma descrição e defina um período de expiração.
    • Clique em "Adicionar" e anote o valor do segredo do cliente, pois ele será necessário para a autenticação.

Etapa 3: configurar o sistema SAP para integração do Azure AD

  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 Azure AD como um IdP confiável importando o XML de metadados de federação do Azure AD. Isso pode ser encontrado na seção "Pontos de extremidade" do registro do aplicativo Azure AD (em Documento de metadados federados).
  3. Configure o cliente OAuth2:
    • No sistema SAP, configure um cliente OAuth2 usando a ID do cliente e o segredo do cliente obtidos do Azure AD.
    • 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 Entidade de Segurança do SAP para todos os aplicativos cliente no Azure, Power Platform, M365 e muito mais, em um único lugar, incluindo cache de token inteligente, manipulação de token seguro e opções de governança, como limitação de solicitação. 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: a ID do aplicativo (cliente) do Azure AD.
      • Segredo do cliente: o valor do segredo do cliente do Azure AD.
      • 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}
      

Próximas etapas