Skip to content

行权限

行权限模式 RowPermissionMode

字段值 说明
1 需要满足全部的条件才可以看到对应的信息
2 只需要满足任意一个条件就可以看到对应的信息

控制方式 effect

字段值 说明
allow 符合该条件下的数据
deny 不符合该条件下的数据

控制类型 operator

字段值 说明
contain 包含,模糊匹配,含有控制的值均受控制
equal 等于,精准匹配,与控制的值完全一致
startswith 字段以控制的值开头
endswith 字段以控制的值结尾
isNull 字段为空,此时不需要传入控制的值

查看行权限开关

请求方式

Request Method: GET
Request URL:    /openapi/v1/workspaces/{workspaceId}/members/{member_uid}/enable-row-permission/
Request Header:
{
 "Authorization": "连接密钥"
}

返回结果

{
  "errcode": 200,
  "errmsg": "success",
  "data": {
    "enableRowPermission": true
  }
}

开启/关闭行权限

请求方式

Request Method: PUT
Request URL:    /openapi/v1/workspaces/{workspaceId}/members/{member_uid}/enable-row-permission/
Request Header:
{
 "Authorization": "连接密钥"
}

请求参数

{
  "enableRowPermission": true
}

参数说明

参数 类型 说明
enableRowPermission bool 行权限是否开启,当值为 true 时行权限开启,值为 false 时行权限关闭

返回结果

{
  "errcode": 200,
  "errmsg": "success",
  "data": {
    "enableRowPermission": true
  }
}

获取受控字段

请求方式

Request Method: GET
Request URL:    /openapi/v1/workspaces/{workspaceId}/row-permission-resource/
Request Header:
{
 "Authorization": "连接密钥"
}

返回结果

{
  "errcode": 200,
  "errmsg": "success",
  "data": [
    {
      "label": "d1",
      "value": "品牌"
    }
  ]
}

参数说明

参数 类型 说明
data.label string 维度名称
data.value string 维度属性

获取行权限

请求方式

Request Method: GET
Request URL:    /openapi/v1/workspaces/{workspaceId}/members/{member_uid}/row-permission/
Request Header:
{
 "Authorization": "连接密钥"
}

返回结果

{
  "errcode": 200,
  "errmsg": "success",
  "data": {
    "rowPermission": [
      {
        "effect": "allow",
        "resource": "d1",
        "resourceLabel": "品牌",
        "values": ["耐克", "阿迪达斯"],
        "modelUids": ["model-a", "model-b"],
        "operator": "equal"
      }
    ],
    "rowPermissionMode": 1
  }
}

参数说明

参数 类型 说明
rowPermissionMode int 详见行权限模式 RowPermissionMode
rowPermission array 行权限数组
effect string 详见控制方式 effect
resource string 维度属性
resourceLabel string 维度名称
values array 设置控制的值,当 operator 为 isNull 时,传入空数组
operator string 详见控制的类型 operator
modelUids array 可选;规则适用的模型 UID 列表,缺省时适用于全部模型

修改行权限

可先通过获取受控字段接口或获取工作区维度接口获取维度信息

请求方式

Request Method: PUT
Request URL:    /openapi/v1/workspaces/{workspaceId}/members/{member_uid}/row-permission/
Request Header:
{
 "Authorization": "连接密钥"
}

请求参数

{
  "rowPermissionMode": 1,
  "rowPermission": [
    {
      "effect": "allow",
      "resource": "d2",
      "values": ["三里屯"],
      "modelUids": ["model-a", "model-b"],
      "operator": "equal"
    }
  ]
}

参数说明

参数 类型 是否必填 说明
rowPermissionMode int 是 详见行权限模式 RowPermissionMode
rowPermission array 是 行权限数组
effect string 是 受控字段匹配之后的处理效果,允许为"allow",禁止为"deny"
resource string 是 维度属性
values array 是 设置允许访问的内容
operator string 是 详见控制的类型 operator
modelUids array 否 适用模型 UID 列表;必须为非空数组,缺省时适用于全部模型

modelUids 中的每个模型都必须存在且包含 resource 指定的维度。为兼容历史数据,接口仍可读取单值 modelUid,新建或修改规则请使用 modelUids。

返回结果

{
  "errcode": 200,
  "errmsg": "success",
  "data": {
    "rowPermissionMode": 1,
    "rowPermission": [
      {
        "effect": "allow",
        "resource": "d2",
        "resourceLabel": "门店",
        "values": ["三里屯"],
        "modelUids": ["model-a", "model-b"],
        "operator": "equal"
      }
    ]
  }
}

参数说明

参数 类型 说明
rowPermissionMode int 详见行权限模式 RowPermissionMode
rowPermission array 行权限数组
effect string 受控字段匹配之后的处理效果
resource string 维度属性
resourceLabel string 维度名称
values array 设置允许访问的内容
operator string 详见控制的类型 operator
modelUids array 可选;适用模型 UID 列表,缺省表示全部模型

批量修改成员行权限

请求方式

Request Method: PUT
Request URL:    /openapi/v1/workspaces/{workspaceId}/members/update-row-permissions/
Request Header:
{
 "Authorization": "连接密钥"
}

请求参数

{
  "memberRowPermissions": [
    {
      "memberUid": "成员uid",
      "rowPermissionMode": 1,
      "rowPermission": [
        {
          "effect": "allow",
          "resource": "d1",
          "values": ["耐克", "阿迪达斯"],
          "operator": "equal"
        }
      ]
    }
  ]
}