Database class
Operações para ler ou excluir um banco de dados existente.
Consulte de bancos de dados para criar novos bancos de dados e ler/consultar todos os bancos de dados; use client.databases.
Nota: todas estas operações fazem chamadas contra um orçamento fixo.
Você deve projetar seu sistema de modo que essas chamadas sejam dimensionadas sublinearmente com seu aplicativo.
Por exemplo, não ligue para database.read() antes de cada chamada item.read(), para garantir que o banco de dados existe; Faça isso uma vez na inicialização do aplicativo.
Propriedades
| client | |
| containers | Usado para criar novos contêineres ou consultar/ler todos os contêineres. Use Exemplo Criar um novo contêiner
|
| id | |
| url | Retorna uma URL de referência para o recurso. Usado para vincular em Permissões. Exemplo
|
| users | Usado para criar novos usuários ou consultar/ler todos os usuários. Use |
Métodos
| container(string) | Usado para ler, substituir ou excluir um banco de dados específico e existente por id. Use Exemplo Excluir um contêiner
|
| create |
Criar chave de criptografia para conta de banco de dados Exemplo
|
| delete(Request |
Exclua o banco de dados fornecido. Exemplo
|
| read(Request |
Leia a definição da Base de Dados dada. Exemplo
|
| read |
Ler chave de criptografia para conta de banco de dados Exemplo
|
| read |
Obtém oferta no banco de dados. Se não existir, retorna um OfferResponse com undefined. Exemplo Leia a oferta na base de dados
|
| rewrap |
Reencapsula uma chave de criptografia do cliente com uma nova chave de criptografia de chave Exemplo
|
| user(string) | Usado para ler, substituir ou excluir um de usuário específico e existente por id. Use Exemplo Eliminar um utilizador
|
Detalhes de Propriedade
client
containers
Usado para criar novos contêineres ou consultar/ler todos os contêineres.
Use .database(id) para ler, substituir ou excluir um banco de dados de específico e existente por id.
Exemplo
Criar um novo contêiner
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 { body: containerDefinition, container } = await client
.database("<db id>")
.containers.create({ id: "<container id>" });
containers: Containers
Valor de Propriedade
id
id: string
Valor de Propriedade
string
url
Retorna uma URL de referência para o recurso. Usado para vincular em Permissões.
Exemplo
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 url = database.url;
string url
Valor de Propriedade
string
users
Usado para criar novos usuários ou consultar/ler todos os usuários.
Use .user(id) para ler, substituir ou excluir um de usuário específico e existente por id.
users: Users
Valor de Propriedade
Detalhes de Método
container(string)
Usado para ler, substituir ou excluir um banco de dados específico e existente por id.
Use .containers criar novos contêineres ou consultar/ler todos os contêineres.
Exemplo
Excluir um contêiner
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
await client.database("<db id>").container("<container id>").delete();
function container(id: string): Container
Parâmetros
- id
-
string
Devoluções
createClientEncryptionKey(string, AEAD_AES_256_CBC_HMAC_SHA256, EncryptionKeyWrapMetadata)
Criar chave de criptografia para conta de banco de dados
Exemplo
import { ClientSecretCredential } from "@azure/identity";
import {
AzureKeyVaultEncryptionKeyResolver,
CosmosClient,
EncryptionKeyWrapMetadata,
EncryptionKeyResolverName,
KeyEncryptionAlgorithm,
EncryptionAlgorithm,
} from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const credentials = new ClientSecretCredential("<tenant-id>", "<client-id>", "<app-secret>");
const keyResolver = new AzureKeyVaultEncryptionKeyResolver(credentials);
const client = new CosmosClient({
endpoint,
key,
clientEncryptionOptions: {
keyEncryptionKeyResolver: keyResolver,
},
});
const { database } = await client.databases.createIfNotExists({ id: "<db id>" });
const metadata: EncryptionKeyWrapMetadata = {
type: EncryptionKeyResolverName.AzureKeyVault,
name: "<key-name>",
value: "<key-vault-url>",
algorithm: KeyEncryptionAlgorithm.RSA_OAEP,
};
await database.createClientEncryptionKey(
"<cek-id>",
EncryptionAlgorithm.AEAD_AES_256_CBC_HMAC_SHA256,
metadata,
);
function createClientEncryptionKey(clientEncryptionKeyId: string, encryptionAlgorithm: AEAD_AES_256_CBC_HMAC_SHA256, keyWrapMetadata: EncryptionKeyWrapMetadata): Promise<ClientEncryptionKeyResponse>
Parâmetros
- clientEncryptionKeyId
-
string
- encryptionAlgorithm
- AEAD_AES_256_CBC_HMAC_SHA256
- keyWrapMetadata
- EncryptionKeyWrapMetadata
Devoluções
Promise<ClientEncryptionKeyResponse>
delete(RequestOptions)
Exclua o banco de dados fornecido.
Exemplo
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
await client.database("<id here>").delete();
function delete(options?: RequestOptions): Promise<DatabaseResponse>
Parâmetros
- options
- RequestOptions
Devoluções
Promise<DatabaseResponse>
read(RequestOptions)
Leia a definição da Base de Dados dada.
Exemplo
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 { resource: database } = await client.database("<db id>").read();
function read(options?: RequestOptions): Promise<DatabaseResponse>
Parâmetros
- options
- RequestOptions
Devoluções
Promise<DatabaseResponse>
readClientEncryptionKey(string)
Ler chave de criptografia para conta de banco de dados
Exemplo
import { ClientSecretCredential } from "@azure/identity";
import { AzureKeyVaultEncryptionKeyResolver, CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const credentials = new ClientSecretCredential("<tenant-id>", "<client-id>", "<app-secret>");
const keyResolver = new AzureKeyVaultEncryptionKeyResolver(credentials);
const client = new CosmosClient({
endpoint,
key,
clientEncryptionOptions: {
keyEncryptionKeyResolver: keyResolver,
},
});
const { database } = await client.databases.createIfNotExists({ id: "<db id>" });
const { resource: clientEncryptionKey } = await database.readClientEncryptionKey("<cek-id>");
function readClientEncryptionKey(clientEncryptionKeyId: string): Promise<ClientEncryptionKeyResponse>
Parâmetros
- clientEncryptionKeyId
-
string
Devoluções
Promise<ClientEncryptionKeyResponse>
readOffer(RequestOptions)
Obtém oferta no banco de dados. Se não existir, retorna um OfferResponse com undefined.
Exemplo
Leia a oferta na base de dados
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 { resource: offer } = await client.database("<db id>").readOffer();
function readOffer(options?: RequestOptions): Promise<OfferResponse>
Parâmetros
- options
- RequestOptions
Devoluções
Promise<OfferResponse>
rewrapClientEncryptionKey(string, EncryptionKeyWrapMetadata)
Reencapsula uma chave de criptografia do cliente com uma nova chave de criptografia de chave
Exemplo
import { ClientSecretCredential } from "@azure/identity";
import {
AzureKeyVaultEncryptionKeyResolver,
CosmosClient,
EncryptionKeyWrapMetadata,
EncryptionKeyResolverName,
KeyEncryptionAlgorithm,
} from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const credentials = new ClientSecretCredential("<tenant-id>", "<client-id>", "<app-secret>");
const keyResolver = new AzureKeyVaultEncryptionKeyResolver(credentials);
const client = new CosmosClient({
endpoint,
key,
clientEncryptionOptions: {
keyEncryptionKeyResolver: keyResolver,
},
});
const { database } = await client.databases.createIfNotExists({ id: "<db id>" });
const newMetadata: EncryptionKeyWrapMetadata = {
type: EncryptionKeyResolverName.AzureKeyVault,
name: "<key-name>",
value: "<key-vault-url>",
algorithm: KeyEncryptionAlgorithm.RSA_OAEP,
};
await database.rewrapClientEncryptionKey("<new-cek-id>", newMetadata);
function rewrapClientEncryptionKey(clientEncryptionKeyId: string, newKeyWrapMetadata: EncryptionKeyWrapMetadata): Promise<ClientEncryptionKeyResponse>
Parâmetros
- clientEncryptionKeyId
-
string
- newKeyWrapMetadata
- EncryptionKeyWrapMetadata
novos metadados de encapsulamento de chave de criptografia
Devoluções
Promise<ClientEncryptionKeyResponse>
Chave de criptografia de cliente reempacotada com nova chave gerenciada pelo cliente
user(string)
Usado para ler, substituir ou excluir um de usuário específico e existente por id.
Use .users para criar novos usuários ou consultar/ler todos os usuários.
Exemplo
Eliminar um utilizador
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
await client.database("<db id>").user("<user id>").delete();
function user(id: string): User
Parâmetros
- id
-
string