校验应用权限策略

检查指定角色的应用权限策略是否可保存,不会修改现有策略。校验通过只说明本次提交的策略满足当前规则。

POST https://moi.matrixorigin.cn/newmoi/workspaces/{workspace_id}/iam/roles/{role_id}/application-policy:validate

调用前准备

选择角色,确认该角色允许修改策略。再查看权限 Schema,选择当前支持的操作、资源类型和授权范围;最后查看角色权限视图,以当前策略状态为准准备待校验的变更。

准备具有目标工作区相应权限的个人访问令牌目标工作区 ID

请求参数

curl -X POST "https://moi.matrixorigin.cn/newmoi/workspaces/$WORKSPACE_ID/iam/roles/$ROLE_ID/application-policy:validate" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d "{
    \"schema_version\": \"$SCHEMA_VERSION\",
    \"expected_policy_version\": 1,
    \"expected_role_lifecycle_version\": 1,
    \"request_id\": \"req-001\",
    \"statements\": [
      {
        \"action_id\": \"workflow.read\",
        \"resource_type\": \"workflow\",
        \"scope_mode\": \"all\"
      }
    ]
  }"

路径参数

参数

类型

是否必填

说明

workspace_id

string

目标工作区 ID。

role_id

string

要校验策略的角色 ID。

请求体

参数

类型

是否必填

说明

schema_version

string

本次策略使用的权限 Schema 版本。

expected_policy_version

integer

并发检查使用的策略版本;值不能小于 0。

expected_role_lifecycle_version

integer

当前角色生命周期版本,必须大于 0。

request_id

string

调用方生成的请求 ID。

statements

object(对象数组)

要校验的策略语句;空数组表示空策略。

statements[].statement_id

string

语句 ID;省略时由服务生成。

statements[].action_id

string

权限 Schema 中的操作 ID。

statements[].resource_type

string

与操作匹配的资源类型。

statements[].scope_mode

string

资源范围,只能为 all 或 resources。

statements[].resource_id

string

scope_mode 为 resources 时使用的资源 ID。

statements[].condition_hash

string

条件表达式的哈希值。

statements[].target_action_id

string

授予权限时的目标操作 ID。

statements[].grant_scope_mode

string

可转授范围,只能为 all 或 resources。

statements[].grant_delegatable

boolean

是否允许继续转授。

成功响应

成功时返回策略是否合法、规范化策略的哈希值和语句数量;不会写入策略。

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "valid": true,
    "policy_hash": "sha256:example",
    "statement_count": 1,
    "request_id": "req-001",
    "trace_id": "trace-001"
  }
}

字段

类型

说明

code

string

成功时为 OK。

msg

string

成功时为 OK。

data.valid

boolean

策略是否通过校验。

data.policy_hash

string

规范化策略的哈希值。

data.statement_count

integer

策略语句数量。

data.request_id

string

请求关联 ID。

data.trace_id

string

链路追踪 ID。

错误响应

{
  "code": "ErrParamInvalid",
  "msg": "请求参数无效",
  "data": null
}

字段

类型

说明

code

string

错误代码。

msg

string

错误信息。

data

null

最后更新于