文档首页/ 湖仓构建 LakeFormation/ API参考/ API/ LakeCat类API/ 授权管理/ 批量授权 - BatchAuthorizeInterface
更新时间:2026-08-31 GMT+08:00
分享

批量授权 - BatchAuthorizeInterface

功能介绍

批量授权接口。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项

URI

POST /v1/{project_id}/instances/{instance_id}/policies/grant

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目编号。获取方法,请参见获取项目ID

约束限制:

长度为1~64个字符

取值范围:

长度为1~64个字符

默认取值:

不涉及

instance_id

String

参数解释:

LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。

约束限制:

最小长度为1

取值范围:

最小长度为1

默认取值:

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

Array of strings

参数解释:

租户token。

约束限制:

数组元素个数为1~100

取值范围:

数组元素个数为1~100

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

principal_list

Array of Principal objects

参数解释:

主体信息

约束限制:

数组元素个数为0~20

取值范围:

数组元素个数为0~20

默认取值:

不涉及

resource

ResourceInfo object

参数解释:

资源信息

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

effect

Boolean

参数解释:

拒绝/允许

约束限制:

不涉及

取值范围:

不涉及

默认取值:

true

permissions

Array of strings

参数解释:

权限列表:ALL、CREATE、ALTER、DROP、DESCRIBE、EXEC、CREATE_DATABASE、LIST_DATABASE、CREATE_TABLE、LIST_TABLE、CREATE_FUNC、LIST_FUNC、REGISTER_MODEL、LIST_MODEL、CREATE_MODEL、CREATE_DATASET、LIST_DATASET、READ_DATASET、WRITE_DATASET、INSERT、UPDATE、DELETE、SELECT、READ、WRITE、OPERATE、INTROSPECTION、SOURCES、DICT GET、TRUNCATE、 OPTIMIZE、CREATE TEMPORARY TABLE、CREATE DICTIONARY、CREATE VIEW、SHOW DATABASES、SHOW TABLES、SHOW DICTIONARIES、SHOW COLUMNS、DROP DATABASE、DROP VIEW、DROP DICTIONARY、DROP TABLE、ALTER TABLE、ALTER UPDATE、ALTER DELETE、ALTER COLUMN、ALTER ADD COLUMN、ALTER DROP COLUMN、ALTER MODIFY COLUMN、ALTER COMMENT COLUMN、ALTER CLEAR COLUMN、 ALTER RENAME COLUMN、ALTER INDEX、ALTER ORDER BY、ALTER ADD INDEX、ALTER DROP INDEX、ALTER MATERIALIZE INDEX、ALTER CLEAR INDEX、ALTER CONSTRAINT、ALTER ADD CONSTRAINT、ALTER DROP CONSTRAINT、ALTER TTL、ALTER MATERIALIZE TTL、ALTER SETTINGS、ALTER MOVE PARTITION、ALTER FETCH PARTITION、ALTER FREEZE PARTITION、ALTER VIEW、ALTER VIEW REFRESH、ALTER VIEW MODIFY QUERY

约束限制:

数组元素个数为0~50

取值范围:

不涉及

默认取值:

不涉及

grant_able_permissions

Array of strings

参数解释:

可传递的权限列表:ALL、CREATE、ALTER、DROP、DESCRIBE、EXEC、CREATE_DATABASE、LIST_DATABASE、CREATE_TABLE、LIST_TABLE、CREATE_FUNC、LIST_FUNC、REGISTER_MODEL、LIST_MODEL、CREATE_MODEL、CREATE_DATASET、LIST_DATASET、READ_DATASET、WRITE_DATASET、INSERT,UPDATE、DELETE、SELECT、READ、WRITE、OPERATE、INTROSPECTION、SOURCES、DICT GET、 TRUNCATE、OPTIMIZE、CREATE TEMPORARY TABLE、CREATE DICTIONARY、CREATE VIEW、SHOW DATABASES、SHOW TABLES、SHOW DICTIONARIES、SHOW COLUMNS、DROP DATABASE、DROP VIEW、DROP DICTIONARY、DROP TABLE、ALTER TABLE、ALTER UPDATE、ALTER DELETE、ALTER COLUMN、ALTER ADD COLUMN、ALTER DROP COLUMN、ALTER MODIFY COLUMN、ALTER COMMENT COLUMN、ALTER CLEAR COLUMN、 ALTER RENAME COLUMN、ALTER INDEX、ALTER ORDER BY、ALTER ADD INDEX、ALTER DROP INDEX、ALTER MATERIALIZE INDEX、ALTER CLEAR INDEX、ALTER CONSTRAINT、ALTER ADD CONSTRAINT、ALTER DROP CONSTRAINT、ALTER TTL、ALTER MATERIALIZE TTL、ALTER SETTINGS、ALTER MOVE PARTITION、ALTER FETCH PARTITION、ALTER FREEZE PARTITION、ALTER VIEW、ALTER VIEW REFRESH、ALTER VIEW MODIFY QUERY

