SecretClient class 
SecretClient 提供了在 Azure Key Vault 中管理 KeyVaultSecret 的方法。 客户端支持创建、检索、更新、删除、清除、备份、还原和列出 KeyVaultSecrets。 客户端还支持列出已启用软删除的 Azure Key Vault DeletedSecret。
构造函数
| Secret | 创建 SecretClient 的实例。 示例用法:  | 
属性
| vault | 保管库的基 URL | 
方法
| backup | 请求将指定机密的备份下载到客户端。 将下载所有版本的机密。 此作需要机密/备份权限。 示例用法: 备份指定的机密。 | 
| begin | 删除存储在 Azure Key Vault 中的机密。 此函数返回一个长时间运行的作轮询程序,该轮询程序允许无限期等待,直到删除机密。 此作需要机密/删除权限。 示例用法: 从指定的密钥保管库中删除机密。 | 
| begin | 恢复指定保管库中已删除的机密。 此函数返回一个长时间运行的作轮询程序,该轮询程序允许无限期等待,直到机密恢复为止。 此作需要机密/恢复权限。 示例用法: 将已删除的机密恢复到最新版本。 | 
| get | getDeletedSecret 方法返回指定的已删除机密及其属性。 此作需要机密/获取权限。 示例用法: 获取指定的已删除机密。 | 
| get | getSecret 方法适用于 Azure Key Vault 中存储的任何机密。 此作需要机密/获取权限。 示例用法: 从给定密钥保管库获取指定的机密。 | 
| list | 循环访问保管库中已删除的机密。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。 示例用法: 列出保管库中的所有机密。 | 
| list | 循环访问保管库中所有机密的最新版本。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。 示例用法: 列出保管库中的所有机密。 | 
| list | 循环访问保管库中给定机密的所有版本。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。 示例用法:  | 
| purge | 清除删除的机密作会永久删除机密,且无法恢复。 只能在启用软删除的保管库上启用此作。 此作需要机密/清除权限。 示例用法: 永久删除指定的机密。 | 
| restore | 将备份的机密及其所有版本还原到保管库。 此作需要机密/还原权限。 示例用法: 将备份的机密还原到保管库。 | 
| set | setSecret 方法将机密或机密版本添加到 Azure Key Vault。 如果已存在命名机密,Azure Key Vault 将创建该机密的新版本。 此作需要机密/设置权限。 示例用法: 在指定的密钥保管库中添加机密。 | 
| update | updateSecret 方法更改现有存储机密的指定属性。 未在请求中指定的属性保持不变。 无法更改机密本身的值。 此作需要机密/设置权限。 示例用法: 更新与给定密钥保管库中的指定机密关联的属性。 | 
构造函数详细信息
		SecretClient(string, TokenCredential, SecretClientOptions)
	    
	创建 SecretClient 的实例。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
// Build the URL to reach your key vault
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
// Lastly, create our keys client and connect to the service
const client = new SecretClient(url, credential);
new SecretClient(vaultUrl: string, credential: TokenCredential, pipelineOptions?: SecretClientOptions)参数
- vaultUrl
- 
				string 
保管库的基 URL。 应验证此 URL 是否引用有效的 Key Vault 资源。 有关详细信息,请参阅 https://aka.ms/azsdk/blog/vault-uri。
- credential
- TokenCredential
实现用于对服务的请求进行身份验证的 TokenCredential 接口的对象。 使用 @azure/identity 包创建符合需求的凭据。
- pipelineOptions
- SecretClientOptions
用于配置 Key Vault API 请求的管道选项。 省略此参数以使用默认管道配置。
属性详细信息
		vaultUrl
	 
	保管库的基 URL
vaultUrl: string属性值
string
方法详细信息
		backupSecret(string, BackupSecretOptions)
	   
	请求将指定机密的备份下载到客户端。 将下载所有版本的机密。 此作需要机密/备份权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const backupResult = await client.backupSecret(secretName);
