Руководство по интеграции единого входа Microsoft Entra с SAP NetWeaver

В этом руководстве вы узнаете, как интегрировать SAP NetWeaver с идентификатором Microsoft Entra ID. Интеграция SAP NetWeaver с идентификатором Microsoft Entraver позволяет:

  • Контроль доступа к SAP NetWeaver с помощью идентификатора Microsoft Entraver.
  • Включите автоматический вход пользователей в SAP NetWeaver с помощью учетных записей Microsoft Entra.
  • Управление учетными записями в одном центральном расположении.

Необходимые компоненты

Чтобы приступить к работе, потребуется следующее.

  • Подписка Microsoft Entra. Если у вас нет подписки, вы можете получить бесплатную учетную запись.
  • подписка на SAP NetWeaver с поддержкой единого входа;
  • SAP NetWeaver версии 7.20 или более поздней версии

Описание сценария

  • SAP NetWeaver поддерживает SAML (единый вход, инициированный поставщиком услуг) и OAuth. В этом руководстве описана настройка и проверка единого входа Microsoft Entra в тестовой среде.

Примечание.

Идентификатор этого приложения — фиксированное строковое значение, поэтому в одном клиенте можно настроить только один экземпляр.

Примечание.

Настройте для приложения режим SAML или OAuth согласно требованиям вашей организации.

Чтобы настроить интеграцию SAP NetWeaver с идентификатором Microsoft Entra ID, необходимо добавить SAP NetWeaver из коллекции в список управляемых приложений SaaS.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
  2. Перейдите к приложениям>Identity>Applications>Enterprise. Новое приложение.
  3. В разделе Добавление из коллекции в поле поиска введите SAP NetWeaver.
  4. Выберите SAP NetWeaver в области результатов и добавьте это приложение. Подождите несколько секунд, пока приложение не будет добавлено в ваш клиент.

Кроме того, можно также использовать мастер конфигурации корпоративных приложений. В этом мастере можно добавить приложение в клиент, добавить пользователей и группы в приложение, назначить роли, а также просмотреть конфигурацию единого входа. Подробнее о мастерах Microsoft 365.

Настройка и проверка единого входа Microsoft Entra для SAP NetWeaver

Настройте и проверьте единый вход Microsoft Entra в SAP NetWeaver с помощью тестового пользователя B.Simon. Для обеспечения работы единого входа необходимо установить связь между пользователем Microsoft Entra и соответствующим пользователем в SAP NetWeaver.

Чтобы настроить и проверить единый вход Microsoft Entra в SAP NetWeaver, выполните следующие действия.

  1. Настройте единый вход Microsoft Entra, чтобы пользователи могли использовать эту функцию.
    1. Создайте тестового пользователя Microsoft Entra для тестирования единого входа Microsoft Entra с помощью B.Simon.
    2. Назначьте тестового пользователя Microsoft Entra, чтобы разрешить B.Simon использовать единый вход Microsoft Entra.
  2. Настройка единого входа в SAP NetWeaver с использованием SAML необходима, чтобы настроить параметры единого входа на стороне приложения.
    1. Создайте тестового пользователя SAP NetWeaver, чтобы в SAP NetWeaver был создан пользователь B.Simon, связанный с представлением пользователя Microsoft Entra.
  3. Проверка единого входа позволяет убедиться в правильности конфигурации.
  4. Настройка единого входа в SAP NetWeaver с использованием OAuth необходима, чтобы настроить параметры OAuth на стороне приложения.
  5. Запрос маркера доступа из Azure AD для использования Azure AD в качестве поставщика удостоверений (IdP).

Настройка единого входа Microsoft Entra

В этом разделе описано, как включить единый вход Microsoft Entra.

