Permissions class
用來建立、取代、查詢及讀取所有許可權。
請參閱 許可權,以依標識符讀取、取代或刪除特定許可權。
屬性
| user |
方法
| create(Permission |
建立許可權。 許可權代表每個使用者存取特定資源的許可權,例如專案或容器。 範例
|
| query(Sql |
查詢所有許可權。 範例 具有 id 的 Query 許可權。
|
| query<T>(Sql |
查詢所有許可權。 |
| read |
讀取所有許可權。 範例 讀取陣列的所有許可權。
|
| upsert(Permission |
向上插入許可權。 許可權代表每個使用者存取特定資源的許可權,例如專案或容器。 範例
|
屬性詳細資料
user
方法詳細資料
create(PermissionDefinition, RequestOptions)
建立許可權。
許可權代表每個使用者存取特定資源的許可權,例如專案或容器。
範例
import { CosmosClient, PermissionDefinition, PermissionMode } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { user } = await database.users.create({ id: "<user-id>" });
const permissionDefinition: PermissionDefinition = {
id: "<permission-id>",
permissionMode: PermissionMode.Read,
resource: "<resource-url>",
};
await user.permissions.create(permissionDefinition);
function create(body: PermissionDefinition, options?: RequestOptions): Promise<PermissionResponse>
參數
- body
- PermissionDefinition
表示許可權的主體。
- options
- RequestOptions
傳回
Promise<PermissionResponse>
query(SqlQuerySpec, FeedOptions)
查詢所有許可權。
範例
具有 id 的 Query 許可權。
import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const querySpec: SqlQuerySpec = {
query: `SELECT * FROM root r WHERE r.id = @permission`,
parameters: [{ name: "@permission", value: "<permission-id>" }],
};
const { resources: permisssion } = await database
.user("<user-id>")
.permissions.query(querySpec)
.fetchAll();
function query(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<any>
參數
- query
- SqlQuerySpec
作業的查詢組態。 如需如何設定查詢的詳細資訊,請參閱 SqlQuerySpec。
- options
- FeedOptions
傳回
QueryIterator<any>
query<T>(SqlQuerySpec, FeedOptions)
查詢所有許可權。
function query<T>(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<T>
參數
- query
- SqlQuerySpec
作業的查詢組態。 如需如何設定查詢的詳細資訊,請參閱 SqlQuerySpec。
- options
- FeedOptions
傳回
readAll(FeedOptions)
讀取所有許可權。
範例
讀取陣列的所有許可權。
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { resources: permissionList } = await database.user("user1").permissions.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<PermissionDefinition & Resource>
參數
- options
- FeedOptions
傳回
upsert(PermissionDefinition, RequestOptions)
向上插入許可權。 許可權代表每個使用者存取特定資源的許可權,例如專案或容器。
範例
import { CosmosClient, PermissionDefinition, PermissionMode } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const user = database.user("<user-id>");
const permissionDefinitionToUpsert: PermissionDefinition = {
id: "<permission-id>",
permissionMode: PermissionMode.Read,
resource: "<resource-url>",
};
await user.permissions.upsert(permissionDefinitionToUpsert);
function upsert(body: PermissionDefinition, options?: RequestOptions): Promise<PermissionResponse>
參數
- body
- PermissionDefinition
- options
- RequestOptions
傳回
Promise<PermissionResponse>