SuperAPI AI 工具集

multi-account-query

部署与运维

查看项目

更新于 10-15 19:54

技能介绍

用途:在阿里云资源目录(Resource Directory)组织内跨成员账号查询云资源。当用户以显示名(别名)而非 UID 指代账号时,先解析别名,再代入目标账号执行实际查询。

主要能力:解析别名到 UID;通过 assume-role 跳转在目标账号执行资源查询;支持指定自定义角色名或角色 ARN。

必要用法:前置条件是当前凭证属于 RD 管理账号(或委派管理员)并具备 resourcedirectory:ListAccounts 权限,且目标成员账号存在跨账号代入角色(默认 ResourceDirectoryAccountAccessRole)。先用 aliyun resourcedirectorymaster list-accounts --page-size 100 --page-number 1 列出成员账号,匹配 DisplayName 并取 AccountId;再调用 AlibabaCloud___CallCLI 执行实际查询,并传入 x_assume_account_id(目标账号 UID)。若已显式给出 UID 可跳过解析步骤。可选参数:x_assume_role_name 覆盖默认角色名,x_assume_role_arn 指定完整 ARN(优先级最高)。

适用场景:单次跨账号资源查询(即跨账号路由原语)。若是键轮换、漂移/成本/RAM 审计、账单聚合、组织级合规扫描等完整多账号方案模式,应先调用 alibabacloud-find-skills,改用打包的多账号运维技能。

限制与注意:ListAccounts 每页最多 100 条,超过需翻页,按 TotalCount 判断是否还有下一页;未找到匹配时向用户报告并请求澄清,不要猜测账号 ID;不要在会话间缓存账号列表;多账号迭代时输出中应包含账号显示名与 ID;遵循最小权限,只查询用户请求的资源。错误处理:ListAccounts 报 AccessDenied 说明凭证缺 RD 读取权限;AssumeRole 失败可能是目标账号缺少角色或信任策略不允许;账号未找到时列出可用账号名辅助选择。