在Cloud Platform Integration(CPI)中获取当前用户

2020-08-27 19:57发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我们正在CPI中设置oData服...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在CPI中设置oData服务,我们需要知道使用该服务的用户详细信息(登录名)。 总体解决方案是最终用户在SCP中使用Fiori应用程序并调用内置在CPI中的oData服务(CPI也依赖于IAS的身份验证),并使用HCI中当前用户过滤的来自第三方系统的数据。

当CPI在IAS上进行身份验证时,一种解决方案是从IAS使用API​​并获取当前用户详细信息。 这种方法的问题在于,我还没有找到一种简单的方法来实现这一目标。

我以前在SAPUI5 appa中使用过访问用户API ,但是这种方法无法为我提供从CPI调用的简洁网址。

另一种方法是使用 IAS API ,但是该服务需要用户ID作为输入参数,而这实际上是我要获取的用户ID。 我尚未找到获取当前会话用户的API。 所以我也排除了这一点。

我刚想出的最后一个选项(并不干净!)将尝试从 https访问HTML。 ://ias_tenant.accounts.ondemand.com 并解析HTML以从此处获取数据。 显然,这不是安全措施,但暂时可以解决。

我可以使用任何新的想法或内置属性或API吗?

欢呼

(19.4 kB)
2条回答
me_for_i
2020-08-27 20:07

我自己偶然发现了一个有趣的解决方案。 我注意到IAS中的个人资料数据URL中有一个"下载"按钮: https: //ias-tenant.accounts.ondemand.com (将ias-tenant替换为您的IAS租户ID。

如果单击它,它将调用一个URL,该URL将返回JSON以及当前会话中的所有配置文件数据:

URL为: https://ias -tenant.accounts.ondemand.com/ui/protected/userData/json

一周热门 更多>