备份指定的机密。
function backupSecret(secretName: string, options?: BackupSecretOptions): Promise<undefined | Uint8Array>参数
- secretName
- 
				string 
机密的名称。
- options
- BackupSecretOptions
可选参数。
返回
Promise<undefined | Uint8Array>
		beginDeleteSecret(string, BeginDeleteSecretOptions)
	     
	删除存储在 Azure Key Vault 中的机密。 此函数返回一个长时间运行的作轮询程序,该轮询程序允许无限期等待,直到删除机密。
此作需要机密/删除权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
await client.beginDeleteSecret(secretName);
从指定的密钥保管库中删除机密。
function beginDeleteSecret(name: string, options?: BeginDeleteSecretOptions): Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>>参数
- name
- 
				string 
- options
- BeginDeleteSecretOptions
可选参数。
返回
Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>>
		beginRecoverDeletedSecret(string, BeginRecoverDeletedSecretOptions)
	       
	恢复指定保管库中已删除的机密。 此函数返回一个长时间运行的作轮询程序,该轮询程序允许无限期等待,直到机密恢复为止。
此作需要机密/恢复权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const deletePoller = await client.beginDeleteSecret(secretName);
await deletePoller.pollUntilDone();
const recoverPoller = await client.beginRecoverDeletedSecret(secretName);
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 方法返回指定的已删除机密及其属性。 此作需要机密/获取权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const result = await client.getDeletedSecret("MyDeletedSecret");
获取指定的已删除机密。
function getDeletedSecret(secretName: string, options?: GetDeletedSecretOptions): Promise<DeletedSecret>参数
- secretName
- 
				string 
机密的名称。
- options
- GetDeletedSecretOptions
可选参数。
返回
Promise<DeletedSecret>
		getSecret(string, GetSecretOptions)
	   
	getSecret 方法适用于 Azure Key Vault 中存储的任何机密。 此作需要机密/获取权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const latestSecret = await client.getSecret(secretName);
console.log(`Latest version of the secret ${secretName}: `, latestSecret);
const specificSecret = await client.getSecret(secretName, {
  version: latestSecret.properties.version!,
});
console.log(
  `The secret ${secretName} at the version ${latestSecret.properties.version!}: `,
  specificSecret,
);
从给定密钥保管库获取指定的机密。
function getSecret(secretName: string, options?: GetSecretOptions): Promise<KeyVaultSecret>参数
- secretName
- 
				string 
机密的名称。
- options
- GetSecretOptions
可选参数。
返回
Promise<KeyVaultSecret>
		listDeletedSecrets(ListDeletedSecretsOptions)
	     
	循环访问保管库中已删除的机密。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
for await (const secretProperties of client.listPropertiesOfSecrets()) {
  console.log("Secret properties: ", secretProperties);
}
for await (const deletedSecret of client.listDeletedSecrets()) {
  console.log("Deleted secret: ", deletedSecret);
}
for await (const versionProperties of client.listPropertiesOfSecretVersions(secretName)) {
  console.log("Version properties: ", versionProperties);
}
列出保管库中的所有机密。
function listDeletedSecrets(options?: ListDeletedSecretsOptions): PagedAsyncIterableIterator<DeletedSecret, DeletedSecret[], PageSettings>参数
- options
- ListDeletedSecretsOptions
可选参数。
返回
		listPropertiesOfSecrets(ListPropertiesOfSecretsOptions)
	     
	循环访问保管库中所有机密的最新版本。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
for await (const secretProperties of client.listPropertiesOfSecrets()) {
  console.log("Secret properties: ", secretProperties);
}
for await (const deletedSecret of client.listDeletedSecrets()) {
  console.log("Deleted secret: ", deletedSecret);
}
for await (const versionProperties of client.listPropertiesOfSecretVersions(secretName)) {
  console.log("Version properties: ", versionProperties);
}
列出保管库中的所有机密。
function listPropertiesOfSecrets(options?: ListPropertiesOfSecretsOptions): PagedAsyncIterableIterator<SecretProperties, SecretProperties[], PageSettings>参数
- options
- ListPropertiesOfSecretsOptions
可选参数。
返回
		listPropertiesOfSecretVersions(string, ListPropertiesOfSecretVersionsOptions)
	       
	循环访问保管库中给定机密的所有版本。 响应中提供了完整的机密标识符和属性。 不会为机密返回任何值。 此作需要机密/列表权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
