创建权限申请
为数据源、数据库、表、视图或敏感列创建权限申请。此接口不需要管理员权限,但需要 AccessKey 认证。
请求地址:/openapi/v1/permission/apply/create
请求方法:POST
请求参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| type | String | 是 | 权限类型:datasource、database、sensitiveColumn、tableView、table 或 view。 |
| datasource | Object | 是 | 目标数据源对象,字段见下表。 |
| databases | Array<String> | 否 | 数据库列表。 |
| schemas | Array<String> | 否 | Schema 列表。 |
| tables | Array<Object> | 否 | 表对象列表,字段见下表。 |
| views | Array<Object> | 否 | 视图对象列表,字段见下表。 |
| sensitiveColumns | Array<Object> | 否 | 敏感列对象列表,字段见下表。 |
| permissions | Object | 否 | 权限配置,结构见下表。 |
| reason | String | 否 | 申请原因。 |
| days | Integer | 否 | 有效天数。 |
| sensitiveLevel | Integer | 否 | 敏感级别。 |
| endDateTime | String | 否 | 权限结束时间,使用 ISO 8601 格式,例如 2026-08-30T10:00:00Z。 |
| approvers | Array<Object> | 否 | 审批人对象列表,字段见下表。 |
| refusal | String | 否 | 拒绝原因。 |
datasource 对象
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| datasource.datasourceId | String | 是 | 数据源 ID。 |
| datasource.name | String | 否 | 数据源名称。 |
tables 和 views 对象
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| database | String | 是 | 数据库名。 |
| schema | String | 否 | Schema 名。 |
| name | String | 是 | 表名或视图名。 |
sensitiveColumns 对象
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| database | String | 是 | 数据库名。 |
| schema | String | 否 | Schema 名。 |
| table | String | 是 | 表名。 |
| column | String | 是 | 列名。 |
permissions 对象
permissions 的键是与 type 对应的权限类型,值是权限动作数组,例如 {"database": ["Readonly"]}。
approvers 对象
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| accountId | String | 是 | 审批人账号 ID。 |
| accountName | String | 否 | 审批人账号名称。 |
| specifyApprover | Boolean | 否 | 是否指定审批人。 |
| selfApproval | Boolean | 否 | 是否允许自审批。 |
| status | String | 否 | 审批状态。 |
请求示例
{
"type": "database",
"datasource": {
"datasourceId": "<datasourceId>",
"name": "example-datasource"
},
"databases": ["example_db"],
"permissions": {
"database": ["Readonly"]
},
"reason": "Need read access",
"endDateTime": "2026-08-30T10:00:00Z"
}
返回参数
| 参数 | 类型 | 说明 |
|---|---|---|
| success | Boolean | 请求是否成功。 |
| requestId | String | 请求 ID。 |
| data | String | 新创建的权限申请 ID。 |
调用成功示例
{"success": true, "requestId": "<requestId>", "data": "<applyId>"}