约束限制:

数组元素个数为0~50

取值范围:

不涉及

默认取值:

不涉及

conditions

String

参数解释:

条件

约束限制:

长度为1~1000个字符

取值范围:

长度为1~1000个字符

默认取值:

不涉及

data_filter

String

参数解释:

行过滤

约束限制:

长度为1~1000个字符

取值范围:

长度为1~1000个字符

默认取值:

不涉及

data_mask

String

参数解释:

列脱敏

约束限制:

长度为1~1000个字符

取值范围:

长度为1~1000个字符

默认取值:

不涉及

data_mask_type

String

参数解释:

data mask type:REDACT修订, HASH哈希加密,PARTIAL_MASK部分掩码,NULLIFY用NULL值替换原值,UNMASKED原样显示,DATA_ONLY_SHOW_YEAR仅显示日期字符串的年份部分,CUSTOM自定义脱敏规则

约束限制:

可选值为:REDACT, HASH, PARTIAL_MASK, NULLIFY, UNMASKED, DATA_ONLY_SHOW_YEAR, CUSTOM

取值范围:

不涉及

默认取值:

不涉及

parameters

Map<String,String>

参数解释:

参数

约束限制:

长度为1~256个字符

取值范围:

长度为1~256个字符

默认取值:

不涉及

is_async

Boolean

参数解释:

是否异步添加OBS AccessLabel,默认为false

约束限制:

不涉及

取值范围:

不涉及

默认取值:

false

表4 Principal

参数

是否必选

参数类型

描述

principal_type

String

参数解释:

主体类型:

USER-用户

GROUP-组

ROLE-角色

SHARE-共享

OTHER-其它

约束限制:

可选值为:USER, GROUP, ROLE, SHARE, OTHER

取值范围:

不涉及

默认取值:

不涉及

principal_source

String

参数解释:

主体来源:

IAM-云用户

SAML-联邦

LDAP-LDAP用户

LOCAL-本地用户

AGENTTENANT-委托

OTHER-其它

约束限制:

可选值为:IAM, SAML, LDAP, LOCAL, AGENTTENANT, OTHER

取值范围:

不涉及

默认取值:

不涉及

principal_name

String

参数解释:

主体名称。只能包含中文、字母、数字和_-.特殊字符,且长度为1~49个字符。principal_name支持中划线'-'字符,但是对Principal进行授权时不支持'-'字符,可通过将有中划线的用户绑定到相关角色进行授权

约束限制:

长度为1~49个字符

取值范围:

长度为1~49个字符

默认取值:

不涉及

表5 ResourceInfo

参数

是否必选

参数类型

描述

catalogs

Array of CatalogInfo objects

参数解释:

catalog信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

uris

Array of strings

参数解释:

URI,路径地址

约束限制:

数组元素个数为0~10

取值范围:

长度为0~4000个字符,数组元素个数为0~10

默认取值:

不涉及

type

String

参数解释:

资源类型

约束限制:

长度为0~4000个字符,可选值为:CATALOG, DATABASE, TABLE, COLUMN, FUNC, MODEL, DATASET, URI,数组元素个数为0~10

取值范围:

长度为0~4000个字符,数组元素个数为0~10

DATABASE:数据库

TABLE:表

COLUMN:列

FUNC:函数

MODEL:模型

DATASET:数据集

URI:地址标识符

默认取值:

不涉及

表6 CatalogInfo

参数

是否必选

参数类型

描述

databases

Array of DatabaseInfo objects

参数解释:

子数据库信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

name

String

参数解释:

catalog名

约束限制:

长度为0~256个字符

取值范围:

长度为0~256个字符

默认取值:

不涉及

models

Array of ModelInfo objects

参数解释:

子模型信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

表7 DatabaseInfo

参数

是否必选

参数类型

描述

name

String

参数解释:

数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

tables

Array of TableInfo objects

参数解释:

子表信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

functions

Array of FunctionInfo objects

参数解释:

子方法信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

datasets

Array of DatasetInfo objects

