更新时间:2024-11-07 GMT+08:00

配置弹性云服务器ECS委托

华为云弹性云服务器(Elastic Cloud Server,以下简称ECS)是一种云上可随时自助获取、可弹性伸缩的计算服务。本文将指导用户创建ECS委托,并获取委托的临时访问密钥。

应用场景

假如您是一位开发者,开发了一个应用程序,这个应用程序运行在ECS实例上,应用程序的代码中涉及调用API访问华为云服务。此时,因为华为云服务要求访问请求方出示访问凭证,所以您的API调用将会面临提供访问凭证的问题。

访问凭证按照时效性可分为永久凭证和临时凭证,相较于永久性访问凭证,例如用户名和密码,临时访问密钥因为有效期短且刷新频率高,所以安全性更高。因此,您的应用程序若想要以更安全的方式访问云服务,需要获取临时访问凭证,而IAM的委托功能,则支持通过ECS委托获取临时访问密钥。

图1 应用程序获取临时访问密钥

图1所示,以访问数据库服务举例。因为数据库服务要求访问请求方提供访问凭证,所以应用程序需要获得委托的临时访问密钥AK、SK。应用程序与ECS元数据服务通信,ECS元数据服务再与IAM通信,拿到临时AK、SK后返回给应用程序。然后,应用程序将临时AK、SK作为访问凭证出示给数据库服务,数据库服务收到请求后,先校验访问凭证是否合法,凭证通过校验后,ECS实例上的应用程序才能访问数据库服务。

解决方案

针对以上应用场景,可使用IAM对ECS云服务的委托来获取临时访问密钥。在IAM上对ECS云服务授权,并对应用程序所在的ECS实例进行授权委托管理。ECS实例获得委托权限之后,应用程序可申请指定委托的临时访问密钥,从而以临时访问密钥为凭证安全访问华为云资源。详细方案如下:

  1. 创建ECS云服务委托。账号在IAM控制台创建委托,指定委托对象为ECS云服务。委托创建时,选择权限策略,选择可访问的资源范围,不同的委托对应不同的权限策略。
  2. ECS实例配置委托。在ECS实例的配置项中选择上一步创建的委托,一个ECS实例只可以选择一个委托。
  3. 获取委托的临时凭证。ECS实例配置了委托参数后,就获得了委托权限。此时,ECS实例上运行的应用程序可获取委托的临时访问密钥AK、SK。拥有临时访问密钥的应用程序可与华为云服务进行交互,交互行为遵循账号授予的权限策略和资源使用范围。
图2 ECS委托

操作流程

图3 ECS委托操作流程

实施步骤

图3所示,配置ECS弹性云服务器委托分为创建ECS云服务委托、ECS实例配置委托、获取委托的临时凭证3步。详细步骤如下:

  1. 管理员创建ECS云服务委托

    1. 登录统一身份认证服务控制台。
    2. 在统一身份认证服务的左侧导航窗格中,选择“委托”页签,单击“创建委托”。
    3. 在创建委托页面,设置“委托名称”
    4. “委托类型”选择“云服务”,在“云服务”中选择“弹性云服务器 ECS 裸金属服务器 BMS”。
      图4 创建委托
    5. 选择“持续时间”。
    6. (可选)填写“委托描述”。建议填写描述信息。
    7. 单击“完成”。
    8. 在授权的确认弹窗中,单击“立即授权”。
    9. 勾选需要授予委托的权限,单击“下一步”,选择权限的作用范围,给委托授权。
    10. 单击“确定”,委托创建完成。

  2. 管理员或拥有ECS权限的IAM用户为ECS实例配置委托

    • 若ECS实例未创建,则参考自定义购买弹性云服务器,购买并配置ECS云服务器,在高级配置过程中,单击下拉列表选择步骤1创建的委托,获取相应权限。
      图5 选择委托
    • 若ECS实例已创建,可按照如下流程配置ECS实例委托:
    1. 进入ECS产品页,单击ECS实例名,进入配置页面。
      图6 单击ECS实例名
    2. 管理信息栏目下,单击,为ECS实例选择委托。
      图7 为ECS实例选择委托
    3. 根据委托名选择步骤1创建的委托。
      图8 选择委托
    4. 单击,完成配置

  3. 应用程序获取临时凭证

    运行在ECS实例上的应用程序调用获取委托临时凭证的API,即可获得临时访问密钥,之后可使用该密钥访问其他的华为云服务。AK、SK获取方法如下,如需了解详情,可参见元数据获取

    • URI

    /openstack/latest/securitykey

    • 方法

    支持GET请求

    • 示例

    Linux操作系统:

    curl http://169.254.169.254/openstack/latest/securitykey

    Windows操作系统:

    Invoke-RestMethod http://169.254.169.254/openstack/latest/securitykey

    ECS会为您自动轮换这些临时凭证,从而确保每次申请的临时凭证安全、有效。