共用方式為


KeyVaultAccessControlClient class

KeyVaultAccessControlClient 提供方法,可在任何指定的 Azure 金鑰保存庫 實例中管理存取控制和角色指派。 用戶端支援建立、擷取和刪除角色。

建構函式

KeyVaultAccessControlClient(string, TokenCredential, AccessControlClientOptions)

建立 KeyVaultAccessControlClient 的實例。

使用方式範例:

import { KeyVaultAccessControlClient } from "@azure/keyvault-admin";
import { DefaultAzureCredential } from "@azure/identity";

let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;
let credentials = new DefaultAzureCredential();

let client = new KeyVaultAccessControlClient(vaultUrl, credentials);

屬性

vaultUrl

保存庫的基底 URL

方法

createRoleAssignment(string, string, string, string, CreateRoleAssignmentOptions)

在 Azure 金鑰保存庫中建立角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.listRoleDefinitions("/").next();
const principalId = "4871f6a6-374f-4b6b-8b0c-f5d84db823f6";
const result = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517", roleDefinition, principalId);

建立新的角色指派。

deleteRoleAssignment(string, string, DeleteRoleAssignmentOptions)

刪除先前在 Azure 金鑰保存庫中建立的角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleAssignment = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517");
await client.deleteRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);

刪除現有的角色指派。

deleteRoleDefinition(string, string, DeleteRoleDefinitionOptions)

刪除先前在 Azure 金鑰保存庫中建立的自訂角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.setRoleDefinition("/", "23b8bb1a-39c0-4c89-a85b-dd3c99273a8a", []);
await client.deleteRoleDefinition("/", roleDefinition.name);
getRoleAssignment(string, string, GetRoleAssignmentOptions)

取得先前在 Azure 金鑰保存庫中建立的角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
let roleAssignment = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517");
roleAssignment = const await client.getRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);
console.log(roleAssignment);

取得現有的角色指派。

getRoleDefinition(string, string, GetRoleDefinitionOptions)

從 Azure 金鑰保存庫取得角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.getRoleDefinition("/", "b86a8fe4-44ce-4948-aee5-eccb2c155cd7");
console.log(roleDefinition);
listRoleAssignments(string, ListRoleAssignmentsOptions)

逐一查看 Azure 金鑰保存庫中所有可用的角色指派。

使用方式範例:

let client = new KeyVaultAccessControlClient(url, credentials);
for await (const roleAssignment of client.listRoleAssignments("/")) {
  console.log("Role assignment: ", roleAssignment);
}

列出指定範圍中的所有角色指派。

listRoleDefinitions(string, ListRoleDefinitionsOptions)

逐一查看 Azure 金鑰保存庫中所有可用的角色定義。

使用方式範例:

let client = new KeyVaultAccessControlClient(url, credentials);
for await (const roleDefinitions of client.listRoleDefinitions("/")) {
  console.log("Role definition: ", roleDefinitions);
}

列出指定範圍中的所有角色定義。

setRoleDefinition(string, SetRoleDefinitionOptions)

在 Azure 金鑰保存庫中建立或更新角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const permissions = [{ dataActions: [KnownKeyVaultDataAction.BackupHsmKeys] }];
const roleDefinitionName = "23b8bb1a-39c0-4c89-a85b-dd3c99273a8a";
const roleDefinition = await client.setRoleDefinition(KnownKeyVaultRoleScope.Global, { permissions, roleDefinitionName });
console.log(roleDefinition);

建構函式詳細資料

KeyVaultAccessControlClient(string, TokenCredential, AccessControlClientOptions)

建立 KeyVaultAccessControlClient 的實例。

使用方式範例:

import { KeyVaultAccessControlClient } from "@azure/keyvault-admin";
import { DefaultAzureCredential } from "@azure/identity";

let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;
let credentials = new DefaultAzureCredential();

let client = new KeyVaultAccessControlClient(vaultUrl, credentials);
new KeyVaultAccessControlClient(vaultUrl: string, credential: TokenCredential, options?: AccessControlClientOptions)

參數

vaultUrl

string

金鑰保存庫的 URL。 它應該具有此圖形: https://${your-key-vault-name}.vault.azure.net 。 您應該驗證此 URL 參考有效的金鑰保存庫或受控 HSM 資源。 如需詳細資訊,請參閱<https://aka.ms/azsdk/blog/vault-uri>。

credential
TokenCredential

實作 介面的物件, TokenCredential 用來驗證對服務的要求。 @azure/identity使用套件來建立符合您需求的認證。

options
AccessControlClientOptions

用來設定 金鑰保存庫 API 要求的選項。 省略此參數以使用預設組態。

屬性詳細資料

vaultUrl

保存庫的基底 URL

vaultUrl: string

屬性值

string

方法詳細資料

createRoleAssignment(string, string, string, string, CreateRoleAssignmentOptions)

在 Azure 金鑰保存庫中建立角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.listRoleDefinitions("/").next();
const principalId = "4871f6a6-374f-4b6b-8b0c-f5d84db823f6";
const result = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517", roleDefinition, principalId);

建立新的角色指派。

function createRoleAssignment(roleScope: string, name: string, roleDefinitionId: string, principalId: string, options?: CreateRoleAssignmentOptions): Promise<KeyVaultRoleAssignment>

