SecretClient class
SecretClient 提供在 Azure 金鑰保存庫中管理KeyVaultSecret的方法。 用戶端支援建立、擷取、更新、刪除、清除、備份、還原及列出 KeyVaultSecrets。 用戶端也支援針對已啟用虛刪除的 Azure 金鑰保存庫列出DeletedSecret。
建構函式
Secret |
建立 SecretClient 的實例。 使用方式範例:
|
屬性
vault |
保存庫的基底 URL |
方法
backup |
要求將指定秘密的備份下載至用戶端。 將會下載所有版本的秘密。 此作業需要秘密/備份許可權。 使用方式範例:
備份指定的秘密。 |
begin |
刪除儲存在 Azure 金鑰保存庫中的秘密。 此函式會傳回長時間執行的作業輪詢器,可讓您無限期等候,直到刪除秘密為止。 此作業需要秘密/刪除許可權。 使用方式範例:
從指定的金鑰保存庫刪除秘密。 |
begin |
復原指定保存庫中已刪除的秘密。 此函式會傳回長時間執行的作業輪詢器,可讓您無限期等候秘密復原。 此作業需要秘密/復原許可權。 使用方式範例:
將已刪除的秘密復原至最新版本。 |
get |
getDeletedSecret 方法會傳回指定的已刪除秘密及其屬性。 此作業需要秘密/取得許可權。 使用方式範例:
取得指定的已刪除秘密。 |
get |
getSecret 方法適用于儲存在 Azure 金鑰保存庫中的任何秘密。 此作業需要秘密/取得許可權。 使用方式範例:
從指定的金鑰保存庫取得指定的秘密。 |
list |
逐一查看保存庫中已刪除的秘密。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。 使用方式範例:
列出保存庫中的所有秘密。 |
list |
逐一查看保存庫中所有秘密的最新版本。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。 使用方式範例:
列出保存庫中的所有秘密。 |
list |
逐一查看保存庫中指定秘密的所有版本。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。 使用方式範例:
|
purge |
清除刪除的秘密作業會永久移除秘密,而不會有復原的可能性。 此作業只能在已啟用虛刪除的保存庫上啟用。 此作業需要秘密/清除許可權。 使用方式範例:
永久刪除指定的秘密。 |
restore |
將備份的秘密及其所有版本還原至保存庫。 此作業需要秘密/還原許可權。 使用方式範例:
將備份的秘密還原至保存庫。 |
set |
setSecret 方法會將秘密或秘密版本新增至 Azure 金鑰保存庫。 如果指定的密碼已存在,Azure 金鑰保存庫會建立該密碼的新版本。 此作業需要秘密/設定許可權。 使用方式範例:
在指定的金鑰保存庫中新增秘密。 |
update |
updateSecret 方法會變更現有預存秘密的指定屬性。 要求中未指定的屬性會保持不變。 無法變更密碼本身的值。 此作業需要秘密/設定許可權。 使用方式範例:
更新指定金鑰保存庫中與指定秘密相關聯的屬性。 |
建構函式詳細資料
SecretClient(string, TokenCredential, SecretClientOptions)
建立 SecretClient 的實例。
使用方式範例:
import { SecretClient } from "@azure/keyvault-secrets";
import { DefaultAzureCredential } from "@azure/identity";
let vaultUrl = `https://<MY KEYVAULT HERE>.vault.azure.net`;
let credentials = new DefaultAzureCredential();
let client = new SecretClient(vaultUrl, credentials);
new SecretClient(vaultUrl: string, credential: TokenCredential, pipelineOptions?: SecretClientOptions)
參數
- vaultUrl
-
string
保存庫的基底 URL。 您應該驗證此 URL 參考有效的金鑰保存庫資源。 如需詳細資訊,請參閱<https://aka.ms/azsdk/blog/vault-uri>。
- credential
- TokenCredential
實作 介面的物件, TokenCredential
用來驗證對服務的要求。
@azure/identity使用套件來建立符合您需求的認證。
- pipelineOptions
- SecretClientOptions
用來設定 金鑰保存庫 API 要求的管線選項。 省略此參數以使用預設管線組態。
屬性詳細資料
vaultUrl
保存庫的基底 URL
vaultUrl: string
屬性值
string
方法詳細資料
backupSecret(string, BackupSecretOptions)
要求將指定秘密的備份下載至用戶端。 將會下載所有版本的秘密。 此作業需要秘密/備份許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
let backupResult = await client.backupSecret("MySecretName");
備份指定的秘密。
function backupSecret(secretName: string, options?: BackupSecretOptions): Promise<undefined | Uint8Array>
參數
- secretName
-
string
秘密的名稱。
- options
- BackupSecretOptions
選擇性參數。
傳回
Promise<undefined | Uint8Array>
beginDeleteSecret(string, BeginDeleteSecretOptions)
刪除儲存在 Azure 金鑰保存庫中的秘密。 此函式會傳回長時間執行的作業輪詢器,可讓您無限期等候,直到刪除秘密為止。
此作業需要秘密/刪除許可權。
使用方式範例:
const client = new SecretClient(url, credentials);
await client.setSecret("MySecretName", "ABC123");
const deletePoller = await client.beginDeleteSecret("MySecretName");
// Serializing the poller
const serialized = deletePoller.toString();
// A new poller can be created with:
// const newPoller = await client.beginDeleteSecret("MySecretName", { resumeFrom: serialized });
// Waiting until it's done
const deletedSecret = await deletePoller.pollUntilDone();
console.log(deletedSecret);
從指定的金鑰保存庫刪除秘密。
function beginDeleteSecret(name: string, options?: BeginDeleteSecretOptions): Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>>
參數
- name
-
string
- options
- BeginDeleteSecretOptions
選擇性參數。
傳回
Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>>
beginRecoverDeletedSecret(string, BeginRecoverDeletedSecretOptions)
復原指定保存庫中已刪除的秘密。 此函式會傳回長時間執行的作業輪詢器,可讓您無限期等候秘密復原。
此作業需要秘密/復原許可權。
使用方式範例:
const client = new SecretClient(url, credentials);
await client.setSecret("MySecretName", "ABC123");
const deletePoller = await client.beginDeleteSecret("MySecretName");
await deletePoller.pollUntilDone();
const recoverPoller = await client.beginRecoverDeletedSecret("MySecretName");
// Serializing the poller
const serialized = recoverPoller.toString();
// A new poller can be created with:
// const newPoller = await client.beginRecoverDeletedSecret("MySecretName", { resumeFrom: serialized });
// Waiting until it's done
const deletedSecret = await recoverPoller.pollUntilDone();
console.log(deletedSecret);
將已刪除的秘密復原至最新版本。
function beginRecoverDeletedSecret(name: string, options?: BeginRecoverDeletedSecretOptions): Promise<PollerLike<PollOperationState<SecretProperties>, SecretProperties>>
參數
- name
-
string
- options
- BeginRecoverDeletedSecretOptions
選擇性參數。
傳回
Promise<PollerLike<PollOperationState<SecretProperties>, SecretProperties>>
getDeletedSecret(string, GetDeletedSecretOptions)
getDeletedSecret 方法會傳回指定的已刪除秘密及其屬性。 此作業需要秘密/取得許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
await client.getDeletedSecret("MyDeletedSecret");
取得指定的已刪除秘密。
function getDeletedSecret(secretName: string, options?: GetDeletedSecretOptions): Promise<DeletedSecret>
參數
- secretName
-
string
秘密的名稱。
- options
- GetDeletedSecretOptions
選擇性參數。
傳回
Promise<DeletedSecret>
getSecret(string, GetSecretOptions)
getSecret 方法適用于儲存在 Azure 金鑰保存庫中的任何秘密。 此作業需要秘密/取得許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
let secret = await client.getSecret("MySecretName");
從指定的金鑰保存庫取得指定的秘密。
function getSecret(secretName: string, options?: GetSecretOptions): Promise<KeyVaultSecret>
參數
- secretName
-
string
秘密的名稱。
- options
- GetSecretOptions
選擇性參數。
傳回
Promise<KeyVaultSecret>
listDeletedSecrets(ListDeletedSecretsOptions)
逐一查看保存庫中已刪除的秘密。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
for await (const deletedSecret of client.listDeletedSecrets()) {
console.log("deleted secret: ", deletedSecret);
}
列出保存庫中的所有秘密。
function listDeletedSecrets(options?: ListDeletedSecretsOptions): PagedAsyncIterableIterator<DeletedSecret, DeletedSecret[], PageSettings>
參數
- options
- ListDeletedSecretsOptions
選擇性參數。
傳回
listPropertiesOfSecrets(ListPropertiesOfSecretsOptions)
逐一查看保存庫中所有秘密的最新版本。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
for await (const secretProperties of client.listPropertiesOfSecrets()) {
const secret = await client.getSecret(secretProperties.name);
console.log("secret: ", secret);
}
列出保存庫中的所有秘密。
function listPropertiesOfSecrets(options?: ListPropertiesOfSecretsOptions): PagedAsyncIterableIterator<SecretProperties, SecretProperties[], PageSettings>
參數
- options
- ListPropertiesOfSecretsOptions
選擇性參數。
傳回
listPropertiesOfSecretVersions(string, ListPropertiesOfSecretVersionsOptions)
逐一查看保存庫中指定秘密的所有版本。 回應中提供完整密碼識別碼和屬性。 秘密不會傳回任何值。 此作業需要秘密/清單許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
for await (const secretProperties of client.listPropertiesOfSecretVersions("MySecretName")) {
const secret = await client.getSecret(secretProperties.name);
console.log("secret version: ", secret);
}
function listPropertiesOfSecretVersions(secretName: string, options?: ListPropertiesOfSecretVersionsOptions): PagedAsyncIterableIterator<SecretProperties, SecretProperties[], PageSettings>
參數
- secretName
-
string
要擷取版本的秘密名稱。
選擇性參數。
傳回
purgeDeletedSecret(string, PurgeDeletedSecretOptions)
清除刪除的秘密作業會永久移除秘密,而不會有復原的可能性。 此作業只能在已啟用虛刪除的保存庫上啟用。 此作業需要秘密/清除許可權。
使用方式範例:
const client = new SecretClient(url, credentials);
const deletePoller = await client.beginDeleteSecret("MySecretName");
await deletePoller.pollUntilDone();
await client.purgeDeletedSecret("MySecretName");
永久刪除指定的秘密。
function purgeDeletedSecret(secretName: string, options?: PurgeDeletedSecretOptions): Promise<void>
參數
- secretName
-
string
秘密的名稱。
- options
- PurgeDeletedSecretOptions
選擇性參數。
傳回
Promise<void>
restoreSecretBackup(Uint8Array, RestoreSecretBackupOptions)
將備份的秘密及其所有版本還原至保存庫。 此作業需要秘密/還原許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
let mySecretBundle = await client.backupSecret("MySecretName");
// ...
await client.restoreSecretBackup(mySecretBundle);
將備份的秘密還原至保存庫。
function restoreSecretBackup(secretBundleBackup: Uint8Array, options?: RestoreSecretBackupOptions): Promise<SecretProperties>
參數
- secretBundleBackup
-
Uint8Array
與秘密配套相關聯的備份 Blob。
- options
- RestoreSecretBackupOptions
選擇性參數。
傳回
Promise<SecretProperties>
setSecret(string, string, SetSecretOptions)
setSecret 方法會將秘密或秘密版本新增至 Azure 金鑰保存庫。 如果指定的密碼已存在,Azure 金鑰保存庫會建立該密碼的新版本。 此作業需要秘密/設定許可權。
使用方式範例:
let client = new SecretClient(url, credentials);
await client.setSecret("MySecretName", "ABC123");
在指定的金鑰保存庫中新增秘密。
function setSecret(secretName: string, value: string, options?: SetSecretOptions): Promise<KeyVaultSecret>
參數
- secretName
-
string
秘密的名稱。
- value
-
string
密碼的值。
- options
- SetSecretOptions
選擇性參數。
傳回
Promise<KeyVaultSecret>
updateSecretProperties(string, string, UpdateSecretPropertiesOptions)
updateSecret 方法會變更現有預存秘密的指定屬性。 要求中未指定的屬性會保持不變。 無法變更密碼本身的值。 此作業需要秘密/設定許可權。
使用方式範例:
let secretName = "MySecretName";
let client = new SecretClient(url, credentials);
let secret = await client.getSecret(secretName);
await client.updateSecretProperties(secretName, secret.properties.version, { enabled: false });
更新指定金鑰保存庫中與指定秘密相關聯的屬性。
function updateSecretProperties(secretName: string, secretVersion: string, options?: UpdateSecretPropertiesOptions): Promise<SecretProperties>
參數
- secretName
-
string
秘密的名稱。
- secretVersion
-
string
秘密的版本。
- options
- UpdateSecretPropertiesOptions
選擇性參數。
傳回
Promise<SecretProperties>