我正在尝试在 NW CE 和 R/3 之间的 3 层架构中使用 SAP 登录票证实现 SSO。但到目前为止,我还无法破解这个。
让我详细描述一下场景:
我们在 Netweaver CE7.2 应用服务器上有两个 Java EE 应用:
UI:只处理所有的 UI 逻辑:js、jsp、css、html、extjs。它调用业务层 Java EE 应用程序从后端系统获取数据。
业务层:调用 R/3 SOAP 服务对它们进行一些处理,并通过 Restful JSON 服务将数据公开回 UI(使用 Java Spring 框架实现)
UI 和业务层 Java EE 应用程序都定义了用于 SAP 登录票据的登录模块。所以架构是这样的:
UI ---RESTfull----->业务层----SOAP---> ABAP R/3
因此,理想情况下,当单击 UI 链接时,它会提示用户进行身份验证(使用 CE UME),然后 UI 应用程序调用业务层,然后业务层调用 R/3。不幸的是,这不起作用。UI 和业务层应用程序之间的身份验证失败。
但是,如果您删除业务层 Java EE 应用程序并直接从 UI 调用 SOAP 服务。SAP 登录票证开始工作。
所以我已经能够使 SAP 登录票与以下 2 层架构一起工作:
UI ------SOAP-----> R/3
所以我的问题是:
有没有办法在 NW CE 和 R/3 之间的 3 层架构中使用 SAP 登录票(对于上述场景)?任何帮助/指针/文档链接都会很棒