ASTRO轻应用 ASTROZERO-权限管理

时间:2024-04-25 16:08:57

权限管理

在AstroZero中,可以通过设置权限配置Profile,来配置用户权限。系统预置了如下几种Profile,禁止删除:

  • System Administrator Profile:系统管理员,拥有AstroZero全部权限。
  • Developer Profile:开发者权限,一般给用户使用,拥有此权限的用户可以在AstroZero进行开发,例如新增一个对象、为对象增加一个字段、新增一个流程等。
  • Portal User Profile:业务用户的权限,一般给业务用户使用,拥有此权限的业务用户可以通过服务编排鉴权登录AstroZero。
  • Anonymous User Profile:游客用户的访问权限,请根据自身业务需求,给Profile分配适当的权限。
  • Standard User Profile:运行态权限,开通AstroZero服务时自带的权限,拥有这个权限可以运行系统中的流程、对系统已有对象进行记录的增删改查操作,但没有开发权限,如新增一个对象或新增一个流程等。
  • NoCode Developer Profile:零代码应用开发权限,只有运行环境才会预置该权限。
  • NoCode Manager Profile:零代码应用数据管理权限,只有运行环境才会预置该权限。

一个Profile可以分配给很多用户,但是每个用户有且只有一个Profile。Profile能够控制权限列表如下,具体Profile权限配置请参考管理权限配置

  • 基本权限控制

    基本权限是指操作AstroZero内置的资源时,在接口上设置权限校验,当前Profile需要勾选上对应的权限项才能通过访问,否则会报权限错误,对应状态码“403”。例如,创建对象需要开发应用权限,创建用户需要管理用户权限等。

  • App与Menu展示控制

    控制用户在打开应用时,默认展示的应用及展示应用下的哪个菜单项。仅在前端做页面控制。

  • 对象、字段权限控制

    用户在访问具体对象字段数据记录时的权限控制。其中,对象权限包括:

    • 读取: 读取对象记录的权限,没有此权限访问对象数据时会报无权限。
    • 创建: 创建对象记录的权限。
    • 编辑:修改对象记录数据的权限。
    • 删除:删除对象记录的权限。
    • 查看全部: 能够查看该对象的所有记录,不管该记录是否属于操作者(OWNER)。
    • 修改全部:能够增删改对象的所有记录,不管该记录是否属于操作者(OWNER)。
    • API读: 通过HTTP接口发起读取操作,不影响在服务编排、脚本等发起的操作。
    • API写:通过HTTP接口发起写操作,不影响在服务编排、脚本等发起的操作。

    某些特殊的对象不允许直接访问,如User对象,所有Profile只开放读取功能,增删改都要通过接口来操作。字段权限如下:

    • 读: 读取某个字段值的权限
    • 写:修改某个字段值的权限

    某些对象的某些字段不允许直接读取与修改,如User对象的密码字段等。

  • 对象标准页面的展示控制

    展示对象的默认布局,包括列表页,详情页,创建与编辑布局。 仅供页面展示使用。

  • 接口访问控制(服务编排、脚本、BPM)

    在运行服务编排、脚本或BPM资源时需要检查是否拥有该资源的运行权限,如果没有则报错。例如,需要运行脚本“view_product” ,则需要勾选上“view_product” 的运行权限才能运行。

  • 连接器访问控制

    目前只向对外提供HTTP接口的连接器进行权限控制,包括S3、OBS、MINIO、ObjectStorageProxy类型连接器。

    在运行这些连接器的接口时,需要检查其运行权限。

  • 事件访问控制

    目前只向对外提供HTTP接口的事件进行权限控制,例如发送某种类型事件的权限。

  • 业务权限访问控制

    是否拥有指定的业务权限。

support.huaweicloud.com/api-astrozero/astrozero_api_0080.html