如何在SAML登录响应断言中包含用户组属性

时间:2017-04-04 08:42:26

标签: saml saml-2.0 openam

我正在使用SAML登录我的应用程序,我想在登录响应断言中将属性中的用户组包含在内。我想知道登录请求是否应该指定该属性是必需的,或者这是一般需要在IDP上完成的配置,还是专门针对我的服务提供商的IDP。

我在OpenAM中创建了Identify Provider,并在OpenAM中将我自己的APP Service Provider配置为远程SP,我也在OpenAM中创建了一个用户并将其分配给一个组,但是,我没有看到响应断言中的组,即使我尝试手动映射OpenAM中的值,memberOf属性也总是返回空。 任何信息都将受到高度赞赏。

谢伊

1 个答案:

答案 0 :(得分:1)

我得到的最佳答案是,没有好方法在SAML2断言OOTB中共享组成员身份信息。

我建议实现一个自定义属性映射器并在那里实现组成员资格数据的检索,但是你会发现DataStoreProvider接口没有公开与组成员相关的操作,所以你需要直接使用AMIdentity / AMIdentityRepository API在你的插件中。

说到群组成员资格,您有几个选择:

  • 返回群组的名称
  • 返回群组的DN
  • 返回组的通用ID(通用ID是OpenAM的内部唯一ID,以DN格式存储,但与目录服务器中的组DN不同)

第一个选项是我的个人建议,因为它符合OpenAM的抽象用户数据存储概念。