Единая регистрация в 3-уровневой архитектуре между SAP Netweaver CE и R/3

Я пытаюсь реализовать единый вход с использованием входных билетов SAP в трехуровневой архитектуре между NW CE и R/3. Но до сих пор я не смог взломать это.

Позвольте мне подробно описать сценарий:

У нас есть два приложения Java EE на сервере приложений Netweaver CE7.2:

  1. Пользовательский интерфейс: просто обрабатывает всю логику пользовательского интерфейса: js, jsp, css, html, extjs . Он вызывает приложение Java EE бизнес-уровня для получения данных из внутренних систем.

  2. Бизнес-уровень: вызывает сервисы SOAP R/3, выполняет некоторую обработку и предоставляет данные обратно в пользовательский интерфейс через сервис Restful JSON (реализован с использованием инфраструктуры Java Spring)

Как приложения пользовательского интерфейса, так и приложения Java EE бизнес-уровня определяют модули входа в систему, которые будут использоваться для входных билетов SAP. Итак, архитектура такая:

Пользовательский интерфейс --- RESTfull ------>Бизнес-уровень---- SOAP --->ABAP R/3

Таким образом, в идеале при щелчке ссылки пользовательского интерфейса он запрашивает у пользователя аутентификацию (использует CE UME), а затем приложения пользовательского интерфейса вызывают бизнес-уровень, который затем вызывает R/3. Это, к сожалению, не работает. Сбой аутентификации между пользовательским интерфейсом и приложением бизнес-уровня.

Однако при удалении приложения Java EE бизнес-уровня и вызове службы SOAP непосредственно из пользовательского интерфейса. Билеты на вход в SAP начинают работать.

Таким образом, я смог заставить входные билеты SAP работать со следующей двухуровневой архитектурой:

UI----- SOAP ----->R / 3

Итак, мой вопрос:

Есть ли способ использовать входные билеты SAP в трехуровневой архитектуре между NW CE и R/3 (для сценария, описанного выше)? Любая помощь / указатели / ссылки на документацию будут отличными

1 ответ

Решение

Теперь, когда системы SAP ECC и CRM имеют возможность публиковать сервисы JSON Restful (Wrapper on RFC), использование этой услуги напрямую невозможно.

Следовательно, нет необходимости преобразовывать сервисы JAX-WS в JsonRestful, все, что я сделал, - передал защищенный токен "MYSAPSSO2" этому интерфейсу для единого входа.

Я обновлю пост с более подробной информацией в ближайшее время.

Другие вопросы по тегам