Compartilhar via


CosmosUser.UpsertPermissionAsync Método

Definição

Insira uma permissão como uma operação assíncrona no serviço do Azure Cosmos.

public abstract System.Threading.Tasks.Task<Azure.Cosmos.PermissionResponse> UpsertPermissionAsync (Azure.Cosmos.PermissionProperties permissionProperties, int? tokenExpiryInSeconds = default, Azure.Cosmos.RequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member UpsertPermissionAsync : Azure.Cosmos.PermissionProperties * Nullable<int> * Azure.Cosmos.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Cosmos.PermissionResponse>
Public MustOverride Function UpsertPermissionAsync (permissionProperties As PermissionProperties, Optional tokenExpiryInSeconds As Nullable(Of Integer) = Nothing, Optional requestOptions As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of PermissionResponse)

Parâmetros

permissionProperties
PermissionProperties

O objeto PermissionProperties.

tokenExpiryInSeconds
Nullable<Int32>

(Opcional) O tempo de expiração do token de recurso em segundos. Esse valor pode variar de 10 segundos a 24 horas (ou 86.400 segundos). O valor padrão para isso é 1 hora (ou 3.600 segundos). Isso não altera o valor padrão para tokens futuros.

requestOptions
RequestOptions

(Opcional) As opções para a solicitação de permissão RequestOptions

cancellationToken
CancellationToken

(Opcional) CancellationToken que representa o cancelamento da solicitação.

Retornos

Um Task que contém um PermissionResponse que encapsula um PermissionProperties que contém o registro de recurso de leitura.

Exceções

Essa exceção pode encapsular muitos tipos diferentes de erros. Para determinar o erro específico, sempre examine a propriedade StatusCode. Alguns códigos comuns que você pode obter ao criar uma permissão são:

StatusCodeMotivo da exceção
400BadRequest - Isso significa que algo estava errado com a solicitação fornecida. É provável que uma ID não tenha sido fornecida para a nova permissão.

Exemplos

PermissionProperties permissionProperties = new PermissionProperties("permissionId", PermissionMode.All, database.GetContainer("containerId"), new PartitionKey("tenantId"))";

PermissionResponse response = await this.cosmosDatabase.GetUser("userId").UpsertPermissionAsync(permissionProperties, tokenExpiryInSeconds: 9000);

Aplica-se a