Чтобы настроить единый вход Microsoft Entra в SAP NetWeaver, выполните следующие действия.

  1. Откройте окно веб-браузера и войдите на сайт своей компании SAP NetWeaver как администратор

  2. Убедитесь, что службы http и https активны, а в коде транзакции SMICM назначены соответствующие порты.

  3. Выполните вход в бизнес-клиент системы SAP (T01), где требуется единый вход, и активируйте управление сеансом безопасности HTTP.

    1. Перейдите к коду транзакции SICF_SESSIONS. В нем отображаются все параметры соответствующего профиля с текущими значениями. Они выглядят следующим образом:

      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
      

      Примечание.

      Настройте эти параметры в соответствии с требованиями вашей организации. Упомянутые выше параметры приведены здесь только для иллюстрации.

    2. При необходимости настройте параметры в экземпляре и (или) профиле по умолчанию системы SAP, затем перезапустите систему SAP.

    3. Дважды щелкните соответствующий клиент, чтобы включить сеанс безопасности HTTP.

      Сеанс безопасности HTTP

    4. Активируйте ниже службы 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. Перейдите к коду транзакции SAML2 в бизнес-клиенте системы SAP [T01/122]. В браузере откроется пользовательский интерфейс. В этом примере предполагается, что 122 является бизнес-клиентом SAP.

    Код транзакции

  5. Укажите имя пользователя и пароль для входа в пользовательский интерфейс, затем нажмите кнопку Изменить.

    Имя пользователя и пароль

  6. Замените Имя поставщика T01122, указав http://T01122, и щелкните Сохранить.

    Примечание.

    По умолчанию имя поставщика имеет <sid><client> формат, но идентификатор Microsoft Entra ожидает имя в формате <protocol>://<name>, рекомендуем поддерживать имя поставщика, чтобы https://<sid><client> разрешить нескольким ядрам SAP NetWeaver ABAP настроить в идентификаторе Microsoft Entra ID.

    Несколько обработчиков SAP NetWeaver ABAP

  7. Создание метаданных поставщика услуг. После настройки параметров локального поставщика и доверенных поставщиков в пользовательском интерфейсе SAML 2.0 необходимо создать файл метаданных поставщика услуг (который будет содержать все параметры, контексты проверки подлинности и другие конфигурации в SAP). После создания этого файла отправьте этот файл в идентификатор Microsoft Entra.

    Создание метаданных поставщика услуг

    1. Перейдите на вкладку Локальный поставщик.

    2. Щелкните Метаданные.

    3. Сохраните созданный XML-файл метаданных на компьютере и передайте его в раздел Базовая конфигурация SAML, чтобы автоматически заполнить значения Идентификатор и URL-адрес ответа на портале Azure.

Выполните следующие действия, чтобы включить единый вход Microsoft Entra.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.

  2. Перейдите на >страницу интеграции приложений SAP NetWeaver для приложений>Identity Applications>Enterprise, найдите раздел "Управление" и выберите единый вход.

  3. На странице Выбрать метод единого входа выберите SAML.

  4. На странице Настройка единого входа с помощью SAML щелкните значок карандаша, чтобы открыть диалоговое окно Базовая конфигурация SAML для изменения параметров.

    Изменение базовой конфигурации SAML

  5. Если вы хотите настроить приложение в режиме, инициируемом поставщиком удостоверений, выполните следующие действия в разделе Базовая конфигурация SAML:

    1. Щелкните Передать файл метаданных для отправки файла метаданных поставщика служб, полученного ранее.

    2. Щелкните значок папки, выберите файл метаданных и нажмите кнопку Отправить.

    3. После успешной передачи файла метаданных значения Идентификатор и URL-адрес ответа в разделе Базовая конфигурация SAML автоматически заполняются значениями, как показано ниже.

    4. В текстовом поле URL-адрес входа введите URL-адрес в формате https://<your company instance of SAP NetWeaver>.

    Примечание.

    Некоторые клиенты столкнулись с ошибкой неправильного URL-адреса ответа, настроенного для своего экземпляра. Если вы получаете такую ошибку, используйте эти команды PowerShell. Сначала обновите URL-адреса ответа в объекте приложения с URL-адресом ответа, а затем обновите субъект-службу. Используйте Метод Get-MgServicePrincipal, чтобы получить значение идентификатора субъекта-службы.

    $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. Приложение SAP NetWeaver ожидает проверочные утверждения SAML в определенном формате, который требует добавить настраиваемые сопоставления атрибутов в конфигурацию атрибутов токена SAML. На следующем снимке экрана показан список атрибутов по умолчанию. Щелкните значок Изменить, чтобы открыть диалоговое окно "Атрибуты пользователя".

    Изменение атрибута

  7. В разделе Утверждения пользователя диалогового окна Атрибуты пользователя настройте атрибут токена SAML, как показано на рисунке выше, и выполните следующие действия.

    1. Щелкните значок редактирования, чтобы открыть диалоговое окно Управление утверждениями пользователя.

      Значок редактирования

        Изображение

    2. Из списка Преобразование выберите ExtractMailPrefix().

    3. Из списка Параметр 1 выберите user.userprincipalname.

    4. Нажмите кнопку Сохранить.

  8. На странице Настройка единого входа с помощью SAML в разделе Сертификат подписи SAML найдите элемент XML метаданных федерации и нажмите кнопку Скачать, чтобы скачать сертификат и сохранить его на компьютере.

    Ссылка для скачивания сертификата

  9. В разделе "Настройка SAP NetWeaver" скопируйте соответствующие URL-адреса в соответствии с вашим требованием.

    Копирование URL-адресов настройки