for await (const secretProperties of client.listPropertiesOfSecrets()) {
  console.log("Secret properties: ", secretProperties);
}
for await (const deletedSecret of client.listDeletedSecrets()) {
  console.log("Deleted secret: ", deletedSecret);
}
for await (const versionProperties of client.listPropertiesOfSecretVersions(secretName)) {
  console.log("Version properties: ", versionProperties);
}
function listPropertiesOfSecretVersions(secretName: string, options?: ListPropertiesOfSecretVersionsOptions): PagedAsyncIterableIterator<SecretProperties, SecretProperties[], PageSettings>参数
- secretName
- 
				string 
要为其提取版本的机密的名称。
可选参数。
返回
		purgeDeletedSecret(string, PurgeDeletedSecretOptions)
	     
	清除删除的机密作会永久删除机密,且无法恢复。 只能在启用软删除的保管库上启用此作。 此作需要机密/清除权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const deletePoller = await client.beginDeleteSecret(secretName);
await deletePoller.pollUntilDone();
await client.purgeDeletedSecret(secretName);
永久删除指定的机密。
function purgeDeletedSecret(secretName: string, options?: PurgeDeletedSecretOptions): Promise<void>参数
- secretName
- 
				string 
机密的名称。
- options
- PurgeDeletedSecretOptions
可选参数。
返回
Promise<void>
		restoreSecretBackup(Uint8Array, RestoreSecretBackupOptions)
	     
	将备份的机密及其所有版本还原到保管库。 此作需要机密/还原权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const backupResult = await client.backupSecret(secretName);
await client.restoreSecretBackup(backupResult);
将备份的机密还原到保管库。
function restoreSecretBackup(secretBundleBackup: Uint8Array, options?: RestoreSecretBackupOptions): Promise<SecretProperties>参数
- secretBundleBackup
- 
				Uint8Array 
与机密捆绑包关联的备份 Blob。
- options
- RestoreSecretBackupOptions
可选参数。
返回
Promise<SecretProperties>
		setSecret(string, string, SetSecretOptions)
	   
	setSecret 方法将机密或机密版本添加到 Azure Key Vault。 如果已存在命名机密,Azure Key Vault 将创建该机密的新版本。 此作需要机密/设置权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const result = await client.setSecret(secretName, "MySecretValue");
console.log("result: ", result);
在指定的密钥保管库中添加机密。
function setSecret(secretName: string, value: string, options?: SetSecretOptions): Promise<KeyVaultSecret>参数
- secretName
- 
				string 
机密的名称。
- value
- 
				string 
机密的值。
- options
- SetSecretOptions
可选参数。
返回
Promise<KeyVaultSecret>
		updateSecretProperties(string, string, UpdateSecretPropertiesOptions)
	     
	updateSecret 方法更改现有存储机密的指定属性。 未在请求中指定的属性保持不变。 无法更改机密本身的值。 此作需要机密/设置权限。
示例用法:
import { DefaultAzureCredential } from "@azure/identity";
import { SecretClient } from "@azure/keyvault-secrets";
const credential = new DefaultAzureCredential();
const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;
const client = new SecretClient(url, credential);
const secretName = "MySecretName";
const result = await client.getSecret(secretName);
await client.updateSecretProperties(secretName, result.properties.version, { enabled: false });
更新与给定密钥保管库中的指定机密关联的属性。
function updateSecretProperties(secretName: string, secretVersion: string, options?: UpdateSecretPropertiesOptions): Promise<SecretProperties>参数
- secretName
- 
				string 
机密的名称。
- secretVersion
- 
				string 
机密的版本。
- options
- UpdateSecretPropertiesOptions
可选参数。
返回
Promise<SecretProperties>