次の方法で共有


クイック スタート: Azure CLI を使用して Azure Key Vault との間でシークレットの設定と取得を行う

このクイックスタートでは、Azure CLI を使用して Azure Key Vault にキー コンテナーを作成します。 Azure Key Vault は、セキュリティで保護されたシークレット ストアとして機能するクラウド サービスです。 キー、パスワード、証明書、およびその他のシークレットを安全に保管することができます。 Key Vault の詳細については、概要に関するページを参照してください。 Azure CLI は、コマンドまたはスクリプトを使用して Azure リソースを作成および管理するために使用します。 この作業を完了したら、シークレットを格納します。

Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。

[前提条件]

  • Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の概要」を参照してください。

  • CLI 参照コマンドをローカルで実行する場合は、Azure CLI を インストール します。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。

    • ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、「 Azure CLI を使用した Azure への認証」を参照してください。

    • メッセージが表示されたら、最初に使用するときに Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、「Azure CLI で拡張機能を使用および管理する」を参照してください。

    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。

このクイックスタートには、Azure CLI のバージョン 2.0.4 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。

リソース グループを作成する

リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。 az group create コマンドを使用して、myResourceGroup という名前のリソース グループを eastus の場所に作成します。

az group create --name "myResourceGroup" --___location "EastUS"

キー保管庫を作成する

Azure CLI az keyvault create コマンドを使用して、前の手順のリソース グループに Key Vault を作成します。 いくつかの情報を指定する必要があります。

  • キー コンテナー名: 数字 (0 から 9)、文字 (a から z、A から Z)、およびハイフン (-) のみを含む 3 から 24 文字の文字列

    Von Bedeutung

    各キー ボールトには一意の名前が必要です。 次の例では、<your-unique-keyvault-name> をお使いのキー コンテナーの名前に置き換えてください。

  • リソース グループ名: myResourceGroup

  • 場所: EastUS

az keyvault create --name "<your-unique-keyvault-name>" --resource-group "myResourceGroup"

このコマンドの出力では、新しく作成したキー コンテナーのプロパティが表示されます。 これらの 2 つのプロパティをメモします。

  • コンテナー名: --name パラメーターに指定した名前。
  • コンテナー URI: この例では、コンテナー URI は https://<your-unique-keyvault-name>.vault.azure.net/ です。 REST API を使用してボールトを利用するアプリケーションは、この URI を使用する必要があります。

Key Vault でシークレットを管理するアクセス許可をユーザー アカウントに付与する

ロールベースのアクセス制御 (RBAC) を使用してキー コンテナーへのアクセス許可を取得するには、Azure CLI コマンドの az role assignment create を使用して、"ユーザー プリンシパル名" (UPN) にロールを割り当てます。

az role assignment create --role "Key Vault Secrets Officer" --assignee "<upn>" --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<your-unique-keyvault-name>"

<upn>、<subscription-id>、<resource-group-name>、および<your-unique-keyvault-name> で囲まれた部分を実際の値に置き換えてください。 UPN は一般的に、メール アドレスの形式を取ります (例: username@___domain.com)。

Key Vault にシークレットを追加する

シークレットをコンテナーに追加するには、いくつかの追加の手順を実行する必要があります。 このパスワードは、アプリケーションによって使用される可能性があります。 パスワードは ExamplePassword と呼ばれ、値 hVFkk965BuUv がその中に格納されます。

下の Azure CLI az keyvault secret set コマンドを使用して、値 hVFkk965BuUv を格納するシークレットを ExamplePassword という名前の Key Vault に作成します。

az keyvault secret set --vault-name "<your-unique-keyvault-name>" --name "ExamplePassword" --value "hVFkk965BuUv"

Key Vault からシークレットを取得する

これで、Azure Key Vault に追加したパスワードは、その URI を使用すると参照できます。 https://<your-unique-keyvault-name>.vault.azure.net/secrets/ExamplePassword を使用して、現在のバージョンを取得します。

シークレットに含まれる値をプレーンテキストとして表示するには、Azure CLI の az keyvault secret show コマンドを使用します。

az keyvault secret show --name "ExamplePassword" --vault-name "<your-unique-keyvault-name>" --query "value"

これで、キー コンテナーを作成し、シークレットを格納した後、取得しました。

リソースをクリーンアップする

このコレクションの他のクイックスタートとチュートリアルは、このクイックスタートに基づいています。 後続のクイック スタートおよびチュートリアルを引き続き実行する場合は、これらのリソースをそのまま残しておくことをお勧めします。

必要がなくなったら、Azure CLI の az group delete コマンドを使用して、リソース グループおよびすべての関連リソースを削除できます。

az group delete --name "myResourceGroup"

次のステップ

このクイックスタートでは、Key Vault を作成してシークレットを格納しました。 Key Vault およびアプリケーションとの統合方法の詳細については、引き続き以下の記事を参照してください。