2016-07-02 46 views
0

我有一个连接到BlueMix SSO服务的本地Liberty Profile实例正在运行。身份验证似乎正在工作,但我没有得到在我的主题填充组。BlueMix SSO云目录组映射安全角色不起作用

在我basicRegistry我得到这个用表格Authc:

com.ibm.ws.security.credentials.wscred.WSCredentialImpl [email protected],realmName=BasicRealm,securityName=user1,realmSecurityName=BasicRealm/user1,uniqueSecurityName=user1,primaryGroupId=group:BasicRealm/admin,accessId=user:BasicRealm/user1,groupIds=[group:BasicRealm/admin] 

当我对BlueMix SSO云目录认证authc我得到这个:

com.ibm.ws.security.credentials.wscred.WSCredentialImpl [email protected],realmName=www.ibm.com,securityName=<ssoservice-name>.iam.ibmcloud.com/www.ibm.com/user1,realmSecurityName=www.ibm.com/<ssoservice-name>.iam.ibmcloud.com/www.ibm.com/user1,uniqueSecurityName=<ssoservice-name>.iam.ibmcloud.com/www.ibm.com/user1,primaryGroupId=null,accessId=user:www.ibm.com/<ssoservice-name>.iam.ibmcloud.com/www.ibm.com/user1,groupIds=[] 

但我可以看到它越来越到云目录,因为我可以看到群体回来的ID令牌详细信息: 理赔

{"ext":"{\"tenantId\":\"<ssoservice-name>.iam.ibmcloud.com\",\"groups\":[\"allUsers\",\"admin\"], 

我已经尝试了一些不同的映射来得到这些团体了,但我一直没能弄明白,我已经用完了数据仓库技术和谷歌搜索:

<security-role name="admin"><group name="admin" access-id="group:www.ibm.com/admin"></group></security-role> 

是否有可能得到正确的配置正确地填充我的主题声明组?我希望在我的授权方案中实际使用更多,只是ALL_AUTH_USERS。

<security-role name="authcUsers"><special-subject type="ALL_AUTHENTICATED_USERS"></special-subject></security-role> 

更新:: 02JUL16 - 所以它似乎是能够拿起特定用户USER1下面被映射到管理角色,但最后SSO组映射仍然无法正常工作。

<security-role name="admin"> 
      <user name="user1" access-id="user:www.ibm.com/<sso-service>.iam.ibmcloud.com/www.ibm.com/user1"/> 
      <group name="admin" access-id="group:BasicRealm/admin"/> 
      <group name="admin" access-id="group:www.ibm.com/<sso-service>.iam.ibmcloud.com/www.ibm.com/admin"/> 

问候, 约翰

回答

0

集团的作用不是在当前Bluemix SSO服务的支持。你对用户角色的观察是正确的。你可以做用户角色授权。此链接告诉您需要为用户指定允许访问的格式 - >https://www.ibm.com/support/knowledgecenter/SSAW57_8.5.5/com.ibm.websphere.wlp.nd.doc/ae/rwlp_config_authorization-roles.html

+0

感谢您的信息。看起来像是@RolesAllowed(“authcUsers”),打破了JAAS和/或JEE安全性的大多数好处。当然,如果这是暂时的实施差距或Bluemix SSO的长期方向,那么很好,因为映射每个用户不适用于除ALL_AUTHENTICATED_USERS以外的任何其他用户。我想我的计划是使用@Interceptors(SecurityInterceptor.class)来检查正常的JAAS Subject组成员资格,如果没有找到,请检查ID Token Claims组列表中列出的组成员资格或拒绝。感谢你的宝贵时间。 –

+0

是的,这是目前的限制。 –