JavaScript を使用して Azure Key Vault でキーとバージョンを一覧表示する

適切なプログラムの認証資格情報を使用して KeyClient を作成します。

すべてのキーを一覧表示する

反復可能な listPropertiesOfKeys を使用して、すべてのキーの現在のバージョンを一覧表示します。

import { KeyClient, CreateKeyOptions, KeyVaultKey } from '@azure/keyvault-keys';
import { DefaultAzureCredential } from '@azure/identity';

const credential = new DefaultAzureCredential();
const client = new KeyClient(
    `https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
    credential
);

// Get latest version of (not soft-deleted) keys 
for await (const keyProperties of client.listPropertiesOfKeys()) {
    console.log(keyProperties.version);
}

返される KeyProperties オブジェクトには、キーのバージョンが含まれています。

すべてのキーをページ別に一覧表示する

Azure Key Vault 内にあるすべてのキーを一覧表示するには、listPropertiesOfKeys メソッドを使用して、PageSettings オブジェクトを設定し、ページのシークレット プロパティを一度に取得します。

import { KeyClient } from '@azure/keyvault-keys';
import { DefaultAzureCredential } from '@azure/identity';

const credential = new DefaultAzureCredential();
const client = new KeyClient(
    `https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
    credential
);

let page = 1;
const maxPageSize = 5;

// Get latest version of not-deleted keys 
for await (const keyProperties of client.listPropertiesOfKeys().byPage({maxPageSize})) {
    console.log(`Page ${page++} ---------------------`)
    
    for (const props of keyProperties) {
        console.log(`${props.name}`);
    }
}

返される KeyProperties オブジェクトには、キーのバージョンが含まれています。

すべてのバージョンのキーを一覧表示する

Azure Key Vault 内にあるキーの全バージョンを一覧表示するには、listPropertiesOfKeyVersions メソッドを使用します。

import { KeyClient } from '@azure/keyvault-keys';
import { DefaultAzureCredential } from '@azure/identity';

const credential = new DefaultAzureCredential();
const client = new KeyClient(
    `https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
    credential
);

// Get all versions of key
for await (const versionProperties of client.listPropertiesOfKeyVersions(
    keyName
)) {
    console.log(`\tversion: ${versionProperties.version} created on ${versionProperties.createdOn}`);
}

返される KeyProperties オブジェクトには、キーのバージョンが含まれています。

結果をページングする方法については、「ページごとにすべてのキーを一覧表示する」の例を参照してください。

削除したキーを一覧表示する

Azure Key Vault 内にあるすべての削除されたキーを一覧表示するには、listDeletedKeys メソッドを使用します。

import { KeyClient } from '@azure/keyvault-keys';
import { DefaultAzureCredential } from '@azure/identity';

const credential = new DefaultAzureCredential();
const client = new KeyClient(
    `https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
    credential
);

for await (const deletedKey of client.listDeletedKeys()) {
    console.log(
        `Deleted: ${deletedKey.name} deleted on ${deletedKey.properties.deletedOn}, to be purged on ${deletedKey.properties.scheduledPurgeDate}`
    );
}

deletedKey オブジェクトは、DeletedKey オブジェクトであり、次のような追加のプロパティを持つ KeyProperties オブジェクトが含まれます。

  • deletedOn - キーが削除された時刻。
  • scheduledPurgeDate - キーの消去がスケジュールされている日付。 キーが消去された後は、復元できません。 キーをバックアップした場合は、同じ名前とそのすべてのバージョンで復元できます。

結果をページングする方法については、「ページごとにすべてのキーを一覧表示する」の例を参照してください。

次のステップ