Database class
Bewerkingen voor het lezen of verwijderen van een bestaande database.
Zie Databases voor het maken van nieuwe databases en het lezen/opvragen van alle databases; client.databases
gebruiken.
Opmerking: al deze bewerkingen voeren aanroepen tegen een vast budget.
U moet uw systeem zodanig ontwerpen dat deze aanroepen sublijnig worden geschaald met uw toepassing.
Roep bijvoorbeeld niet database.read()
aan vóór elke item.read()
aanroep om ervoor te zorgen dat de database bestaat; Doe dit eenmaal bij het opstarten van de toepassing.
Eigenschappen
client | |
containers | Wordt gebruikt voor het maken van nieuwe containers of het opvragen/lezen van alle containers. Gebruik voorbeeld van Een nieuwe container maken
|
id | |
url | Retourneert een referentie-URL naar de resource. Wordt gebruikt voor het koppelen in machtigingen. voorbeeld van
|
users | Wordt gebruikt voor het maken van nieuwe gebruikers of het opvragen/lezen van alle gebruikers. Gebruik |
Methoden
container(string) | Wordt gebruikt voor het lezen, vervangen of verwijderen van een specifieke, bestaande Database op id. Gebruik voorbeeld van Een container verwijderen
|
create |
Maak een coderingssleutel voor een databaseaccount voorbeeld van
|
delete(Request |
Verwijder de opgegeven database. voorbeeld van
|
read(Request |
Lees de definitie van de opgegeven database. voorbeeld van
|
read |
Lees Versleutelingssleutel voor databaseaccount voorbeeld van
|
read |
Hiermee krijgt u een aanbieding voor de database. Als er geen bestaat, wordt een OfferResponse geretourneerd met niet-gedefinieerd. voorbeeld van Lees het aanbod in de database
|
rewrap |
Hiermee wordt een clientversleutelingssleutel opnieuw ingepakt met een nieuwe sleutelversleutelingssleutel voorbeeld van
|
user(string) | Wordt gebruikt voor het lezen, vervangen of verwijderen van een specifieke, bestaande gebruiker op id. Gebruik voorbeeld van Een gebruiker verwijderen
|
Eigenschapdetails
client
containers
Wordt gebruikt voor het maken van nieuwe containers of het opvragen/lezen van alle containers.
Gebruik .database(id)
om een specifieke, bestaande database op id te lezen, te vervangen of te verwijderen.
voorbeeld van
Een nieuwe container maken
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
Waarde van eigenschap
id
id: string
Waarde van eigenschap
string
url
Retourneert een referentie-URL naar de resource. Wordt gebruikt voor het koppelen in machtigingen.
voorbeeld van
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
Waarde van eigenschap
string
users
Methodedetails
container(string)
Wordt gebruikt voor het lezen, vervangen of verwijderen van een specifieke, bestaande Database op id.
Gebruik .containers
het maken van nieuwe containers of het opvragen/lezen van alle containers.
voorbeeld van
Een container verwijderen
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
Parameters
- id
-
string
Retouren
createClientEncryptionKey(string, AEAD_AES_256_CBC_HMAC_SHA256, EncryptionKeyWrapMetadata)
Maak een coderingssleutel voor een databaseaccount
voorbeeld van
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>
Parameters
- clientEncryptionKeyId
-
string
- encryptionAlgorithm
- AEAD_AES_256_CBC_HMAC_SHA256
- keyWrapMetadata
- EncryptionKeyWrapMetadata
Retouren
Promise<ClientEncryptionKeyResponse>
delete(RequestOptions)
Verwijder de opgegeven database.
voorbeeld van
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>
Parameters
- options
- RequestOptions
Retouren
Promise<DatabaseResponse>
read(RequestOptions)
Lees de definitie van de opgegeven database.
voorbeeld van
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>
Parameters
- options
- RequestOptions
Retouren
Promise<DatabaseResponse>
readClientEncryptionKey(string)
Lees Versleutelingssleutel voor databaseaccount
voorbeeld van
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>
Parameters
- clientEncryptionKeyId
-
string
Retouren
Promise<ClientEncryptionKeyResponse>
readOffer(RequestOptions)
Hiermee krijgt u een aanbieding voor de database. Als er geen bestaat, wordt een OfferResponse geretourneerd met niet-gedefinieerd.
voorbeeld van
Lees het aanbod in de database
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>
Parameters
- options
- RequestOptions
Retouren
Promise<OfferResponse>
rewrapClientEncryptionKey(string, EncryptionKeyWrapMetadata)
Hiermee wordt een clientversleutelingssleutel opnieuw ingepakt met een nieuwe sleutelversleutelingssleutel
voorbeeld van
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>
Parameters
- clientEncryptionKeyId
-
string
- newKeyWrapMetadata
- EncryptionKeyWrapMetadata
Nieuwe metadata van coderingssleutelomloop
Retouren
Promise<ClientEncryptionKeyResponse>
Opnieuw ingepakte clientcoderingssleutel met nieuwe door de klant beheerde sleutel
user(string)
Wordt gebruikt voor het lezen, vervangen of verwijderen van een specifieke, bestaande gebruiker op id.
Gebruik .users
voor het maken van nieuwe gebruikers of het opvragen/lezen van alle gebruikers.
voorbeeld van
Een gebruiker verwijderen
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
Parameters
- id
-
string