community.general.keycloak_realm 模块 – 通过 Keycloak API 管理 Keycloak Realm
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install community.general
。
要在 playbook 中使用它,请指定: community.general.keycloak_realm
。
community.general 3.0.0 中的新增功能
概要
此模块允许通过 Keycloak REST API 管理 Keycloak Realm。它需要通过 OpenID Connect 访问 REST API;连接的用户和正在使用的 Realm 必须具有必要的访问权限。在默认的 Keycloak 安装中,admin-cli 和 admin 用户可以使用,单独的 Realm 定义(其范围根据您的需求量身定制)和具有预期角色的用户也可以使用。
模块选项的名称是 Keycloak API 及其文档中找到的 camelCase 名称的 snake_case 版本,网址为 https://keycloak.java.net.cn/docs-api/8.0/rest-api/index.html。提供了别名,以便可以使用 camelCased 版本。
Keycloak API 并不总是检查输入的有效性,例如,您可以对 OpenID Connect 客户端设置特定于 SAML 的设置,反之亦然。请小心。如果您没有指定设置,通常会选择一个合理的默认值。
参数
参数 |
注释 |
---|---|
Realm 访问码生命周期。 |
|
Realm 访问码登录生命周期。 |
|
Realm 访问码用户操作生命周期。 |
|
Realm 访问令牌生命周期。 |
|
Realm 隐式流访问令牌生命周期。 |
|
Realm 帐户主题。 |
|
Realm 由管理员生成的 Action 令牌生命周期。 |
|
Realm 由用户生成的 Action 令牌生命周期。 |
|
Realm 管理员事件详细信息是否启用。 选项
|
|
Realm 管理员事件是否启用。 选项
|
|
Realm 管理员主题。 |
|
Realm 属性。 |
|
用于通过 API 进行身份验证的 OpenID Connect 默认值: |
|
与 |
|
Keycloak 实例的 URL。 |
|
用于 API 访问身份验证的密码。 |
|
用于 API 访问身份验证的 Keycloak Realm 名称。 |
|
用于 API 访问身份验证的用户名。 |
|
Realm 浏览器流程。 |
|
Realm 浏览器安全标头。 |
|
Realm 是否受暴力破解保护。 选项
|
|
Realm 客户端身份验证流程。 |
|
Realm 客户端作用域映射。 |
|
控制对 Keycloak API 的 HTTP 连接超时时间(以秒为单位)。 默认值: |
|
Realm 默认默认客户端作用域。 |
|
Realm 默认组。 |
|
区域的默认语言环境。 |
|
区域的默认可选客户端作用域。 |
|
区域的默认角色。 |
|
区域的默认签名算法。 |
|
区域的直接授权流程。 |
|
区域的显示名称。 |
|
区域的显示名称(HTML)。 |
|
区域的 Docker 身份验证流程。 |
|
区域是否允许重复邮箱。 选项
|
|
区域是否允许修改用户名。 选项
|
|
区域的邮件主题。 |
|
区域启用选项。 选项
|
|
区域启用的事件类型。 |
|
启用或禁用此区域的登录事件。 选项
|
|
区域事件过期时间。 |
|
区域事件监听器。 |
|
区域失败因子。 |
|
配置 HTTP User-Agent 头。 默认值: |
|
要创建的区域。 |
|
区域国际化启用选项。 选项
|
|
区域登录主题。 |
|
区域是否允许使用邮箱登录。 选项
|
|
区域最大时间差(秒)。 |
|
区域最大失败等待时间(秒)。 |
|
区域最小快速登录等待时间(秒)。 |
|
区域的“不早于”时间。 |
|
区域离线会话空闲超时时间。 |
|
区域离线会话最大生命周期。 |
|
区域离线会话最大生命周期启用选项。 选项
|
|
启用对实验性组织功能的支持。 选项
|
|
区域的 OTP 策略算法。 |
|
区域的 OTP 策略位数。 |
|
区域的 OTP 策略初始计数器。 |
|
区域的 OTP 策略前瞻窗口。 |
|
区域的 OTP 策略周期。 |
|
区域的 OTP 策略类型。 |
|
区域支持 OTP 的应用程序。 |
|
区域的密码策略。 |
|
区域永久锁定。 选项
|
|
区域快速登录检查时间(毫秒)。 |
|
区域名称。 |
|
区域刷新令牌最大重用次数。 |
|
区域是否允许注册。 选项
|
|
区域是否允许使用邮箱作为用户名注册。 选项
|
|
区域注册流程。 |
|
区域记住我选项。 选项
|
|
区域重置凭据流程。 |
|
区域是否允许重置密码。 选项
|
|
区域撤销刷新令牌选项。 选项
|
|
区域 SMTP 服务器。 |
|
区域 SSL 必需选项。 选项
|
|
区域 SSO 会话空闲超时时间。 |
|
区域记住我状态下的 SSO 会话空闲超时时间。 |
|
区域 SSO 会话最大生命周期。 |
|
区域记住我状态下的 SSO 会话最大生命周期。 |
|
区域的状态。 在 在 选项
|
|
区域支持的语言环境。 |
|
Keycloak API 的身份验证令牌。 |
|
区域是否允许用户管理访问。 选项
|
|
验证 TLS 证书(在生产环境中不要禁用此选项)。 选项
|
|
区域邮箱验证选项。 选项
|
|
区域等待增量时间(秒)。 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持: 完全支持 |
可以在 |
|
支持: 完全支持 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
示例
- name: Create or update Keycloak realm (minimal example)
community.general.keycloak_realm:
auth_client_id: admin-cli
auth_keycloak_url: https://auth.example.com/auth
auth_realm: master
auth_username: USERNAME
auth_password: PASSWORD
id: realm
realm: realm
state: present
- name: Delete a Keycloak realm
community.general.keycloak_realm:
auth_client_id: admin-cli
auth_keycloak_url: https://auth.example.com/auth
auth_realm: master
auth_username: USERNAME
auth_password: PASSWORD
id: test
state: absent
返回值
常见返回值已在 此处 记录,以下是此模块独有的字段
键 |
描述 |
---|---|
模块执行后领域表示(示例已截断)。 返回:成功时 示例: |
|
现有领域的表示(示例已截断)。 返回:始终 示例: |
|
关于采取了什么行动的消息。 返回:始终 示例: |
|
建议领域的表示。 返回:始终 示例: |