参数解释:

子数据集信息

约束限制:

数组元素个数为0~10

取值范围:

数组元素个数为0~10

默认取值:

不涉及

表8 TableInfo

参数

是否必选

参数类型

描述

columns

ColumnInfo object

参数解释:

子列信息

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

name

String

参数解释:

表名称

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表9 ColumnInfo

参数

是否必选

参数类型

描述

column_name

Array of strings

参数解释:

列名称。只能包含中文、字母、数字和_-+*(), 特殊字符,且长度为1~767个字符

约束限制:

数组元素个数为0~2000

取值范围:

数组元素个数为0~2000

默认取值:

不涉及

filter

String

参数解释:

是否排除:Include包含,Exclude排除

约束限制:

可选值为:Include, Exclude

取值范围:

不涉及

默认取值:

不涉及

表10 FunctionInfo

参数

是否必选

参数类型

描述

name

String

参数解释:

函数名称

约束限制:

长度为0~256个字符

取值范围:

长度为0~256个字符

默认取值:

不涉及

表11 DatasetInfo

参数

是否必选

参数类型

描述

name

String

参数解释:

description: 数据集名称。只能包含数字、字母、下划线、*,且长度为1~256。

约束限制:

长度为1~256个字符

取值范围:

长度为1~256个字符

默认取值:

不涉及

表12 ModelInfo

参数

是否必选

参数类型

描述

name

String

参数解释:

模型名称。只能包含字母、数字、下划线、中划线,且长度为1~256个字符

约束限制:

长度为1~256个字符

取值范围:

长度为1~256个字符

默认取值:

不涉及

响应参数

状态码:200

表13 响应Body参数

参数

参数类型

描述

policies

Array of LakeFormationPolicy objects

参数解释:

lakecat策略信息

page_info

PagedInfo object

参数解释:

分页信息

表14 LakeFormationPolicy

参数

参数类型

描述

project_id

String

参数解释:

项目ID

instance_id

String

参数解释:

实例ID

principal_type

String

参数解释:

主体类型:USER-用户、GROUP-组、ROLE-角色、SHARE-共享、OTHER-其它

principal_source

String

参数解释:

主体来源:IAM-云、SAML-联邦、LDAP-权限策略、LOCAL-本地、AGENT-委托、AGENTTENANT-委托、OTHER-其它

principal_name

String

参数解释:

主体名

resource

ResourceInfo object

参数解释:

资源信息

resource_name

String

参数解释:

要求用点分格式进行分割

permissions

Array of strings

参数解释:

权限列表:ALL、CREATE、ALTER、DROP、DESCRIBE、EXEC、CREATE_DATABASE、LIST_DATABASE、CREATE_TABLE、LIST_TABLE、CREATE_FUNC、LIST_FUNC、REGISTER_MODEL、LIST_MODEL、CREATE_MODEL、CREATE_DATASET、LIST_DATASET、READ_DATASET、WRITE_DATASET、INSERT、UPDATE、DELETE、SELECT、READ、WRITE、OPERATE、INTROSPECTION、SOURCES、DICT GET、TRUNCATE、 OPTIMIZE、CREATE TEMPORARY TABLE、CREATE DICTIONARY、CREATE VIEW、SHOW DATABASES、SHOW TABLES、SHOW DICTIONARIES、SHOW COLUMNS、DROP DATABASE、DROP VIEW、DROP DICTIONARY、DROP TABLE、ALTER TABLE、ALTER UPDATE、ALTER DELETE、ALTER COLUMN、ALTER ADD COLUMN、ALTER DROP COLUMN、ALTER MODIFY COLUMN、ALTER COMMENT COLUMN、ALTER CLEAR COLUMN、 ALTER RENAME COLUMN、ALTER INDEX、ALTER ORDER BY、ALTER ADD INDEX、ALTER DROP INDEX、ALTER MATERIALIZE INDEX、ALTER CLEAR INDEX、ALTER CONSTRAINT、ALTER ADD CONSTRAINT、ALTER DROP CONSTRAINT、ALTER TTL、ALTER MATERIALIZE TTL、ALTER SETTINGS、ALTER MOVE PARTITION、ALTER FETCH PARTITION、ALTER FREEZE PARTITION、ALTER VIEW、ALTER VIEW REFRESH、ALTER VIEW MODIFY QUERY

grant_able_permissions

Array of strings

参数解释:

可传递的权限列表:ALL、CREATE、ALTER、DROP、DESCRIBE、EXEC、CREATE_DATABASE、LIST_DATABASE、CREATE_TABLE、LIST_TABLE、CREATE_FUNC、LIST_FUNC、REGISTER_MODEL、LIST_MODEL、CREATE_MODEL、CREATE_DATASET、LIST_DATASET、READ_DATASET、WRITE_DATASET、INSERT,UPDATE、DELETE、SELECT、READ、WRITE、OPERATE、INTROSPECTION、SOURCES、DICT GET、 TRUNCATE、OPTIMIZE、CREATE TEMPORARY TABLE、CREATE DICTIONARY、CREATE VIEW、SHOW DATABASES、SHOW TABLES、SHOW DICTIONARIES、SHOW COLUMNS、DROP DATABASE、DROP VIEW、DROP DICTIONARY、DROP TABLE、ALTER TABLE、ALTER UPDATE、ALTER DELETE、ALTER COLUMN、ALTER ADD COLUMN、ALTER DROP COLUMN、ALTER MODIFY COLUMN、ALTER COMMENT COLUMN、ALTER CLEAR COLUMN、 ALTER RENAME COLUMN、ALTER INDEX、ALTER ORDER BY、ALTER ADD INDEX、ALTER DROP INDEX、ALTER MATERIALIZE INDEX、ALTER CLEAR INDEX、ALTER CONSTRAINT、ALTER ADD CONSTRAINT、ALTER DROP CONSTRAINT、ALTER TTL、ALTER MATERIALIZE TTL、ALTER SETTINGS、ALTER MOVE PARTITION、ALTER FETCH PARTITION、ALTER FREEZE PARTITION、ALTER VIEW、ALTER VIEW REFRESH、ALTER VIEW MODIFY QUERY

created_time

Long

参数解释:

创建时间

condition

String

参数解释:

条件信息

obligation

String

参数解释:

obligation,义务,当前包含data filter和data mask

authorization_paths

Array of strings

参数解释:

授权路径列表

parameters

Map<String,String>

参数解释:

参数

access_policy_type

String

参数解释:

权限策略类型:DEFAULT-普通策略、ROW_FILTER-行过滤权限策略、DATA_MASK-列脱敏权限策略

obs_access_label

String

参数解释:

OBS Access Label, 描述了该条LakeFormation权限

表15 ResourceInfo

参数

参数类型

描述

catalogs

Array of CatalogInfo objects

参数解释:

catalog信息

取值范围:

数组元素个数为0~10

uris

Array of strings

参数解释:

URI,路径地址

取值范围:

长度为0~4000个字符,数组元素个数为0~10

type

String

参数解释:

资源类型

取值范围:

长度为0~4000个字符,数组元素个数为0~10

DATABASE:数据库

TABLE:表

COLUMN:列

FUNC:函数

MODEL:模型

DATASET:数据集

URI:地址标识符

表16 CatalogInfo

参数

参数类型

描述

databases

Array of DatabaseInfo objects

参数解释:

子数据库信息

取值范围:

数组元素个数为0~10

name

String

参数解释:

catalog名

取值范围:

长度为0~256个字符

models

Array of ModelInfo objects

参数解释:

子模型信息

取值范围:

数组元素个数为0~10

表17 DatabaseInfo

参数

参数类型

描述

name

String

参数解释:

数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符

取值范围:

不涉及

tables

Array of TableInfo objects

参数解释:

子表信息

取值范围:

数组元素个数为0~10

functions

Array of FunctionInfo objects

参数解释:

子方法信息

取值范围:

数组元素个数为0~10

datasets

Array of DatasetInfo objects

参数解释:

子数据集信息

取值范围:

数组元素个数为0~10

表18 TableInfo

参数

参数类型

描述

columns

ColumnInfo object

参数解释:

子列信息

取值范围:

不涉及

name

String

参数解释:

表名称

取值范围:

不涉及

表19 ColumnInfo

参数

参数类型

描述

column_name

Array of strings

参数解释:

列名称。只能包含中文、字母、数字和_-+*(), 特殊字符,且长度为1~767个字符

取值范围:

数组元素个数为0~2000

filter

String

参数解释:

是否排除:Include包含,Exclude排除

取值范围:

不涉及

表20 FunctionInfo

参数

参数类型

描述

name

String

参数解释:

函数名称

取值范围:

长度为0~256个字符

表21 DatasetInfo

参数

参数类型

描述

name

String

参数解释:

description: 数据集名称。只能包含数字、字母、下划线、*,且长度为1~256。

