NATSpermission.check鉴权裁决

业务服务携带用户与权限标识回源校验——全生态统一的鉴权点。

Request Payload

消息格式:JSON

NameData TypeRequiredDescription
userIdstringYes用户 ID
permissionstringYes权限标识,如 org:manage
orgIdstringNo组织范围权限时所属组织 ID(可选)
type RequestBody = {
  /** 用户 ID */
  userId: string
  /** 权限标识,如 org:manage */
  permission: string
  /** 组织范围权限时所属组织 ID(可选) */
  orgId?: string
}
{
  "userId": "01JD8SEGQ0P9N2XK4L7VDH3T6C",
  "permission": "org:manage",
  "orgId": "01JD8SRP1N4T8W6XQ5V9XDL2Y7K"
}

Response Payload

回复使用统一信封 {id, code, messages, result},其 result:

NameData TypeRequiredDescription
allowedbooleanYes是否放行
type ResponseBody = {
  /** 是否放行 */
  allowed: boolean
}
{
  "allowed": true
}

Response Code

回复使用统一信封 {id, code, messages, result},其 code 字段:

code Meaning Notes
0 成功 鉴权裁决

Examples

{
  "userId": "01JD8SEGQ0P9N2XK4L7VDH3T6C",
  "permission": "org:manage",
  "orgId": "01JD8SRP1N4T8W6XQ5V9XDL2Y7K"
}
{
  "id": "01JD8SWGUF4H1IE",
  "code": 0,
  "messages": [],
  "result": { "allowed": true }
}

Remarks

裁决 = 角色持有 ⊨ 权限标识(含 admin 范围角色与组织范围角色的并集);无命中即 allowed: false,不区分角色不存在与权限不足。