SetDataLevelPermissionRuleConfig - 设置单条数据集行列权限配置信息

更新时间:
复制为 MD 格式

设置单条数据集行列权限配置信息(新增和更新)。

接口说明

说明

:当前接口仅支持 Quick BI 新版行列权限模型。若您仍在使用老的行列权限,请先一键迁移至新的行列权限模型后再调用该接口。一键迁移至新的行列权限模型的操作步骤:在组织管理-->安全配置-->行列权限升级新版中,单击一键升级,升级至新版行级权限。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

quickbi-public:SetDataLevelPermissionRuleConfig

create

*全部资源

*

请求参数

名称

类型

必填

描述

示例值

RuleModel

string

{

"rule": "a5bb24da-****-a891683e14da",   // 行列权限规则的 ID,当传入时为修改行级权限规则,否则新增
"cubeId": "7c7223ae-****-3c744528014b",  // 数据集 ID
"ruleName": "测试行级权限", // 行级权限规则的名称
"ruleLevelType": "ROW_LEVEL", // 行级权限类型:ROW_LEVEL:行级权限,COLUMN_LEVEL:列级权限
"ruleTargetScope": "ALL", // 行级权限规则针对的人群:1:所有人,2:指定人
"hitTakeEffect": 1, //命中后规则生效还是不生效(针对列级权限):1:生效 (默认生效),0:不生效
"ruleUsersModel": {
    "userGroups": [
        "9bd2c6440ac542****589f16bf12ca8178dd", // 用户组人群的用户组 ID
        "0d5fb19b-****-1248fc27ca51",
        "3d2c23d4-****-f6390f325c2d"
    ],
    "users": [
        "43342****3784358", // 用户人群的 UserID
        "Huang****2e3fa822"
    ]
},
"ruleContentModel": {
    "ruleContentType": "ROW_FIELD", // 行列权限的规则类型
    "ruleContentJson": "{\"conditionNode\":{\"caption\":\"周期\",\"isMeasure\":false,\"pathId\":\"7d3b***bc6\",\"relationOperator\":\"not-null\",\"name\":\"7d3b***bc6\",\"value\":{\"value\":[\"\"],\"valueType\":\"ENUM\"}}}", // 规则的 JSON 字符串
    "ruleOriginConfigJson": "{\"operator\":\"and\",\"operands\":[{\"labelName\":\"周期\",\"isValid\":true,\"uniqueId\":\"5\",\"fieldId\":\"7d3b***bc6\",\"error\":false,\"fieldType\":\"string\",\"defaultValue\":{\"selectType\":\"condition\",\"value\":{\"conditionOp\":\"not-null\",\"conditionValue\":\"\"},\"valueType\":\"ENUM\"}}],\"isRelation\":true}" // 前端模板要是用的 JSON 结果(行级权限专用)
},
"rowLevelEffectiveMode": ""SINGLE_ROW" //多行标签计算方式

}

{ "cubeId": "aa574353-41cf-****-8d0d-455176c101fa", "hitTakeEffect": 1, "isOpen": 1, "permissionMode": "COMPLEX", "ruleContentModel": { "ruleContent": { "pathId": [ "264b7a970b" ] }, "ruleContentJson": "{\"pathId\":[\"264b7a970b\"]}", "ruleContentType": "COLUMN_FORBID" }, "ruleId": "3971fa8e-f7e0-****-b6e3-5b3167dd7247", "ruleLevelType": "COLUMN_LEVEL", "ruleName": "rulename", "ruleTargetScope": "ALL" }

返回参数

名称

类型

描述

示例值

object

RequestId

string

请求 ID。

D8749D65-E80A-433C-AF1B-CE9C180FF3B4

Result

string

保存成功的行列权限信息。

{ "cubeId": "aa574353-41cf-****-8d0d-455176c101fa", "hitTakeEffect": 1, "isOpen": 1, "permissionMode": "COMPLEX", "ruleContentModel": { "ruleContent": { "pathId": [ "264b7a970b" ] }, "ruleContentJson": "{\"pathId\":[\"264b7a970b\"]}", "ruleContentType": "COLUMN_FORBID" }, "ruleId": "3971fa8e-f7e0-****-b6e3-5b3167dd7247", "ruleLevelType": "COLUMN_LEVEL", "ruleName": "name", "ruleTargetScope": "ALL" }

Success

boolean

是否请求成功。取值范围:

  • true:请求成功

  • false:请求失败

true

示例

正常返回示例

JSON格式

{
  "RequestId": "D8749D65-E80A-433C-AF1B-CE9C180FF3B4",
  "Result": "{\n    \"cubeId\": \"aa574353-41cf-****-8d0d-455176c101fa\",\n    \"hitTakeEffect\": 1,\n    \"isOpen\": 1,\n    \"permissionMode\": \"COMPLEX\",\n    \"ruleContentModel\": {\n        \"ruleContent\": {\n            \"pathId\": [\n                \"264b7a970b\"\n            ]\n        },\n        \"ruleContentJson\": \"{\\\"pathId\\\":[\\\"264b7a970b\\\"]}\",\n        \"ruleContentType\": \"COLUMN_FORBID\"\n    },\n    \"ruleId\": \"3971fa8e-f7e0-****-b6e3-5b3167dd7247\",\n    \"ruleLevelType\": \"COLUMN_LEVEL\",\n    \"ruleName\": \"name\",\n    \"ruleTargetScope\": \"ALL\"\n}",
  "Success": true
}

错误码

HTTP status code

错误码

错误信息

描述

400 Cube.Not.Exist The Cube does not exist. 数据集不存在。
400 CubePermission.Columnlevel.VersionError You are not allowed to use the new dataLevelPermission API. 没有权限使用新版行列权限。
400 CubePermission.ColumnlevelField.Repeat There are duplicate field configurations. 有重复的字段配置。
400 RowLevelPermission.SwitchClose.Error The row level permission switch must be on. 对应的行级权限开关必须打开。
400 RowLevelPermission.Rule.NotExsist The row level permission rule does not exist: %s. 行级权限规则不存在:%s。
400 RowLevelPermission.Rule.NotBelongToCube The row level permission rule does not belong to the current cube. 行级权限规则不属于当前数据集。
400 Cube.NotBelongTo.CurrentOrganization The cube does not belong to the current organization %s. 数据集模型不属于当前组织。
400 PathId.NotExist.Error The cube field does not exist ,path id: %s. 数据集字段不存在,字段id:%s。
400 Cannot.Support.MultipleDatasource The current user tag table fields come from multiple tag tables, and separate calculations for multiple rows are not allowed. 当前用户标签表字段来自于多个标签表,不允许使用多行分别计算。

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情