取值范围:

长度为1~256个字符

表22 ModelInfo

参数

参数类型

描述

name

String

参数解释:

模型名称。只能包含字母、数字、下划线、中划线,且长度为1~256个字符

取值范围:

长度为1~256个字符

表23 PagedInfo

参数

参数类型

描述

current_count

Integer

参数解释:

本次返回的对象个数。最小值为0,最大值为2000

next_marker

String

参数解释:

下一页查询地址。当不存在下一页,则值为null,当值为null时,响应Body无该参数

previous_marker

String

参数解释:

上一页查询地址。当不存在上一页,则值为null,当值为null时,响应Body无该参数

状态码:201

Created

状态码:400

表24 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

solution_msg

String

参数解释:

解决方案描述

状态码:401

表25 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

solution_msg

String

参数解释:

解决方案描述

状态码:403

表26 响应Body参数

参数

参数类型

描述

error

Error object

参数解释:

错误信息

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

title

String

参数解释:

标题

表27 Error

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

title

String

参数解释:

标题

message

String

参数解释:

错误信息

code

String

参数解释:

状态码

状态码:404

表28 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

solution_msg

String

参数解释:

解决方案描述

状态码:408

表29 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

solution_msg

String

参数解释:

解决方案描述

状态码:500

表30 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码

error_msg

String

参数解释:

错误描述

solution_msg

String

参数解释:

解决方案描述

请求示例

POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/policies/grant

{
  "principal_list" : [ {
    "principal_type" : "USER",
    "principal_source" : "IAM",
    "principal_name" : "user1"
  } ],
  "resource" : {
    "catalogs" : [ {
      "databases" : [ {
        "name" : "db1",
        "tables" : [ {
          "columns" : {
            "column_name" : [ ],
            "filter" : "string"
          },
          "name" : "tb1"
        } ],
        "functions" : [ {
          "name" : "string"
        } ]
      } ],
      "name" : "catalog1"
    } ],
    "uris" : [ "string" ],
    "type" : "CATALOG"
  },
  "effect" : true,
  "permissions" : [ "ALTER,DROP" ],
  "grant_able_permissions" : [ "ALTER,DROP" ],
  "conditions" : "ip=127.0.0.1",
  "data_filter" : "c1 < 0",
  "data_mask" : "show last 4",
  "data_mask_type" : "PARTIAL_MASK"
}

响应示例

状态码:200

OK

{
  "policies" : [ {
    "project_id" : "41aa75443xxxxxx2c6afaaa40cc046",
    "instance_id" : "51c51596-2e97-47bf-xxxx-0fc728c04ced",
    "principal_type" : "USER",
    "principal_source" : "IAM",
    "principal_name" : "user1",
    "resource" : {
      "catalogs" : [ {
        "databases" : [ {
          "name" : "db1",
          "tables" : [ { } ],
          "functions" : [ { } ]
        } ],
        "name" : "catalog1"
      } ],
      "uris" : [ "string" ],
      "type" : "CATALOG"
    },
    "resource_name" : "string",
    "permissions" : [ "DROP", "ALTER" ],
    "grant_able_permissions" : [ "ALTER" ],
    "created_time" : 0,
    "condition" : "ip=127.0.0.1",
    "obligation" : "DATAFILTER:c1<10;DATAMASK:INCLUDE:c1",
    "authorization_paths" : [ "obs://location/uri/" ]
  } ],
  "page_info" : {
    "current_count" : 2000,
    "next_marker" : "006f492b-xxxx",
    "previous_marker" : "003e6eba-xxxx"
  }
}

状态码:400

Bad Request

{
  "error_code" : "common.01000001",
  "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException"
}

状态码:401

Unauthorized

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

状态码:403

Forbidden

{
  "error" : {
    "code" : "403",
    "message" : "X-Auth-Token is invalid in the request",
    "error_code" : null,
    "error_msg" : null,
    "title" : "Forbidden"
  },
  "error_code" : "403",
  "error_msg" : "X-Auth-Token is invalid in the request",
  "title" : "Forbidden"
}

状态码:404

Not Found

{
  "error_code" : "common.01000001",
  "error_msg" : "response status exception, code: 404"
}

状态码:408

Request Timeout

{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}

状态码:500

Internal Server Error

{
  "error_code" : "common.00000500",
  "error_msg" : "internal error"
}

状态码

状态码

描述

200

OK

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

408

Request Timeout

500

Internal Server Error

错误码

请参见错误码

相关文档