3.2. 自定义凭证类型
作为系统管理员,您可以使用类似 YAML 或 JSON 的定义,定义一个以标准格式与现有凭证类型类似的自定义凭证类型。
每个凭证类型在 Input Configuration 和 Injector Configuration 字段中显示自己的唯一配置(如果适用)。配置字段支持 YAML 和 JSON 格式。
自定义凭据支持 Ansible 额外变量来注入其身份验证信息。
您可以将一个或多个云、vault 和 Red Hat Ansible Automation Platform 凭证类型附加到规则手册激活。
-
在创建新凭证类型时,您必须避免
extra_vars中的冲突。 - 额外的变量名称不能以 EDA_ 开头,因为它们是保留的。
- 您必须具有系统管理员(超级用户)权限才能创建和编辑凭证类型,并能够查看 Injector 配置字段。
当您自定义自己的凭证类型时,它们会显示在 Credential Types 页面中,以及内置凭证类型的列表。
3.2.1. 输入配置 复制链接链接已复制到粘贴板!
输入配置有两个属性:
- 字段 - 凭证类型的属性集合。
- 必需 - 必填字段列表。
根据您选择的凭证类型,字段可以有多个属性。
| 字段 | 描述 | 必需(Y/N) |
|---|---|---|
| id | 字段的唯一 ID;必须是字符串类型并存储变量名称 | 是 |
| type | 可以是字符串或布尔值类型 | no, 默认为字符串 |
| label | UI 在渲染 UI 元素时使用 | 是 |
| secret | 将加密 | 否,默认 false |
| 多行 | 如果字段包含来自文件的数据,则可以将多行设置为 True | 否,默认 false |
| help_text | 与此字段关联的帮助文本 | 否 |
3.2.2. 注入程序配置 复制链接链接已复制到粘贴板!
您可以使用 Injector 配置从 Input 配置字段中提取信息,并将它们映射到程序类型,在运行规则手册时可发送到 ansible-rulebook。event-Driven Ansible 支持以下类型的注入器:
-
环境变量(
env)- 用于底层软件包或共享库的源插件。 -
Ansible 额外变量(
extra_vars)- 用于替换规则手册条件、操作或源插件参数。 -
基于文件的模板(
文件) - 用于从凭证输入(如证书和密钥)创建文件内容,插件可能需要它们。文件注入程序提供了一种在运行时向 ansible-rulebook 发送这些证书和密钥的方法,而无需将其存储在决策环境中。因此,ansible-rulebook 创建临时文件,并使用eda.filename变量访问文件名,这些变量会在创建文件(例如 "{{eda.filename.my_cert}}")后自动创建。
在规则手册激活和凭证类型注入器中创建 extra_vars 时,请避免使用 eda 或 ansible 作为密钥名称,因为与内部使用冲突,并可能导致规则手册激活和凭证类型创建失败。
借助注入程序,您可以调整字段,以便它们可以作为上述注入器类型之一注入规则,这在顶层不能有重复的键。如果您在规则手册中有两个源,它们需要用户名和密码等参数,则注入器以及规则手册中可帮助您调整每个源的参数。
要查看示例注入程序和输入,请分别查看以下 GitHub gists: