# 了解AstroPro中角色
AstroPro中的角色包括工作空间级角色和项目级角色两种，您可以通过为不同的用户赋予不同的角色，来控制用户对AstroPro的操作权限。一个用户在AstroPro中只能拥有一种角色。
#### 工作空间管理员
账号登录AstroPro后会自动开通工作空间，每个账号只能开通一个工作空间，开通工作空间的账号默认为此空间的工作空间管理员。工作空间管理员对本工作空间下的所有资源具有增删改查权限，可以为本账号下用户分配项目下的角色。每个工作空间至少拥有一个工作空间管理员。
账号是指当您首次使用华为云时注册的账号，该账号是您的华为云资源归属、资源使用计费的主体，对其所拥有的资源及云服务具有完全的访问权限，可以重置用户密码、分配用户权限等。账号统一接收所有IAM用户进行资源操作时产生的费用账单。在一个账号下，您可以创建多个用户，账号和用户的关系如[图1]所示。如果您没有华为云账号，可参考[注册华为云账号](https://support.huaweicloud.com/usermanual-account/account_id_001.html)中操作注册。如何在账号中添加用户，请参见[创建IAM用户](https://support.huaweicloud.com/usermanual-iam/iam_02_0001.html)。
账号下的用户，如果没有分配任何AstroPro中的角色，则只能查看工作空间下的所有资源，不具备其他权限。
例如，给"IAM用户1"赋予工作空间管理员权限，给"IAM用户2"赋予项目A中的项目管理员权限，则"IAM用户1"可以增删改查本工作空间下的所有资源，"IAM用户2"仅可对工作空间中的项目A执行增删改査等操作，而"IAM用户3"未赋予任何角色，则只能查看本工作空间下的资源。
图1华为云账号与IAM用户   
![](https://support.huaweicloud.com/usermanual-astropro/zh-cn_image_0000001752189129.png)
#### 项目级角色
除了工作空间级角色外，AstroPro还为每个项目预置了项目管理员、架构师和开发者三种类型的角色。
- 项目管理员
  - 可以增删改査项目下的所有资源。
  
  - 可以为项目下的所有角色分配用户（仅限于同账号下的用户，如[图1]中的IAM用户1、IAM用户2）。
   
- 架构师
  - 可以新建服务。
  
  - 可以删除自己创建的服务，不能删除其他人创建的服务。
  
  - 可以对项目下的所有服务进行编辑。
   
- 开发者
  - 可以查看项目下的所有资源。
  
  - 可以重新编译有权限项目下的服务并下载代码。
   
 
#### AstroPro角色说明
不同的角色，操作权限有所不同，AstroPro常用操作与角色之间的关系如[表1]所示，您可以按需申请您的角色权限。
如果您申请的新权限低于您当前的权限级别，系统将只保留一个角色权限，即新申请的权限会覆盖现有的权限。因此，在您决定更换权限之前，建议您仔细了解并比较您当前的权限设置与新申请权限之间的具体差异。
 表1AstroPro常用操作与角色之间的关系 
| 操作        | 工作空间管理员        | 项目管理员           | 架构师              | 开发者           | 其他（未授权）  |
|:---|:---|:---|:---|:---|:---|
| 新增项目       | √              | x             | x                   | x               | x       |
| 编辑项目       | √             | x               | x               | x             | x        |
| 删除项目     | √             | x              | x                  | x               | x          |
| 新增服务组      | √（工作空间中所有项目）    | √（工作空间中指定项目内）  | √（工作空间中指定项目内）      | x             | x       |
| 编辑服务组     | √（工作空间中所有项目）  | √（工作空间中指定项目内）  | √（工作空间中指定项目内）      | x            | x        |
| 删除服务组     | √（工作空间中所有项目） | √（工作空间中指定项目内）   | √（只允许删除自己创建的服务组）   | x               | x        |
| 新增服务       | √（工作空间中所有项目）    | √（工作空间中指定项目内）  | √（工作空间中指定项目内）      | x              | x        |
| 编辑服务       | √（工作空间中所有项目）    | √（工作空间中指定项目内） | √（工作空间中指定项目内）    | x               | x        |
| 新增服务版本   | √（工作空间中所有项目）   | √（工作空间中指定项目内）    | √（工作空间中指定项目内）     | x             | x         |
| 复制服务       | √（工作空间中所有项目）  | √（工作空间中指定项目内）   | √（工作空间中指定项目内）     | x               | x         |
| 删除服务      | √（工作空间中所有项目）  | √（工作空间中指定项目内）  | √（只允许删除自己创建的服务）   | x            | x          |
| 新增服务依赖    | √（工作空间中所有项目）     | √（工作空间中指定项目内） | √（工作空间中指定项目内）      | x               | x        |
| 删除服务依赖    | √（工作空间中所有项目） | √（工作空间中指定项目内）  | √（仅自己创建的服务依赖）     | x               | x       |
| 重新生成代码并下载 | √（工作空间中所有项目）  | √（工作空间中指定项目内）  | √（工作空间中指定项目内）     | √（工作空间中指定项目内） | x         |
| 查看服务详情    | √               | √              | √                 | √              | √         |
| 查看变更记录     | √              | √               | √                | √              | √         |
| 申请角色     | √             | √              | √                | √              | √         |
| 撤回申请      | √（仅撤回自己的申请）     | √（仅撤回自己的申请）     | √（仅撤回自己的申请）        | √（仅撤回自己的申请）     | √（仅撤回自己的申请） |
| 审批角色      | √（工作空间中所有项目）  | √（工作空间中指定项目内） | x                | x              | x         |
| 删除角色     | √（工作空间中所有项目）   | √（工作空间中指定项目内）  | x                 | x               | x        |
| 创建前台应用    | √               | √             | √                | √              | x        |
| 开发前台应用     | √               | √             | √                | √               | x       |
| 删除前台应用  | √             | √              | √                  | √               | x        |
| 下载前端业务代码  | √                | √              | √                | √                | √      |
| 查看前台应用    | √              | √               | √                 | √                | √         |
| 发布页面模板      | √                 | √               | √                 | √               | x         |
| 删除页面模板     | √               | √                | √                 | √                | x         |
| 新增架构模板     | √（工作空间级及所有项目）  | √（工作空间中指定项目）   | √（工作空间中指定项目）     | x              | x        |
| 修改架构模板   | √（工作空间级及所有项目）   | √（工作空间中指定项目）  | √（工作空间中指定项目）      | x                | x         |
| 删除架构模板    | √（工作空间级及所有项目） | √（工作空间中指定项目）   | √（只允许删除自己创建的模板）  | x             | x          |
| 查看架构模板    | √              | √               | √                 | √               | √       |
| 新增业务对象模板  | √（工作空间级及所有项目）  | √（工作空间中指定项目）    | √（工作空间中指定项目）    | x               | x        |
| 修改业务对象模板   | √（工作空间级及所有项目）  | √（工作空间中指定项目）   | √（工作空间中指定项目）       | x              | x       |
| 删除业务对象模板 | √（工作空间级及所有项目）   | √（工作空间中指定项目）  | √（只允许删除自己创建的模板）   | x              | x          |
| 查看业务对象模板  | √              | √              | √                | √              | √        |
| 新增业务模块    | √（工作空间级及所有项目）  | √（工作空间中指定项目）  | √（工作空间中指定项目）     | x               | x        |
| 修改业务模块      | √（工作空间级及所有项目）  | √（工作空间中指定项目）  | √（工作空间中指定项目）    | x             | x       |
| 删除业务模块    | √（工作空间级及所有项目）  | √（工作空间中指定项目）   | √（只允许删除自己创建的模块）    | x                | x         |
| 查看业务模块   | √              | √               | √                  | √              | √      |
| 新增自定义字段    | √（工作空间级及所有项目）     | √（工作空间中指定项目）   | √（工作空间中指定项目）        | x               | x        |
| 修改自定义字段   | √（工作空间级及所有项目）   | √（工作空间中指定项目）   | √（工作空间中指定项目）       | x               | x        |
| 删除自定义字段      | √（工作空间级及所有项目）  | √（工作空间中指定项目）   | √（只允许删除自己创建的自定义字段） | x               | x         |
| 查看自定义字段   | √               | √             | √                  | √               | √         |
| 新增流控策略     | √（工作空间级及所有项目） | √（工作空间中指定项目）   | √（工作空间中指定项目）    | x               | x         |
| 修改流控策略   | √（工作空间级及所有项目）    | √（工作空间中指定项目）  | √（工作空间中指定项目）      | x               | x        |
| 删除流控策略    | √（工作空间级及所有项目） | √（工作空间中指定项目）   | √（只允许删除自己创建的流控策略）  | x              | x      |
| 查看流控策略     | √               | √              | √                | √              | √        |
| 新增应用       | √（工作空间中所有项目）   | √（工作空间中指定项目内）  | √（工作空间中指定项目内）     | x               | x          |
| 修改应用       | √（工作空间中所有项目）     | √（工作空间中指定项目内）  | √（工作空间中指定项目内）      | x              | x       |
| 同步应用       | √（工作空间中所有项目）     | √（工作空间中指定项目内）  | √（工作空间中指定项目内）        | x              | x          |
| 删除应用       | √（工作空间中所有项目）      | √（工作空间中指定项目内）   | √（只允许删除自己创建的应用）   | x              | x          |
| 查看应用      | √                 | √             | √                  | √                | √         |
| 新增子域      | √（工作空间中所有项目）     | √（工作空间中指定项目内）   | √（工作空间中指定项目内）      | x               | x        |
| 修改子域      | √（工作空间中所有项目）   | √（工作空间中指定项目内）   | √（工作空间中指定项目内）     | x               | x        |
| 删除子域         | √（工作空间中所有项目）     | √（工作空间中指定项目内）   | √（只允许删除自己创建的子域）  | x               | x        |
| 查看子域     | √              | √               | √                 | √             | √       |
| 新增应用服务      | √（工作空间中所有项目）   | √（工作空间中指定项目内）    | √（工作空间中指定项目内）      | x             | x         |
| 修改应用服务     | √（工作空间中所有项目）    | √（工作空间中指定项目内）  | √（工作空间中指定项目内）      | x                | x         |
| 删除应用服务   | √（工作空间中所有项目）      | √（工作空间中指定项目内）   | √（只允许删除自己创建的子域）    | x               | x        |
| 关联服务      | √（工作空间中所有项目）     | √（工作空间中指定项目内）   | √（工作空间中指定项目内）      | x               | x        |
| 查看应用服务     | √              | √             | √                 | √                | √       |
| 编辑服务SLA | √（工作空间中所有项目）    | √（工作空间中指定项目内） | √（工作空间中指定项目内）     | x              | x        |
| 查看服务SLA | √             | √              | √                | √              | √        |
| 导入物料包    | √               | √                 | √                 | √              | x        |
| 更新物料包        | √               | √                | √                 | √                | x          |
| 下载物料包       | √               | √              | √                 | √               | x       |
| 查看物料包      | √               | √              | √                 | √              | √         |
   
