密钥别名(Key Alias)是指特定密钥的简称,是密钥的可选标识。您可以在API接口调用中使用别名来代替密钥ID,方便您管理密钥。本文介绍如何创建及管理密钥的别名。
注意事项
别名必须拥有前缀
alias/
。除前缀以外,长度为1~255个字符,支持英文字母、数字、下划线(_)、短划线(-)以及正斜线(/)。说明alias/acs/<云产品>
(例如alias/acs/oss)是KMS为服务密钥预留的别名,自定义别名时请勿使用该格式。别名在一个阿里云账号的一个地域中具有唯一性,不同地域下密钥的别名可以相同。
一个别名只能关联一个密钥,但是一个密钥可以拥有多个别名。
别名不支持修改,您可以通过为一个密钥创建新的别名,并且删除旧的别名来达到修改别名的目的,删除别名不会删除其关联的密钥。
警告删除别名前,请确保该别名已不再使用,否则可能会导致数据加密失败。
当RAM用户使用别名代替密钥ID进行操作时,RAM用户必须拥有对应密钥的权限,无需拥有对应别名的权限。
创建别名
您可以为密钥创建别名方便您管理密钥,为密钥创建新的别名时不会影响已有的别名。
前提条件
当RAM用户创建别名时,您需要创建自定义权限策略,并授予该RAM用户,使其拥有别名和关联密钥的权限。更多信息,请参见使用RAM实现对资源的访问控制。
以用户123456为密钥08ec3bb9-034f-485b-b1cd-3459baa8****创建别名alias/example
为例,RAM权限策略内容如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:CreateAlias"
],
"Resource": [
"acs:kms:cn-hangzhou:123456:key/08ec3bb9-034f-485b-b1cd-3459baa8****",
"acs:kms:cn-hangzhou:123456:alias/example"
]
}
]
}
操作步骤
您可以根据业务需要,选择合适的创建方式创建别名。
创建别名的方式 | 操作步骤 |
通过控制台创建别名 |
|
通过API创建别名 | 通过调用CreateAlias接口创建别名。 |
通过ALIYUN CLI创建别名 | 通过命令aliyun kms CreateAlias创建别名。
|
更新别名
更新别名可以将已有的别名关联到其他密钥。
前提条件
当RAM用户更新别名时,您需要创建自定义权限策略,并授予该RAM用户,使其拥有原密钥、目标密钥以及别名的权限。更多信息,请参见使用RAM实现对资源的访问控制。
以用户123456将密钥08ec3bb9-034f-485b-b1cd-3459baa8****关联的别名alias/example
关联到新密钥127d2f84-ee5f-4f4d-9d41-dbc1aca2****为例,RAM权限策略内容如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:UpdateAlias"
],
"Resource": [
"acs:kms:cn-hangzhou:123456:key/08ec3bb9-034f-485b-b1cd-3459baa8****",
"acs:kms:cn-hangzhou:123456:key/127d2f84-ee5f-4f4d-9d41-dbc1aca2****",
"acs:kms:cn-hangzhou:123456:alias/example"
]
}
]
}
操作步骤
您可以根据业务需要,选择合适的更新方式更新别名。
更新别名的方式 | 操作步骤 |
通过API更新别名 | 通过调用UpdateAlias接口更新别名。 |
通过ALIYUN CLI更新别名 | 通过命令aliyun kms UpdateAlias更新别名。
|
查询别名列表
您可以查询当前用户在当前地域的所有别名。
前提条件
当RAM用户查询别名列表时,您需要创建自定义权限策略,并授予该RAM用户,使其拥有别名资源类型的权限。更多信息,请参见使用RAM实现对资源的访问控制。
以用户123456查询别名列表为例,RAM权限策略内容如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:ListAliases"
],
"Resource": [
"acs:kms:cn-hangzhou:123456:alias"
]
}
]
}
操作步骤
您可以根据业务需要,选择合适的查询方式查询别名列表。
查询别名列表的方式 | 操作步骤 |
通过API查询别名列表 | 通过调用ListAliases接口查询别名列表。 |
通过ALIYUN CLI查询别名列表 | 通过命令aliyun kms ListAliases查询别名列表。
|
查询指定密钥关联的别名
查询结果将返回与指定密钥相关联的所有别名信息。
前提条件
当RAM用户查询指定密钥关联的别名时,您需要创建自定义权限策略,并授予该RAM用户,使其拥有指定密钥的权限。更多信息,请参见使用RAM实现对资源的访问控制。
以用户123456查询密钥127d2f84-ee5f-4f4d-9d41-dbc1aca2****关联的所有别名为例,RAM权限策略内容如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:ListAliasesByKeyId"
],
"Resource": [
"acs:kms:cn-hangzhou:123456:key/127d2f84-ee5f-4f4d-9d41-dbc1aca2****"
]
}
]
}
操作步骤
您可以根据业务需要,选择合适的查询方式查询指定密钥关联的别名。
查询方式 | 操作步骤 |
通过API查询指定密钥关联的别名 | 通过调用ListAliasesByKeyId接口查询指定密钥关联的别名。 |
通过ALIYUN CLI查询指定密钥关联的别名 | 通过命令aliyun kms ListAliasesByKeyId查询指定密钥关联的别名。
|
删除别名
如果您不再需要别名,可以直接删除别名,删除别名不会影响其关联的密钥。
前提条件
当RAM用户删除别名时,您需要创建自定义权限策略,并授予该RAM用户,使其拥有别名及其关联密钥的权限。更多信息,请参见使用RAM实现对资源的访问控制。
以用户123456删除密钥127d2f84-ee5f-4f4d-9d41-dbc1aca2****关联的别名alias/example
为例,RAM权限策略内容如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:DeleteAlias"
],
"Resource": [
"acs:kms:cn-hangzhou:123456:key/127d2f84-ee5f-4f4d-9d41-dbc1aca2****",
"acs:kms:cn-hangzhou:123456:alias/example"
]
}
]
}
操作步骤
您可以根据业务需要,选择合适的删除方式删除别名。
删除别名的方式 | 操作步骤 |
通过控制台删除别名 |
|
通过API删除别名 | 通过调用DeleteAlias接口删除别名。 |
通过ALIYUN CLI删除别名 | 通过命令aliyun kms DeleteAlias删除别名。
|