外部密钥保管库命名约定
- Updated: 2024/10/14
特定的身份验证凭据和外部密钥库对用户名、短语和其他文本中某些字符的使用有一定限制。 此外,根据外部密钥保管库和凭据场景,需要遵循不同的命名约定: 坐席自动登录或坐席自动化。
坐席自动登录命名约定
对于CyberArk,所有agent - 坐席自动登录凭据均从指定的保险库名称中检索,并假定存在于自动登录凭据保险库中。 对于 AWS Secrets Manager、Microsoft Azure Key Vault 和 HashiCorp Vault,agent - 坐席自动登录凭据必须遵循本页详细说明的命名约定。
如果Control Room执行自动登录凭据检索,但在自动登录凭据保险库中不存在与该用户名匹配的凭据,则自动登录将失败。 对于任何无人值守的自动化,所有机器人或数字工作者用户 ID 必须为每个 Control Room 用户在外部密钥库中配置自动登录凭证。
Control Room 根据外部密钥库中的对象命名约定检索自动登录凭据。 Control Room 会搜索一个对象,其中对象名称(外部密钥库中的凭据名称)与其执行自动登录的 Control Room 用户名匹配。
前缀 autologin_ 是所有支持的外部密钥库自动登录凭证命名约定的一部分。 外部密钥库中自动登录凭据的名称必须包含 autologin_,后接 Control Room 用户名。 在某些工单中,某些密钥保管库对凭证对象名称中可使用的字符有限制。 此外,为了支持不同场景对凭据的编码方式,Automation 360 要求保留或编码某些字符。
以下表格列出了 Control Room 中预期的对象命名约定示例:
Control Room 用户名 | 预期对象名称格式 |
---|---|
ABCD\用户123 | 自动登录_ABCD--用户123 |
user123@rpa.abcd.com | 自动登录_用户123-40-rpa-2e-abcd-2e-com |
ABCD\用户123 | 自动登录_ABCD\用户123 |
user123@rpa.abcd.com | autologin_user123@rpa.abcd.com |
约翰 | 自动登录_约翰 |
对于自动登录凭据,请记住以下几点:
- 外部密钥库中的对象名称必须包含前缀 autologin_。
- 自动登录凭证名称必须映射到要检索的凭证的 Control Room 用户名(登录 ID)。
某些外部密钥库对某些字符的使用有限制,例如在密钥名称(对象名称)中限制使用反斜杠 (\) 和符号 (@),以及限制在 API 调用中如何解释特殊字符。 如果用户 ID 包含特殊字符,则必须使用 ASCII 代码字符替换在外部密钥库中对秘密名称(对象名称)进行编码,如下表所示。
此字符 | 对该 ASCII 代码字符替换的更改 |
---|---|
反斜杠 | -- |
-(破折号) | -2d- |
_(下划线) | -5f- |
@(和号) | -40- |
.(句号) | -2e- |
Automation 360 允许您配置用于自动登录到运行自动化(机器人)的客户端设备的密钥的自定义名称。
您可以根据所在组织的标准和命名格式在您的保管库中设置凭据。 然后,您可以将这些密钥名称映射到 Control Room 用户名。
在将外部密钥保管库映射到 Control Room 以实现自动登录时,自定义命名格式允许您为 Bot Runners 使用的密钥创建特定名称。 通过确保名称符合所在组织的标准来提高可用性。
- 您可以偏离默认格式(例如:autologin_<bot-runner_username>)创建符合您操作需求的命名格式。
- 您可以将存储在外部密钥保管库中的每个密钥映射到其对应的Control Room 用户名,该用户名用于自动登录。
定义您自己的密钥名称,通过与所在组织的标准保持一致来提高可用性。 请参阅 自定义密钥命名规定。
坐席自动化命名约定
agent - 坐席自动化凭据是自动化在运行时检索的凭据,并由自动化bot用于与应用程序进行身份验证。 从外部密钥库检索的自动化凭据在配置储物柜和凭据时,使用外部密钥库选项映射到 Automation Anywhere Credential Vault 中。
Automation Anywhere locker 映射到以下任一项:
- 安全名称 (CyberArk)
- 密钥名称前缀(AWS、Azure 和 HashiCorp)
凭证映射到以下任一项:
- 对象名称 (CyberArk)
- 一个秘密名称主体(AWS、Azure 和 HashiCorp)
为了支持 Automation Anywhere 用户定义的凭据功能,您可以使用 Control Room_username 后缀创建凭据,因为这些凭据是根据正在运行的 bot 的用户上下文检索的。 如果您不创建用户定义的凭据,那么自动化 bot 凭据检索过程将检索系统凭据。
外部密钥库禁止在密钥名称中使用不同的特殊字符。 因此,您必须根据所使用的外部密钥库类型(CyberArk、AWS 和 Azure)及其特定要求,对外部密钥库中凭证(secret)名称的某些字符进行编码。
HashiCorp 密钥命名约定
- 大写字符 (A–Z)
- 小写字符 (a–z)
- 数字 (0–9)
- 特殊字符 (+=)
对于其他特殊字符,密钥名称应使用特殊字符的 ASCII 编码值。 例如,下划线字符 (_) 必须用作 -5f-。
On-Premises 部署: 要覆盖由 Control Room 编码的默认字符,请在位于 Automation Anywhere 配置目录中的 keyvault.properties 文件中添加以下属性和正则表达式值。 例如,如果您不想对特殊字符进行编码,请使用以下表达式:name.encoding.characters.allowed.regex.hashicorp=^[A-Za-z0-9/_+=.@-]+$。
CyberArk 密码保管库自动化示例
以下表格展示了使用命名约定进行自动化的 CyberArk 外部密钥保管库示例。
- 保险库名称映射到 Control Room 的存储柜,而对象名称映射到 Control Room 的凭据。
- Control Room 中的对象名称字段映射到 CyberArk 中的账户名称。 此外,对象名称不应包含任何空格。 例如,如果 CyberArk 中的账户名称是automation360-engsafe-example.com-john.smith,Control Room 中的对象名称字段将必须设置为 automation360-engsafe-example.com-john.smith。
自动化凭证示例 | Control Room 用户名 | 保险库名称 | 存储柜中的对象 |
---|---|---|---|
存储柜中的系统凭据映射到保险库名称 | 无 - 系统凭证 | 财务 | glaccess |
存储柜中的用户定义凭据映射到保险库名称 | ABCD\RPA\user123 | 财务 | glaccess_ABCD--RPA--user123 |
存储柜中的用户定义凭据映射到使用 ASCII 映射编码用户名保险库名称。 | ABCD\RPA.user123 | 财务 | glaccess_ABCD--RPA-2e-user123 |
使用 CyberArk 密钥响应为不同的 Automation 360 服务配置用户名
在为某些 Automation 360 服务(如自动登录、轻量级目录访问协议 (LDAP) 和服务凭据)配置 CyberArk 设置时,您可以为输入属性设置为您的 CyberArk 用户名选项进行选择性配置。 用户名可以是秘密响应的值或字符串文字的值的组合。 CyberArk 密钥响应包含的字段值需要用美元符号 ($) 括起来,以构建用户名。 例如,要将用户名配置为 domain\username 格式,必须输入:$domain$\$username$。 该表达式中的域名和用户名值将替换为密钥响应中的相应值。
AWS Secrets Manager 自动化示例
下表展示了使用命名约定进行自动化的 AWS Secrets Manager 外部密钥保管库示例。
自动化凭证示例 | Control Room 用户名 | AWS 前缀 | AWS 密钥正文 | AWS 中的密钥 |
---|---|---|---|---|
accounting_pdf 系统凭据在存储柜中映射到 AWS Secret Name 前缀 accounting |
无 - 系统凭证 | 会计 | accounting_pdf(系统) | |
accounting_pdf_ABCD--user123 存储柜中的用户定义凭据映射到 AWS 密钥名称前缀会计 |
ABCD\用户123 | 会计 | accounting_pdf_ABCD--user123 |
Azure Key Vault 自动化示例
以下表格展示了使用命名约定进行自动化的 Azure Key Vault 外部密钥保管库示例。
自动化凭证示例 | Control Room 用户名 | Azure 前缀 | Azure 密钥正文 | Azure 中的密钥 |
---|---|---|---|---|
accounting_cv1 存储柜中的系统凭据映射到 Azure 密钥名称前缀会计 |
无 - 系统凭证 | 会计 | 简历1 | pdf-5f-cv1(系统) |
accounting_cv1_ABCD\user123 存储柜中的用户定义凭据映射到 Azure 前缀 |
ABCD\用户123 | 会计 | 简历1 | pdf-5f-cv1-5f-ABCD--user123 |
在部署 Azure 凭据时,Azure Key Vault 字符下划线 (_) 是保留字符,不能用于凭据名称。 您必须将任何下划线 (_) 替换为由破折号括起来的 ASCII 代码值 5f:
此字符 | 对该 ASCII 代码字符替换的更改 |
---|---|
\(斜杠) | -- |
-(破折号) | -2d- |
_(下划线) | -5f- |
@(和号) | -40- |
.(句号) | -2e- |
HashiCorp Vault 自动化示例
以下表格显示了使用外部密钥保管库命名约定的 HashiCorp Vault 自动化示例。
自动化凭证示例 | Control Room 用户名 | 存储柜前缀 | 凭据密钥名称 | HashiCorp 中的密钥名称 |
---|---|---|---|---|
accounting_cred01 存储柜中的系统凭据映射到 HashiCorp 密钥名称前缀会计 |
无 - 系统凭证 | 会计 | cred01 | accounting-5f-cred01(system) |
accounting_cred01_ABCD\user123 用户定义的凭据在 locker 中映射到 HashiCorp 前缀 |
ABCD\用户123 | 会计 | cred01 | accounting-5f-cred01-5f-ABCD--user123 |
accounting_cred01_john 用户定义的凭据在 locker 中映射到 HashiCorp 前缀 注: 此示例显示未编码的值。
|
约翰 | 会计 | cred01 | accounting_cred01_john |