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.com.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
返回值
常见返回值已在 此处 记录,以下是此模块独有的字段
| 键 | 描述 | 
|---|---|
| 模块执行后领域表示(示例已截断)。 返回:成功时 示例:  | |
| 现有领域的表示(示例已截断)。 返回:始终 示例:  | |
| 关于采取了什么行动的消息。 返回:始终 示例:  | |
| 建议领域的表示。 返回:始终 示例:  | 
