阿里云为每一个账号分配一个唯一的由16位数字组成的标识符,例如0123456789012345,我们称之为账号ID,也叫Account ID或UID。账号ID是您在阿里云上所有资产归属、计费主体和权限划分的核心依据,在进行自动化运维、权限管理和跨账号协作时至关重要。本文将指导您如何通过不同方式查找账号ID。
重要 账号ID用于明确身份,虽然它不像密码或访问密钥(AccessKey)那样是机密信息,但仍应谨慎使用和分享。
账号ID的使用场景在以下场景中,您需要使用账号ID来精确地标识身份和资源归属:
费用与账单分析:在下载的账单明细中,ResourcePurchaseAccountId、ResourceOwnerAccountId等字段用于标识资源购买或资源归属的账号ID。
调用云产品API:部分云产品的OpenAPI在进行跨账号资源操作时,需要将账号ID作为OwnerId或OwnerAccount等参数进行传递。
跨账号资源访问:在共享VPC、配置VPC对等连接等场景时,账号ID是指定授权对象的唯一凭证。
RAM跨账号授权:在为其他阿里云账号授权时,需要在权限策略的Principal字段中指定对方的账号ID。
构建资源ARN (Aliyun Resource Name):ARN是阿里云为每个资源定义的全局资源名称,其中包含账号ID,用于在所有地域中精确定位资源,例如
ECS实例ARN:acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}
OSS存储桶ARN:acs:oss:
查看账号ID您可以根据使用场景,选择通过控制台或OpenAPI等方式获取账号ID,请注意,不同的登录身份下,控制台或OpenAPI展示的字段有所不同,下面针对阿里云主账号、RAM用户,和RAM角色来分别说明。
控制台阿里云账号登录用阿里云账号登录控制台,将鼠标悬停右上角的头像上,您将直接看到您的账号ID。
RAM用户登录RAM用户登录控制台,将鼠标悬停右上角的头像上,您将直接看到您的主账号ID。
扮演RAM角色以RAM角色扮演的方式登录控制台,将鼠标悬停右上角的头像上,您将直接看到您的主账号ID。
OpenAPI调用GetCallerIdentity接口动态获取当前调用者身份对应的账号ID,会返回一个包含您身份信息的JSON对象,其中AccountId字段即为您需要的主账号ID。不同身份调用时,返回的字段有所不同。下表解释了关键字段的含义:
API核心返回字段
阿里云账号
RAM用户
RAM角色
IdentityType
Account
RAMUser
AssumedRoleUser
AccountId
您的账号ID
所属主账号的ID
所属主账号的ID
UserId / RoleId
与AccountId相同
RAM用户的ID
RAM角色的ID
PrincipalId
与AccountId相同
与UserId相同
RoleId:SessionName
对比账号ID与登录名这是两个经常被混淆的概念,请务必区分:
对比项
账号ID (Account ID)
登录名 (Login Name)
本质
身份标识符
登录凭证
形态
唯一的、系统生成的16位数字串
用于登录的邮箱或您自定义的别名
可变性
不可更改
可以修改,修改登录名不影响账号ID
用途
机器识别、权限策略、API调用、账单归属
仅用于人工登录控制台
说明 在编写自动化脚本、代码或权限策略时,必须使用固定不变的账号ID来标识身份,不应使用可能变化的登录名。