다음을 통해 공유


Permissions class

모든 권한을 만들고, 바꾸고, 쿼리하고, 읽는 데 사용합니다.

id별로 특정 사용 권한을 읽거나 바꾸거나 삭제하려면 사용 권한 참조하세요.

속성

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);
query(SqlQuerySpec, FeedOptions)

모든 권한을 쿼리합니다.

예제

ID를 사용하여 권한을 쿼리합니다.

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();
query<T>(SqlQuerySpec, 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();
upsert(PermissionDefinition, RequestOptions)

권한을 Upsert합니다. 사용 권한은 특정 리소스(예: 항목 또는 컨테이너)에 액세스할 수 있는 사용자별 권한을 나타냅니다.

예제

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);

속성 세부 정보

user

user: 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

반환

query(SqlQuerySpec, FeedOptions)

모든 권한을 쿼리합니다.

예제

ID를 사용하여 권한을 쿼리합니다.

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

반환

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)

권한을 Upsert합니다. 사용 권한은 특정 리소스(예: 항목 또는 컨테이너)에 액세스할 수 있는 사용자별 권한을 나타냅니다.

예제

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>

매개 변수

options
RequestOptions

반환