您可在控制台创建、授权实例RAM角色,并将其授予实例。
使用限制
使用实例 RAM 角色存在如下限制:
- 只有专有网络 (VPC) 网络类型的 ECS 实例才能使用实例 RAM 角色。
- 一个 ECS 实例一次只能授予一个实例 RAM 角色。
- 当您给 ECS 实例授予了实例 RAM 角色后,并希望在 ECS 实例内部部署的应用程序中访问云产品的 API 时,您需要通过 实例元数据 获取实例 RAM 角色的临时授权 Token。参阅 获取临时授权 Token。
- 如果您是通过 RAM 用户子账号使用实例 RAM 角色,您需要通过云账号 授权 RAM 用户使用实例 RAM 角色。
前提条件
您已经开通 RAM 服务,参阅 RAM 文档 开通方法 开通 RAM 服务。
1. 创建实例 RAM 角色
- 登录 RAM 控制台。
- 在导航窗格中,单击 角色管理。
- 在角色管理页面,单击 新建角色。
- 在弹窗中:
- 角色类型 选择 服务角色。
- 类型信息 选择 ECS 云服务器。
- 输入角色名称及备注,如 EcsRamRoleDocumentTesting。
- 单击 创建。
2. 授权实例 RAM 角色
- 登录 RAM 控制台。
- 在导航窗格中,单击 策略管理。
- 在 策略管理 页面,单击 新建授权策略。
- 在弹窗中:
- 权限策略模板 选择 空白模板。
- 输入 授权策略名称 及 策略内容,如 EcsRamRoleDocumentTestingPolicy。
- 单击 新建授权策略 完成授权。
- 在导航窗格中,单击 角色管理。
- 在 角色管理 页面,选择创建好的角色,如 EcsRamRoleDocumentTesting,单击 授权。
- 输入创建的 授权策略名称,如 EcsRamRoleDocumentTestingPolicy。
-
单击符号 > 选中策略名,单击 确定。
3. 授予实例 RAM 角色
方式一:通过控制台授予实例 RAM 角色
- 登录 ECS管理控制台。
- 在导航窗格中,单击 实例。
- 选择地域。
- 找到要操作的 ECS 实例,选择 。
- 在弹窗中,选择创建好的实例 RAM 角色,如 EcsRamRoleDocumentTesting,单击 确定 完成授予。
方式二:创建 ECS 实例时授予 RAM 角色
- 登录 ECS管理控制台。
- 在导航窗格中,单击 实例。
- 单击 创建实例。
- 可参阅 步骤 2:创建ECS实例 设置实例的相关信息,并在 RAM 角色 属性中为实例选择已创建好的实例 RAM 角色,如 EcsRamRoleDocumentTesting。
实例创建后,会拥有该实例 RAM 角色策略中所授权的权限。
4. (可选)收回实例 RAM 角色
- 登录 ECS管理控制台。
- 在导航窗格中,单击 实例。
- 选择地域。
- 选择一个已经授予 RAM 角色的 ECS 实例,选择 。
- 操作类型 选择 收回,单击 确定 即可收回实例 RAM 角色。
5. (可选)更换实例 RAM 角色
- 登录 ECS管理控制台。
- 在导航窗格中,单击 实例。
- 选择地域。
- 选择一个已经授予 RAM 角色的 ECS 实例,选择 。
- 操作类型 选择 授予,在已有 RAM 角色 中选择其他实例 RAM 角色,单击 确定 即可更换当前 RAM 角色。
6. (可选)获取临时授权 Token
您可以获得实例 RAM 角色的临时授权 Token,该临时授权 Token 可以执行实例 RAM 角色的权限和资源,并且该临时授权 Token 会自动周期性地更新。示例:
- 远程连接并登录到 ECS 实例。
- 检索名为 EcsRamRoleDocumentTesting 的实例 RAM 角色的临时授权 Token:
- Linux 实例: 执行命令
curl http://100.100.100.200/latest/meta-data/Ram/security-credentials/EcsRamRoleDocumentTesting
。 - Windows 实例:参阅 实例元数据。
- Linux 实例: 执行命令
- 获得临时授权 Token。返回示例如下:
{ "AccessKeyId" : "XXXXXXXXX", "AccessKeySecret" : "XXXXXXXXX", "Expiration" : "2017-11-01T05:20:01Z", "SecurityToken" : "XXXXXXXXX", "LastUpdated" : "2017-10-31T23:20:01Z", "Code" : "Success" }
7. (可选)授权 RAM 用户使用实例 RAM 角色
说明 当您授权 RAM 用户使用实例 RAM 角色时,您必须授权 RAM 用户对该实例 RAM 角色的
PassRole 权限。其中,
PassRole 决定该 RAM 用户能否直接执行角色策略赋予的权限。
登录 RAM 控制台,参阅 为 RAM 用户授权 完成授权,授权策略如下所示:
{
"Version": "2016-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs: [ECS RAM Action]",
"ecs: CreateInstance",
"ecs: AttachInstanceRamRole",
"ecs: DetachInstanceRAMRole"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "*"
}
]
}
其中,[ECS RAM Action] 表示可授权 RAM 用户的权限,请参阅 鉴权规则。
参考链接
- 您也可以 通过 API 使用实例 RAM 角色。
- 您也许想 借助实例 RAM 角色访问其它云产品 API。
在文档使用中是否遇到以下问题
更多建议
匿名提交