Единая регистрация в 3-уровневой архитектуре между SAP Netweaver CE и R/3
Я пытаюсь реализовать единый вход с использованием входных билетов SAP в трехуровневой архитектуре между NW CE и R/3. Но до сих пор я не смог взломать это.
Позвольте мне подробно описать сценарий:
У нас есть два приложения Java EE на сервере приложений Netweaver CE7.2:
Пользовательский интерфейс: просто обрабатывает всю логику пользовательского интерфейса: js, jsp, css, html, extjs . Он вызывает приложение Java EE бизнес-уровня для получения данных из внутренних систем.
Бизнес-уровень: вызывает сервисы 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" этому интерфейсу для единого входа.
Я обновлю пост с более подробной информацией в ближайшее время.