keycloak role 参数 scope param required

realm roleclient role都存在该属性。

其中,内置的realm角色offline_access默认就开启了该属性,

http://dl2.iteye.com/upload/attachment/0130/6780/3351aefe-99a5-3f41-9aab-38c25a391f1f.png
 

开启该属性的角色,默认是不会包含进用户的token中的。

即使用户拥有offline_access角色(实际上所有用户都拥有,因为offline_accessdefault role),

该用户生成的token中,也不包含该角色。

 

生成用户token时,

如果需要将开启scope param required的角色也包含到token中,

需要在请求参数scope中指定这些角色的名称。

http://dl2.iteye.com/upload/attachment/0130/6782/59fd2e85-9c5a-3e79-8122-eeec7878fd3c.png
 

scope参数说明:多个值之间以空格分割。 

 

特别说明:

如果是realm角色,直接指定角色名称即可。

如果是client角色,需要 clientId/clientRoleName 格式

 

相关源码

http://dl2.iteye.com/upload/attachment/0130/6808/9f34998a-6f11-37c3-ae0f-8f54b0802282.png
 

 

 

 

 

 

转载于:https://my.oschina.net/u/4058864/blog/2995723