获取临时授权Token

更新时间: 2023-08-11 09:59:45

您可以获得实例RAM角色的临时授权Token,该临时授权Token可以执行实例RAM角色的权限和资源,并且该临时授权Token会自动周期性地更新。

操作步骤

  1. 远程连接ECS实例。连接方式请参见连接方式概述

  2. 检索实例RAM角色的临时授权Token。

    • <元数据服务器的访问凭证有效期>:获取实例RAM角色的临时Token之前,需先获取元数据服务器的访问凭证,并设置其有效期用于鉴权,以加强数据安全。超过有效期后,需重新获取凭证,否则无法获取实例RAM角色的临时Token。

      取值范围为1~21600,单位为秒。详细说明,请参见查看实例元数据

    • <实例RAM角色名称>需替换为具体的实例RAM角色名称。例如EcsRamRoleDocumentTesting。

    Linux实例

    # 获取元数据服务器的访问凭证用于鉴权
    TOKEN=`curl -X PUT "http://100.100.100.200/latest/api/token" -H "X-aliyun-ecs-metadata-token-ttl-seconds:<元数据服务器访问凭证有效期>"` 
    # 获取实例RAM角色的临时Token
    curl -H "X-aliyun-ecs-metadata-token: $TOKEN" http://100.100.100.200/latest/meta-data/ram/security-credentials/<实例RAM角色名称>

    Windows实例

    # 获取元数据服务器的访问凭证用于鉴权
    $token = Invoke-RestMethod -Headers @{"X-aliyun-ecs-metadata-token-ttl-seconds" = "<元数据服务器的访问凭证有效期>"} -Method PUT –Uri http://100.100.100.200/latest/api/token
    # 获取实例RAM角色的临时Token
    Invoke-RestMethod -Headers @{"X-aliyun-ecs-metadata-token" = $token} -Method GET -Uri http://100.100.100.200/latest/meta-data/ram/security-credentials/<实例RAM角色名称>

    返回示例如下所示,其中:

    • SecurityToken:实例RAM角色的临时Token。

    • Expiration:实例RAM角色临时Token的有效期(非元数据服务器的访问凭证有效期)。

      {
         "AccessKeyId" : "STS.*******6YSE",
         "AccessKeySecret" : "aj******jDU",
         "Expiration" : "2017-11-01T05:20:01Z", 
         "SecurityToken" : "CAISng********",
         "LastUpdated" : "2023-07-18T14:17:28Z",
         "Code" : "Success"
      }
阿里云首页 云服务器 ECS 相关技术圈