community.general.keycloak_client_rolescope 模块 – 允许管理 Keycloak 客户端角色范围,以限制某些角色在其他特定客户端应用程序中的使用。
注意
此模块是 community.general 集合(版本 10.1.0)的一部分。
如果您正在使用 ansible
包,您可能已经安装了这个集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。
要在 playbook 中使用它,请指定:community.general.keycloak_client_rolescope
。
community.general 8.6.0 中的新增功能
概要
此模块允许您通过 Keycloak REST API 添加或删除客户端范围内的 Keycloak 角色。它需要通过 OpenID Connect 访问 REST API;连接的用户和正在使用的客户端必须具有必要的访问权限。在默认的 Keycloak 安装中,admin-cli 和管理员用户可以使用,具有针对您的需求量身定制的范围的单独客户端定义以及具有预期角色的用户也可以使用。
客户端
client_id
必须将full_scope_allowed
设置为false
。属性在 Keycloak API 中是多值的。所有属性都是单个值的列表,并且将由该模块以这种方式返回。您可以在调用模块时传递属性的单个值,这将转换为适合 API 的列表。
参数
参数 |
注释 |
---|---|
用于向 API 验证身份的 OpenID Connect 默认值: |
|
与 |
|
Keycloak 实例的 URL。 |
|
用于使用 API 访问进行身份验证的密码。 |
|
用于 API 访问进行身份验证的 Keycloak 领域名称。 |
|
用于使用 API 访问进行身份验证的用户名。 |
|
在 |
|
如果 如果缺少此参数,则角色被视为领域角色。 |
|
控制与 Keycloak API 的 HTTP 连接超时时间(以秒为单位)。 默认值: |
|
配置 HTTP User-Agent 标头。 默认值: |
|
客户端所在的 Keycloak 领域。 默认值: |
|
角色映射的状态。 在 在 选择
|
|
用于 Keycloak API 的身份验证令牌。 |
|
验证 TLS 证书(请勿在生产环境中禁用此项)。 选择
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持: 完整 |
可以在 |
|
支持: 完整 |
当处于差异模式时,将返回有关已更改(或可能需要在 |
示例
- name: Add roles to public client scope
community.general.keycloak_client_rolescope:
auth_keycloak_url: https://auth.example.com/auth
auth_realm: master
auth_username: USERNAME
auth_password: PASSWORD
realm: MyCustomRealm
client_id: frontend-client-public
client_scope_id: backend-client-private
role_names:
- backend-role-admin
- backend-role-user
- name: Remove roles from public client scope
community.general.keycloak_client_rolescope:
auth_keycloak_url: https://auth.example.com/auth
auth_realm: master
auth_username: USERNAME
auth_password: PASSWORD
realm: MyCustomRealm
client_id: frontend-client-public
client_scope_id: backend-client-private
role_names:
- backend-role-admin
state: absent
- name: Add realm roles to public client scope
community.general.keycloak_client_rolescope:
auth_keycloak_url: https://auth.example.com/auth
auth_realm: master
auth_username: USERNAME
auth_password: PASSWORD
realm: MyCustomRealm
client_id: frontend-client-public
role_names:
- realm-role-admin
- realm-role-user
返回值
常见返回值记录在此处 这里,以下是此模块独有的字段
键 |
描述 |
---|---|
模块执行后角色作用域的表示。 返回: 成功时 示例: |
|
关于所执行操作的消息。 返回: 始终 示例: |