Создание тестового пользователя Microsoft Entra

В этом разделе описано, как создать тестового пользователя B.Simon.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор пользователя.
  2. Перейдите в раздел Удостоверение>Пользователи>Все пользователи.
  3. Выберите "Создать пользователя>" в верхней части экрана.
  4. В свойствах пользователя выполните следующие действия.
    1. В поле "Отображаемое имя" введите B.Simon.
    2. В поле имени участника-пользователя введите username@companydomain.extensionимя пользователя. Например, B.Simon@contoso.com.
    3. Установите флажок Показать пароль и запишите значение, которое отображается в поле Пароль.
    4. Выберите Review + create (Просмотреть и создать).
  5. Нажмите кнопку создания.

Назначение тестового пользователя Microsoft Entra

В этом разделе описано, как разрешить пользователю B.Simon использовать единый вход, предоставив этому пользователю доступ к SAP NetWeaver.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
  2. Перейдите к приложениям>Identity>Applications>Enterprise SAP NetWeaver.
  3. На странице сводных сведений о приложении откройте раздел Управление и выберите Пользователи и группы.
  4. Выберите Добавить пользователя, а в диалоговом окне Добавление назначения выберите Пользователи и группы.
  5. В диалоговом окне Пользователи и группы выберите B.Simon в списке пользователей, а затем в нижней части экрана нажмите кнопку Выбрать. Если пользователям необходимо назначить роль, вы можете выбрать ее из раскрывающегося списка Выберите роль. Если для этого приложения не настроена ни одна роль, будет выбрана роль "Доступ по умолчанию".
  6. В диалоговом окне Добавление назначения нажмите кнопку Назначить.

Настройка SAML в SAP NetWeaver

  1. Войдите в систему SAP и перейдите к коду транзакции SAML2. Откроется новое окно браузера с экраном настройки SAML.

  2. Для настройки конечных точек для доверенного поставщика удостоверений (Идентификатор Microsoft Entra ID) перейдите на вкладку "Доверенные поставщики ".

    Настройка надежных поставщиков с единым входом

  3. Нажмите Добавить и выберите Отправить файл метаданных в контекстном меню.

    Настройка единого входа 2

  4. Отправьте файл метаданных, скачанный вами.

    Настройка единого входа 3

  5. На следующем экране введите имя псевдонима. Например, введите aadstsи нажмите клавишу NEXT , чтобы продолжить.

    Настройка единого входа 4

  6. Алгоритм хэш-кода должен быть SHA-256, он не требует внесения изменений. Затем нажмите Далее.

    Настройка единого входа 5

  7. В разделе Конечные точки единого входа укажите HTTP POST и нажмите Далее для продолжения.

    Настройка единого входа 6

  8. В разделе Конечные точки единого выхода выберите HTTPRedirect и нажмите Далее для продолжения.

    Настройка единого входа 7

  9. В разделе Конечные точки артефакта нажмите Далее для продолжения.

    Настройка единого входа 8

  10. В разделе Требования к проверке подлинности нажмите Готово.

    Настройка единого входа 9

  11. Перейдите на вкладку Надежный поставщик>Федерация удостоверений (из нижней части экрана). Выберите Изменить.

    Настройка единого входа 10

  12. Нажмите Добавить на вкладке Федерация удостоверений (нижнее окно).

    Настройка единого входа 11

  13. Во всплывающем окне выберите Не указано из списка Поддерживаемые форматы NameID и нажмите "ОК".

    Настройка единого входа 12

  14. Укажите для параметра User ID Source (Источник идентификатора пользователя) значение Assertion Attribute (Атрибут утверждения), для параметра User ID mapping mode (Режим сопоставления идентификатора пользователя) — Email (Электронная почта), а для и параметра Assertion Attribute Name (Имя атрибута утверждения) — http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name.

    Настройка единого входа

  15. Обратите внимание, что значения режима сопоставления источника и идентификатора пользователя определяют связь между пользователем SAP и утверждением Microsoft Entra.

