Database class
Meglévő adatbázis olvasására vagy törlésére szolgáló műveletek.
Lásd: Adatbázisok új adatbázisok létrehozásához és az összes adatbázis olvasásához/lekérdezéséhez; client.databaseshasználata.
Megjegyzés: ezek a műveletek rögzített költségvetéssel kapcsolatos hívásokat hajtanak végre.
Úgy kell megterveznie a rendszert, hogy ezek a hívások az alkalmazással együtt alkonyatosan skálázhatók legyenek.
Például ne hívjon database.read() minden egyes item.read() hívás előtt, hogy meggyőződjön arról, hogy az adatbázis létezik; ezt egyszer kell elvégeznie az alkalmazás indításakor.
Tulajdonságok
| client | |
| containers | Új tárolók létrehozásához vagy az összes tároló lekérdezéséhez/olvasásához használható. A példa Új tároló létrehozása
|
| id | |
| url | Az erőforrás hivatkozási URL-címét adja vissza. Az engedélyek csatolásához használatos. példa
|
| users | Új felhasználók létrehozásához vagy az összes felhasználó lekérdezéséhez/olvasásához használható. A |
Metódusok
| container(string) | Egy adott, meglévő adatbázis azonosító alapján történő olvasására, cseréjére vagy törlésére szolgál. Használja példa Tároló törlése
|
| create |
Titkosítási kulcs létrehozása adatbázisfiókhoz példa
|
| delete(Request |
Törölje a megadott adatbázist. példa
|
| read(Request |
Olvassa el az adott adatbázis definícióját. példa
|
| read |
Olvasási titkosítási kulcs adatbázisfiókhoz példa
|
| read |
Ajánlatot kap az adatbázisban. Ha nincs ilyen, akkor egy nem definiált OfferResponse értéket ad vissza. példa Olvassa el az ajánlatot az adatbázisban
|
| rewrap |
Újracsomagolja az ügyfél titkosítási kulcsát új kulcstitkosítási kulccsal példa
|
| user(string) | Egy adott, meglévő felhasználó azonosító alapján történő olvasására, cseréjére vagy törlésére szolgál. Az példa Felhasználó törlése
|
Tulajdonság adatai
client
containers
Új tárolók létrehozásához vagy az összes tároló lekérdezéséhez/olvasásához használható.
A .database(id) használatával beolvashat, lecserélhet vagy törölhet egy adott meglévő adatbázis- azonosító alapján.
példa
Új tároló létrehozása
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
Tulajdonság értéke
id
id: string
Tulajdonság értéke
string
url
Az erőforrás hivatkozási URL-címét adja vissza. Az engedélyek csatolásához használatos.
példa
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
Tulajdonság értéke
string
users
Új felhasználók létrehozásához vagy az összes felhasználó lekérdezéséhez/olvasásához használható.
A .user(id) használatával beolvashat, lecserélhet vagy törölhet egy adott meglévő felhasználót, azonosító alapján.
users: Users
Tulajdonság értéke
Metódus adatai
container(string)
Egy adott, meglévő adatbázis azonosító alapján történő olvasására, cseréjére vagy törlésére szolgál.
Használja .containers új tárolók létrehozását, vagy az összes tároló lekérdezését/olvasását.
példa
Tároló törlése
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
Paraméterek
- id
-
string
Válaszok
createClientEncryptionKey(string, AEAD_AES_256_CBC_HMAC_SHA256, EncryptionKeyWrapMetadata)
Titkosítási kulcs létrehozása adatbázisfiókhoz
példa
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>
Paraméterek
- clientEncryptionKeyId
-
string
- encryptionAlgorithm
- AEAD_AES_256_CBC_HMAC_SHA256
- keyWrapMetadata
- EncryptionKeyWrapMetadata
Válaszok
Promise<ClientEncryptionKeyResponse>
delete(RequestOptions)
Törölje a megadott adatbázist.
példa
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>
Paraméterek
- options
- RequestOptions
Válaszok
Promise<DatabaseResponse>
read(RequestOptions)
Olvassa el az adott adatbázis definícióját.
példa
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>
Paraméterek
- options
- RequestOptions
Válaszok
Promise<DatabaseResponse>
readClientEncryptionKey(string)
Olvasási titkosítási kulcs adatbázisfiókhoz
példa
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>
Paraméterek
- clientEncryptionKeyId
-
string
Válaszok
Promise<ClientEncryptionKeyResponse>
readOffer(RequestOptions)
Ajánlatot kap az adatbázisban. Ha nincs ilyen, akkor egy nem definiált OfferResponse értéket ad vissza.
példa
Olvassa el az ajánlatot az adatbázisban
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>
Paraméterek
- options
- RequestOptions
Válaszok
Promise<OfferResponse>
rewrapClientEncryptionKey(string, EncryptionKeyWrapMetadata)
Újracsomagolja az ügyfél titkosítási kulcsát új kulcstitkosítási kulccsal
példa
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>
Paraméterek
- clientEncryptionKeyId
-
string
- newKeyWrapMetadata
- EncryptionKeyWrapMetadata
Új titkosítási kulcsburkolási metaadatok
Válaszok
Promise<ClientEncryptionKeyResponse>
újracsomagolt ügyféltitkosítási kulcs új ügyfél által felügyelt kulccsal
user(string)
Egy adott, meglévő felhasználó azonosító alapján történő olvasására, cseréjére vagy törlésére szolgál.
Az .users használata új felhasználók létrehozásához, vagy az összes felhasználó lekérdezéséhez/olvasásához.
példa
Felhasználó törlése
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
Paraméterek
- id
-
string