安全规则
安全规则的接口,可通过 commonService 来调用
权限类别
以下前 4 种属于简易权限,CUSTOM 属于安全规则特有:
- READONLY:所有用户可读,仅创建者和管理员可写
- PRIVATE:仅创建者及管理员可读写
- ADMINWRITE:所有用户可读,仅管理员可写
- ADMINONLY:仅管理员可读写
- CUSTOM: 自定义安全规则
获取数据库简易权限
1. 接口描述
接口功能:获取数据库简易权限
接口声明:manager.commonService().call({Action: 'DescribeDatabaseACL',Param: {}}): Promise<Object>
⚠️ 本接口从 3.0.0 版本后,commonService 作为方法使用,请求参数为(service?:string, version?:string) ,属于不兼容变更
2. 输入参数
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| Action | 是 | String | 接口名称 |
| Param | 是 | Object | 接口参数 |
Param 字段说明
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| CollectionName | 是 | String | 集合名 |
| EnvId | 是 | String | 环境 ID |
3. 返回结果
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| RequestId | 是 | String | 请求唯一标识 |
| AclTag | 否 | String | 权限类别 |
4. 示例代码
const cloudbaseConfig = {
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
};
let manager = new CloudBase(cloudbaseConfig);
async function test() {
const res = await manager.commonService().call({
Action: "DescribeDatabaseACL",
Param: {
CollectionName: "xxx",
EnvId: cloudbaseConfig.envId
}
});
console.log(res.AclTag); // 打印权限类别
}
test();
修改数据库简易权限
1. 接口描述
接口功能:修改数据库简易权限
接口声明:manager.commonService().call({Action: 'ModifyDatabaseACL',Param: {}}): Promise<Object>
⚠️ 本接口从 3.0.0 版本后,commonService 作为方法使用,请求参数为(service?:string, version?:string) ,属于不兼容变更
2. 输入参数
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| Action | 是 | String | 接口名称 |
| Param | 是 | Object | 接口参数 |
Param 字段说明
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| CollectionName | 是 | String | 集合名 |
| AclTag | 是 | String | 数据库简易权限 READONLY PRIVATE ADMINWRITE ADMINONLY |
| EnvId | 是 | String | 环境 ID |
3. 返回结果
| 字段 | 必填 | 类型 | 说明 |
|---|---|---|---|
| RequestId | String | 是 | 请求唯一标识 |
4. 示例代码
const cloudbaseConfig = {
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
};
let manager = new CloudBase(cloudBaseConfig);
async function test() {
const res = await manager.commonService().call({
Action: "ModifyDatabaseACL",
Param: {
CollectionName: "xxx",
EnvId: cloudbaseConfig.envId,
AclTag: "PRIVATE"
}
});
console.log(res);
}
test();