參數

roleScope

string

角色指派的範圍。

name

string

角色指派的名稱。 必須是 UUID。

roleDefinitionId

string

角色指派中使用的角色定義識別碼。

principalId

string

指派給角色的主體識別碼。 這會對應至 Active Directory 內的識別碼。 它可以指向使用者、服務主體或安全性群組。

options
CreateRoleAssignmentOptions

選擇性參數。

傳回

deleteRoleAssignment(string, string, DeleteRoleAssignmentOptions)

刪除先前在 Azure 金鑰保存庫中建立的角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleAssignment = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517");
await client.deleteRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);

刪除現有的角色指派。

function deleteRoleAssignment(roleScope: string, name: string, options?: DeleteRoleAssignmentOptions): Promise<void>

參數

roleScope

string

角色指派的範圍。

name

string

角色指派的名稱。

options
DeleteRoleAssignmentOptions

選擇性參數。

傳回

Promise<void>

deleteRoleDefinition(string, string, DeleteRoleDefinitionOptions)

刪除先前在 Azure 金鑰保存庫中建立的自訂角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.setRoleDefinition("/", "23b8bb1a-39c0-4c89-a85b-dd3c99273a8a", []);
await client.deleteRoleDefinition("/", roleDefinition.name);
function deleteRoleDefinition(roleScope: string, name: string, options?: DeleteRoleDefinitionOptions): Promise<void>

參數

roleScope

string

角色定義的範圍。

name

string

要刪除的角色定義名稱。

options
DeleteRoleDefinitionOptions

選擇性參數。

傳回

Promise<void>

getRoleAssignment(string, string, GetRoleAssignmentOptions)

取得先前在 Azure 金鑰保存庫中建立的角色指派。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
let roleAssignment = await client.createRoleAssignment("/", "295c179b-9ad3-4117-99cd-b1aa66cf4517");
roleAssignment = const await client.getRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);
console.log(roleAssignment);

取得現有的角色指派。

function getRoleAssignment(roleScope: string, name: string, options?: GetRoleAssignmentOptions): Promise<KeyVaultRoleAssignment>

參數

roleScope

string

角色指派的範圍。

name

string

角色指派的名稱。

options
GetRoleAssignmentOptions

選擇性參數。

傳回

getRoleDefinition(string, string, GetRoleDefinitionOptions)

從 Azure 金鑰保存庫取得角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const roleDefinition = await client.getRoleDefinition("/", "b86a8fe4-44ce-4948-aee5-eccb2c155cd7");
console.log(roleDefinition);
function getRoleDefinition(roleScope: string, name: string, options?: GetRoleDefinitionOptions): Promise<KeyVaultRoleDefinition>

參數

roleScope

string

角色定義的範圍。

name

string

角色定義的名稱。

options
GetRoleDefinitionOptions

選擇性參數。

傳回

listRoleAssignments(string, ListRoleAssignmentsOptions)

逐一查看 Azure 金鑰保存庫中所有可用的角色指派。

使用方式範例:

let client = new KeyVaultAccessControlClient(url, credentials);
for await (const roleAssignment of client.listRoleAssignments("/")) {
  console.log("Role assignment: ", roleAssignment);
}

列出指定範圍中的所有角色指派。

function listRoleAssignments(roleScope: string, options?: ListRoleAssignmentsOptions): PagedAsyncIterableIterator<KeyVaultRoleAssignment, KeyVaultRoleAssignment[], PageSettings>

參數

roleScope

string

角色指派的範圍。

options
ListRoleAssignmentsOptions

選擇性參數。

傳回

listRoleDefinitions(string, ListRoleDefinitionsOptions)

逐一查看 Azure 金鑰保存庫中所有可用的角色定義。

使用方式範例:

let client = new KeyVaultAccessControlClient(url, credentials);
for await (const roleDefinitions of client.listRoleDefinitions("/")) {
  console.log("Role definition: ", roleDefinitions);
}

列出指定範圍中的所有角色定義。

function listRoleDefinitions(roleScope: string, options?: ListRoleDefinitionsOptions): PagedAsyncIterableIterator<KeyVaultRoleDefinition, KeyVaultRoleDefinition[], PageSettings>

參數

roleScope

string

角色定義的範圍。

options
ListRoleDefinitionsOptions

選擇性參數。

傳回

setRoleDefinition(string, SetRoleDefinitionOptions)

在 Azure 金鑰保存庫中建立或更新角色定義。

使用方式範例:

const client = new KeyVaultAccessControlClient(url, credentials);
const permissions = [{ dataActions: [KnownKeyVaultDataAction.BackupHsmKeys] }];
const roleDefinitionName = "23b8bb1a-39c0-4c89-a85b-dd3c99273a8a";
const roleDefinition = await client.setRoleDefinition(KnownKeyVaultRoleScope.Global, { permissions, roleDefinitionName });
console.log(roleDefinition);
function setRoleDefinition(roleScope: string, options?: SetRoleDefinitionOptions): Promise<KeyVaultRoleDefinition>

參數

roleScope

string

角色定義的範圍。

options
SetRoleDefinitionOptions

選擇性參數。

傳回