通过SDK UserAccesor API在SAP Cloud Foundry应用中捕获IDP用户属性

时间:2019-07-12 11:11:49

标签: sap-cloud-platform sap-cloud-sdk

我想通过UserAccessor SDK api捕获来自SAP IDP(身份,身份验证租户服务,如部门,称呼,公司等)的用户属性,但是尽管这些属性已设置并在IDP用户以及与IDP的所有集成中具有价值并且子帐户已通过身份验证,用户属性对象为空,我只能通过JWT和UserAccessor api检索特定的属性,例如名字,姓氏,电子邮件地址,用户组等,但是在其他属性上运气不佳IDP我在SAP Identity身份验证租户的断言属性下也提到了这些属性。

请对此事提供指导和帮助。

感谢悉达思

1 个答案:

答案 0 :(得分:1)

更新:由于我们现在已经确定了问题,因此我将更新答案以反映该问题。以下原始答案已过时:

好的,所以问题在于您尚未将任何其他用户属性从身份提供程序(IdP)映射到JWT。据我所知,您需要做三件事:

  1. 您需要在xs-security.json(用于配置XSUAA服务实例的文件)中创建属性。 This documentation应该说明如何做到这一点。
  2. 您需要配置IdP公开哪些属性(在您的情况下为SAP Identity&Authentication服务。This documentation似乎是开始查找的好地方)。
  3. 您需要将IdP公开的属性映射到xs-security.json中定义的属性。在执行此步骤之前,您可能需要使用更新后的配置重新配置(即删除,重新创建和重新绑定)您的XSUAA服务实例。然后,在Cloud Platform Cockpit中导航到您的应用程序,从左侧工具栏中单击“安全>角色”并创建映射。

让我知道这是否适合您!


原始答案:

据我所知,默认的IdP不支持SAML。没有SAML,我不确定是否可以将IdP中的任何属性传播到JWT中。

也请查看this discussion以获得更多信息。