逻辑编排使用服务角色的方式为用户执行相关操作。对于RAM身份(RAM用户和RAM角色)需要给逻辑编排进行服务角色授权的情况,请按本文档为对应RAM身份进行授权。
背景信息
在工作流执行过程中,逻辑编排会通过扮演用户授予的服务角色,通过API去访问对应的资源。对于当前阿里云账号,只需按照逻辑编排提供的选择服务角色流程完成相应服务角色的绑定即可。对于RAM相关的身份,如果需要编辑工作流并需要使用阿里云相关的操作,则需要提前为该RAM身份授权,以便该RAM身份能够在编辑过程中为逻辑编排进行服务角色授权。RAM用户、RAM角色等相关概念请参考身份管理相关概念。
对于一个确定的RAM身份,根据该身份拥有的权限,分为三种情况:
该RAM身份没有RAM相关权限
该RAM身份有RAM只读权限
该RAM身份有RAM所有权限
接下来会针对这三种情况进行操作说明,操作过程涉及到两种角色:
管理员:当前阿里云账号管理员或有RAM权限的RAM身份。
开发人员:某个RAM用户或角色,至少拥有逻辑编排相关的权限,需要编辑工作流并使用到了阿里云相关的操作。操作过程以RAM用户为例,RAM角色同理。
RAM用户没有RAM权限
管理员操作步骤
登录 阿里云 RAM 控制台。
在RAM控制台的 角色 页面可以查看您当前需要使用的服务角色。如果您没有创建过服务角色,请先创建服务角色,创建方法请参见 创建可信实体为阿里云服务的RAM角色。注意这里 受信服务 需要选择 逻辑编排,角色名称 可根据您的需要命名(本例以 AliyunLogicComposerDefaultRole 为角色名称)。
为第二步创建的角色授权,这里可以提前和开发人员沟通,确认工作流中需要的权限,创建方法请参见 为RAM角色授权。
在 RAM 控制台的 权限策略 页面为RAM用户创建自定义策略,创建方法请参见 创建自定义权限策略,自定义策略中需要添加如下权限:
{
"Statement": [
{
"Action": "ram:PassRole",
"Resource": "acs:ram::<your uid>:role/<role name>",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"acs:Service": "composer.aliyuncs.com"
}
}
}
],
"Version": "1"
}
Resource 可以通过 查看RAM角色,复制上述第2步中对应服务角色详情页上 ARN 即可。
5. 在 RAM 控制台的 RAM概览 页面找到开发人员对应的RAM用户,给RAM用户赋予第4步创建的 权限策略,创建方法请参见 为RAM用户授权。
6. 复制第二步创建的角色名,并告知开发人员。
开发人员操作步骤
在工作流弹出的授权面板中填入管理员提供的角色名即可(本例中使用 AliyunLogicComposerDefaultRole)。
RAM用户有RAM只读权限
管理员操作步骤
登录阿里云RAM控制台。
在RAM控制台的角色管理页面可以查看您当前需要使用的服务角色。如果您没有创建过服务角色,请先创建服务角色,创建方法请参见 创建可信实体为阿里云服务的RAM角色。注意这里 受信服务 需要选择 逻辑编排,角色名称 可根据您的需要命名(本例以 AliyunLogicComposerDefaultRole 为角色名称)。
为第二步创建的角色授权,这里可以提前和开发人员沟通,确认需要的权限,创建方法请参见 为RAM角色授权。
开发人员操作步骤
RAM用户直接在工作流授权面板中直接选择第二步创建的角色,以 AliyunLogicComposerDefaultRole 为例(注意:RAM用户只有只读权限的场景下,不能在该流程中继续为服务角色添加权限,需有权限的RAM用户或阿里云账号主动为该服务角色授权)。
RAM用户有RAM读写权限
管理员操作步骤
无需操作
开发人员操作步骤
直接在工作流授权面板中按页面提示流程进行服务角色创建(或选择已有服务角色)并进行授权即可。