本文为您介绍如何批量查询RAM用户相关信息。
背景信息
已开通逻辑编排服务并用阿里云账号创建过RAM用户
。
操作步骤
登录阿里云控制台并进入 逻辑编排控制台。
打开左侧导航 我的工作流 进入实例列表页,单击
创建工作流
。填写 工作流名称 和 资源组等信息,单击
确定
完成工作流创建。选择默认的 空白设计,单击
确定
进入工作流编辑界面。在图形化设计界面下 选择触发器 节点中,从当前选项卡为
全部
连接器列表中单击 自定义请求。从当前触发器列表中,单击 当收到 HTTP 请求时,将配置里的 Method 选项设置为 GET。
单击
+新步骤
出现 选择操作 节点,从当前选项卡为全部
连接器列表中,单击 变量,进入操作列表选项。从当前的操作列表中单击 初始化变量,在配置表单中填写 变量名:
newVar
,选择 变量类型:数组
,填写 值:[]
,完成变量操作配置。单击工作流底部的
+新步骤
,出现 选择操作 节点。单击
阿里云
选项卡,搜索 访问控制,单击连接器列表中的 访问控制 进入操作列表选项。搜索 listusers,从当前操作列表中单击 ListUsers。
单击当前操作节点的
授权
,弹出 角色授权 表单,按以下示例填写后,单击确定
完成授权配置(如果之前已经有合适角色,可以忽略该步骤)。角色类型:
创建新角色
角色名称:
logic-composer-accessing-RAM-role
角色描述:
运行logic-composer-accessing-RAM-role需要的权限
新增授权策略:
AliyunRAMReadOnlyAccess
单击工作流最底部
+新步骤
出现 选择操作 节点,选择连接器列表中的 控制流,进入操作列表选项,单击 ForEach 进入配置表单。单击配置项中 需循环遍历的值 的输入框,从右侧的浮窗中 访问控制_ListUsers 项下,单击输出变量 Users,完成循环操作配置。
单击 循环 配置节点中的
+新步骤
,在 选择操作 页面搜索 访问控制,单击当前列表中出现的 访问控制 进入操作列表选项后,搜索 policies,从当前操作列表中单击 ListPoliciesForUser。单击表单内 UserName 字段的输出框,从右侧的浮窗中 表达式选项卡下,在输入框内输入
items('循环')['UserName']
,再单击输入框后的确定按钮(如果当前视窗较窄无法看到确认按钮,请向右滚动浏览器窗口),完成当前操作配置。单击 循环 配置节点中的
+新步骤
,在 选择操作 页面搜索 访问控制,单击当前列表中出现的 访问控制 进入操作列表选项后,搜索 accesskeys,从当前操作列表中单击 ListAccessKeys,进入配置项。单击表单内 UserName 字段的输出框,从右侧的浮窗中 表达式选项卡下,在输入框内输入
items('循环')['UserName']
,再单击输入框后的确定按钮(如果当前视窗较窄无法看到确认按钮,请向右滚动浏览器窗口),完成当前操作配置。单击 循环 配置框内的
+新步骤
出现 选择操作 节点,单击当前连接器列表中的 变量,进入操作列表选项。从当前的操作列表中单击 追加值至数组变量,在 变量名 的下拉列表中选择
newVar
,在 值 的输入框中填入以下示例代码,完成变量操作配置。{ "userName": "@{items('循环')['UserName']}", "accessKeys": "@{body('访问控制_ListAccessKeys')['AccessKeys']['AccessKey']}", "policies": "@{body('访问控制_ListPoliciesForUser')['Policies']['Policy']}" }
执行结果
单击工作流最底部的
+新步骤
出现 选择操作 节点,从当前连接器列表中单击 自定义请求,再从当前操作列表中单击 响应 进入操作配置。在配置表单中的 Header 键值项分别填入
Content-Type
和application/json
,单击 Body 输入框。从右侧的浮窗中 变量 项下单击输出变量 newVar,完成配置并 保存 工作流。单击 运行 ,进入运行结果界面。待所有节点运行完成后,单击 响应 节点展开查看输出的 Body 项。
浏览器访问校验操作
在 工作流 > 图形化设计 模式下,单击展开触发器节点 当收到 HTTP 请求时,复制 HTTP Endpoint 项内容。
打开浏览器新页面,将已复制的内容粘贴到地址栏,并访问该地址。
查看响应输出的内容是否符合预期。
如果当前账号下RAM用户数、权限等数量较多,可能会出现响应超时情况,但不会中断工作流执行,请到工作流运行日志中查看具体运行日志。相应限制请查看HTTP 限制。