Сценарий: сопоставление пользователей SAP с Microsoft Entra.

  1. Снимок экрана со сведениями о NameID в SAP.

    Настройка единого входа 13

  2. Снимок экрана: указание обязательных утверждений из идентификатора Microsoft Entra.

    Настройка единого входа 14

    Сценарий. Выбор идентификатора пользователя SAP на основе настроенного адреса электронной почты в SU01. В этом случае идентификатор электронной почты должен быть настроен в SU01 для каждого пользователя, которому требуется единый вход.

    1. Снимок экрана со сведениями о NameID в SAP.

      Настройка единого входа 15

    2. Снимок экрана: обязательные утверждения из идентификатора Microsoft Entra.

    Настройка единого входа 16

  3. Последовательно выберите Сохранить и Включить для включения поставщика удостоверений.

    Настройка единого входа 17

  4. Нажмите ОК при появлении запроса.

    Настройка единого входа 18

Создание тестового пользователя SAP NetWeaver

В этом разделе описано, как создать пользователя B.Simon в приложении SAP NetWeaver. Совместно со штатной командой экспертов SAP или с партнером SAP организации добавьте пользователей на платформу SAP NetWeaver.

Проверка единого входа

  1. После активации идентификатора поставщика удостоверений Microsoft Entra попробуйте получить доступ к приведенному ниже URL-адресу, чтобы проверить единый вход, гарантируя, что не будет предложено использовать имя пользователя и пароль.

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

    Можно также указать такой URL-адрес:

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

    Примечание.

    Замените sapurl фактическим именем узла SAP.

  2. Указанный выше URL-адрес должен переадресовать вас на показанный ниже экран. Если вы можете перейти к приведенной ниже странице, программа установки единого входа Microsoft Entra успешно выполнена.

    Проверка единого входа

  3. Если возникает запрос имени пользователя и пароля, можно диагностировать проблему, включив трассировку, используя URL-адрес:

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

Настройка OAuth в SAP NetWeaver

  1. Процесс SAP Documented доступен в расположении: включение и создание области OAuth 2.0 в службе шлюза NetWeaver

  2. Перейдите к SPRO и найдите раздел Activate and Maintain services (Активация и обслуживание служб).

    Активация и обслуживание служб

  3. В этом примере мы хотим подключить службу OData: DAAG_MNGGRP с OAuth к единому входу Microsoft Entra. Примените поиск имени технической службы для службы DAAG_MNGGRP и активируйте ее, если она еще не активна (состояние green на вкладке узлов ICF). Убедитесь в правильности системного псевдонима (подключенной серверной системы, где фактически работает служба).

    Служба OData

    • Затем нажмите кнопку OAuth на верхней панели кнопок и присвойте значение scope (сохраните предложенное по умолчанию имя).
  4. В нашем примере область — DAAG_MNGGRP_001это . Он создается из имени службы путем автоматического добавления числа. Отчет /IWFND/R_OAUTH_SCOPES можно использовать для изменения имени области или создания области вручную.

    Настройка OAuth

    Примечание.

    Сообщение soft state status is not supported можно спокойно игнорировать.

Создание пользователя службы для клиента OAuth 2.0

  1. OAuth2 использует service ID для получения маркера доступа для конечного пользователя от его имени. Важное ограничение по использованию OAuth: значение OAuth 2.0 Client ID должно быть идентично значению username, которое клиент OAuth 2.0 использует для входа при запросе маркера доступа. Поэтому в нашем примере мы зарегистрируем клиент OAuth 2.0 с именем CLIENT1. В качестве предварительных требований пользователь с тем же именем (CLIENT1) должен существовать в системе SAP, и этот пользователь будет настроен для использования упомянутым приложением.

  2. При регистрации клиента OAuth мы используем SAML Bearer Grant type.

    Примечание.

    Дополнительные сведения о регистрации клиента OAuth 2.0 для типа предоставления носителя SAML см. здесь.

  3. Выполните T-Code SU01 , чтобы создать CLIENT1 пользователя как System type и назначить пароль. Сохраните пароль, так как вам потребуется предоставить учетные данные программисту API, который должен сохранить его с именем пользователя в вызывающий код. Не следует назначать профили или роли.

