community.general.keycloak_authz_permission_info 模块 – 查询 Keycloak 客户端授权权限信息
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install community.general
。
要在 playbook 中使用它,请指定: community.general.keycloak_authz_permission_info
。
community.general 7.2.0 中的新增功能
概要
此模块允许通过 Keycloak REST API 的资源端点查询有关 Keycloak 客户端授权权限的信息。只有在客户端启用授权的情况下,授权权限才可用。
此模块需要通过 OpenID Connect 访问 REST API;连接的用户和使用的 Realm 必须具有必要的访问权限。在默认的 Keycloak 安装中,admin-cli 和管理员用户都可以工作,单独的 Realm 定义(其范围根据您的需求定制)和具有预期角色的用户也可以工作。
模块选项的名称是 Keycloak 使用的 camelCase 选项的 snake_case 版本。Keycloak 项目尚未正式记录授权服务的路径和有效负载。https://www.puppeteers.net/blog/keycloak-authorization-services-rest-api-paths-and-payload/
参数
参数 |
注释 |
---|---|
用于向 API 进行身份验证的 OpenID Connect 默认值: |
|
与 |
|
Keycloak 实例的 URL。 |
|
用于 API 访问身份验证的密码。 |
|
用于 API 访问身份验证的 Keycloak Realm 名称。 |
|
用于 API 访问身份验证的用户名。 |
|
应该具有授权范围的 Keycloak 客户端的 clientId。 这通常是 Keycloak 客户端的可读名称。 |
|
控制对 Keycloak API 的 HTTP 连接超时时间(以秒为单位)。 默认值: |
|
配置 HTTP User-Agent 标头。 默认值: |
|
要创建的授权权限的名称。 |
|
Keycloak 客户端所在的 Keycloak Realm 的名称。 |
|
Keycloak API 的身份验证令牌。 |
|
验证 TLS 证书(在生产环境中不要禁用此选项)。 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 此操作不会修改状态。 |
可以在 |
|
支持: N/A 此操作不会修改状态。 |
在差异模式下,将返回有关更改内容(或可能需要在 |
示例
- name: Query Keycloak authorization permission
community.general.keycloak_authz_permission_info:
name: ScopePermission
client_id: myclient
realm: myrealm
auth_keycloak_url: https://127.0.0.1:8080/auth
auth_username: keycloak
auth_password: keycloak
auth_realm: master
返回值
常见的返回值已在此处记录,以下是此模块独有的字段
键 |
描述 |
---|---|
关于采取了什么操作的消息。 返回值:始终返回 |
|
Keycloak看到的资源(策略)状态。 返回值:成功时返回 |
|
权限的配置(在所有观察到的案例中为空)。 返回值:成功时返回 示例: |
|
决策策略。 返回值:成功时返回 示例: |
|
授权权限的描述。 返回值:成功时返回 示例: |
|
授权权限的ID。 返回值:成功时返回 示例: |
|
用于权限的逻辑(有效负载的一部分,但具有固定值)。 返回值:成功时返回 示例: |
|
授权权限的名称。 返回值:成功时返回 示例: |
|
授权权限的类型。 返回值:成功时返回 示例: |
作者
Samuli Seppänen (@mattock)