创建访问凭证

更新时间:
复制 MD 格式

使用阿里云SDK通过共享网关和专属网关访问OpenAPI时认证方式相同,支持AK、STS Token、RamRoleArn、ECS实例RAM角色等基于RAM的身份认证方式。本文介绍如何创建访问凭证。

说明

如果想了解更多类型的访问凭证,请参见管理访问凭据。

AccessKey

警告

阿里云账号默认有所有资源的 Administrator 权限且不可修改,为了确保资源安全,建议使用 RAM 用户创建 AccessKey,并根据需求进行最小化授权。

  1. 登录RAM 控制台,在页用户面,单击目标 RAM 用户名称。

  2. 在凭证管理标签页的AccessKey区域,单击创建 AccessKey。

  3. 授予 RAM 用户访问 KMS 的权限。

    • 方式一:设置基于身份的策略

      单击 RAM 用户操作列的新增授权,直接绑定 KMS 内置系统权限策略到 RAM 角色。KMS 内置系统权限策略,请参见密钥管理服务系统权限策略参考。

      说明

      同时支持自定义权限策略,具体操作请参见创建自定义权限策略。

    • 方式二:设置基于资源的策略

      KMS 支持基于资源的策略,即为单个密钥和凭据设置访问权限,用于控制哪些阿里云账号、RAM 用户、RAM 角色有权限来管理或使用 KMS 密钥、凭据。详细介绍,请参见密钥策略、凭据策略。

ECS RAM 角色

ECS RAM 角色是指为 ECS 实例授予的 RAM 角色,该 RAM 角色是一个受信服务为云服务器的普通服务角色。使用实例 RAM 角色可以实现在 ECS 实例内部无需配置 AccessKey 即可获取临时访问凭证(STS Token),从而调用 KMS 的 OpenAPI。

具体操作,请参见实例RAM角色。

  1. 登录RAM 控制台,创建可信实体为阿里云服务的 RAM 角色。

    • 信任主体类型:选择云服务器。

    • 信任主体名称:选择云服务器 ECS。

  2. 授予 RAM 角色访问 KMS 的权限。

    • 方式一:设置基于身份的策略

      单击 RAM 角色操作列的新增授权,直接绑定 KMS 内置系统权限策略到 RAM 角色。KMS 内置系统权限策略,请参见密钥管理服务系统权限策略参考。

      说明

      同时支持自定义权限策略,具体操作请参见创建自定义权限策略。

    • 方式二:设置基于资源的策略

      KMS 支持基于资源的策略,即为单个密钥和凭据设置访问权限,用于控制哪些阿里云账号、RAM 用户、RAM 角色有权限来管理或使用 KMS 密钥、凭据。详细介绍,请参见密钥策略、凭据策略。

  3. 登录ECS 管理控制台,将 RAM 角色授予 ECS 实例。

STS Token

通过 STS 服务为 RAM 用户或 RAM 角色颁发一个临时访问凭证(STS Token),可以在限定的有效期内,以符合策略规定的权限访问 KMS,超过有效期后,该凭证自动失效。

  1. 登录RAM 控制台,创建 RAM 用户或 RAM 角色。具体操作,请参见创建RAM用户、创建RAM角色。

  2. 为 RAM 用户或 RAM 角色授予AliyunSTSAssumeRoleAccess权限。具体操作,请参见管理RAM用户的权限、管理RAM角色的权限。

  3. 授予 RAM 用户或 RAM 角色访问 KMS 的权限。

    • 方式一:设置基于身份的策略

      单击 RAM 角色或用户操作列的新增授权,直接绑定 KMS 内置系统权限策略。KMS 内置系统权限策略,请参见密钥管理服务系统权限策略参考。

      说明

      同时支持自定义权限策略,具体操作请参见创建自定义权限策略。

    • 方式二:设置基于资源的策略

      KMS 支持基于资源的策略,即为单个密钥和凭据设置访问权限,用于控制哪些阿里云账号、RAM 用户、RAM 角色有权限来管理或使用 KMS 密钥、凭据。详细介绍,请参见密钥策略、凭据策略。

  4. 使用 RAM 用户或 RAM 角色调用 STS 服务的 AssumeRole 接口获取 STS 临时访问凭证。具体操作,请参见AssumeRole - 获取扮演角色的临时身份凭证。

AK+RamRoleArn

RAM 用户或云产品可以通过扮演角色的方式获取临时权限(STS Token),而不是直接使用长期密钥,降低了密钥泄露的风险。例如,在临时的数据处理任务中,RAM 用户或云产品临时扮演一个具有特定 RamRoleArn 的角色,完成任务后角色权限被收回,减少泄露风险。

  1. 创建用户 AK

    1. 登录RAM 控制台,在身份管理 > 用户页面,单击目标 RAM 用户名称。

    2. 为 RAM 用户分配系统策略 AliyunSTSAssumeRoleAccess或包含权限操作sts:AssumeRole的自定义策略。

    3. 在凭证管理标签页的AccessKey区域,单击创建 AccessKey。

  2. 创建 RAM 角色并授权:

    1. 在身份管理 > 角色页面,单击创建角色具体操作,请参见创建RAM角色。

    2. 授予 RAM 角色访问 KMS 的权限。

      • 方式一:设置基于身份的策略

        单击 RAM 角色操作列的新增授权,直接绑定 KMS 内置系统权限策略到 RAM 角色。KMS 内置系统权限策略,请参见密钥管理服务系统权限策略参考。

        说明

        同时支持自定义权限策略,具体操作请参见创建自定义权限策略。

      • 方式二:设置基于资源的策略

        KMS 支持基于资源的策略,即为单个密钥和凭据设置访问权限,用于控制哪些阿里云账号、RAM 用户、RAM 角色有权限来管理或使用 KMS 密钥、凭据。详细介绍,请参见密钥策略、凭据策略。

  3. 获取目标 RAM 角色的 RamRoleArn。具体操作,请参见查看RAM角色。

    1. 在身份管理 > 角色页面,单击目标角色名称。

    2. 进入角色详情页,在ARN区域可获取 RamRoleArn 信息。

      说明

      RamRoleArn 是 RAM 角色的 ARN 信息,即需要扮演的角色 ID。格式为 acs:ram::$accountID:role/$roleName。$accountID 为阿里云账号 ID。$roleName 为 RAM 角色名称。