Регистрация нового идентификатора клиента OAuth 2.0 с помощью мастера создания

  1. Чтобы зарегистрировать новый клиент OAuth 2.0, запустите транзакцию SOAUTH2. Эта транзакция отобразит обзорные сведения об уже зарегистрированных клиентах OAuth 2.0. Выберите "Создать ", чтобы запустить мастер для нового клиента OAuth с именем CLIENT1 в этом примере.

  2. Перейдите к T-Code: SOAUTH2 и укажите описание и нажмите кнопку " Далее".

    SOAUTH2

    Идентификатор клиента OAuth 2.0

  3. Выберите уже добавленный поставщик удостоверений SAML2 — идентификатор Microsoft Entra в раскрывающемся списке и сохраните его.

    SamL2 IdP — Microsoft Entra ID 1

    SAML2 IdP — Идентификатор Microsoft Entra 2

    SamL2 IdP — Microsoft Entra ID 3

  4. Щелкните Добавить в разделе назначения области, чтобы добавить созданную ранее область DAAG_MNGGRP_001.

    Область

    Область назначения

  5. Щелкните Готово.

Запрос маркера доступа из Azure AD

Чтобы запросить маркер доступа из системы SAP с помощью Azure Active Directory (Azure AD) в качестве поставщика удостоверений (IdP), выполните следующие действия.

Шаг 1. Регистрация приложения в Azure AD

  1. Войдите в портал Azure: перейдите к портал Azure по portal.azure.com.
  2. Зарегистрируйте новое приложение:
    • Перейдите в раздел Azure Active Directory.
    • Выберите "Регистрация приложений" > "Новая регистрация".
    • Заполните такие сведения приложения, как Имя, URI перенаправления и т. д.
    • Нажмите кнопку "Зарегистрировать".
  3. Настройка разрешений API:
    • После регистрации перейдите к разделу "Разрешения API".
    • Нажмите кнопку "Добавить разрешение" и выберите "API, которые используются моей организацией".
    • Найдите систему SAP или соответствующий API и добавьте необходимые разрешения.
    • Предоставьте согласие администратора для разрешений.

Шаг 2. Создание секрета клиента

  1. Перейдите в зарегистрированное приложение: перейдите к разделу "Сертификаты и секреты".
  2. Создайте новый секрет клиента:
    • Щелкните "Создать секрет клиента".
    • Укажите описание и задайте срок действия.
    • Нажмите кнопку "Добавить" и запишите значение секрета клиента, так как оно потребуется для проверки подлинности.

Шаг 3. Настройка системы SAP для интеграции Azure AD

  1. Доступ к SAP Cloud Platform: войдите в sap Cloud Platform Cockpit.
  2. Настройка конфигурации доверия:
    • Перейдите в раздел "Безопасность" > "Конфигурация доверия".
    • Добавьте Azure AD в качестве доверенного поставщика удостоверений путем импорта XML метаданных федерации из Azure AD. Это можно найти в разделе "Конечные точки" регистрации приложения Azure AD (в разделе "Документ метаданных федерации").
  3. Настройка клиента OAuth2:
    • В системе SAP настройте клиент OAuth2 с помощью идентификатора клиента и секрета клиента, полученного из Azure AD.
    • Задайте конечную точку маркера и другие соответствующие параметры OAuth2.

Шаг 4. Запрос маркера доступа

Совет

Рассмотрите возможность использования Azure Управление API для упрощения процесса распространения субъектов SAP для всех клиентских приложений в Azure, Power Platform, M365 и т. д. в одном месте, включая кэширование смарт-маркеров, обработку безопасных маркеров и параметры управления, такие как регулирование запросов. Дополнительные сведения о распространении субъекта SAP с помощью Azure Управление API. Если платформа SAP Business Technology Platform предпочтительна, см . в этой статье.

  1. Подготовьте запрос маркера:

    • Создайте запрос токена с помощью следующих сведений:
      • Конечная точка токена: обычно https://login.microsoftonline.com/{tenant}/oauth2/v2.0/tokenэто .
      • Идентификатор клиента: идентификатор приложения (клиента) из Azure AD.
      • Секрет клиента: значение секрета клиента из Azure AD.
      • Область: обязательные области (например, https://your-sap-system.com/.default).
      • Тип предоставления: используется client_credentials для проверки подлинности между серверами.
  2. Выполните запрос токена:

    • Используйте средство, например Postman или скрипт, чтобы отправить запрос POST в конечную точку маркера.
    • Пример запроса (в 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. Извлечение маркера доступа:

    • Ответ будет содержать маркер доступа, если запрос выполнен успешно. Используйте этот маркер доступа для проверки подлинности запросов API к системе SAP.

Шаг 5. Использование маркера доступа для запросов API

  1. Включите маркер доступа в запросы API:
    • Для каждого запроса к системе SAP добавьте маркер доступа в Authorization заголовок.
    • Пример заголовка:
      Authorization: Bearer {access_token}
      

Next Steps