Azure Key Valut は、トークン、パスワード、証明書、API キー、接続文字列、その他のシークレットを安全に格納し、それらへのアクセスを厳密に制御できるサービス。(参考)
目次
Azure Functions に Managed Id を設定
デプロイ済みの Azure Functions の設定から ID を選択する。
システム割り当て済みをオンにする。
Azure Key Vault を設定
Azure Key Valut を作成していなければ作成する。
作成した Key Valut で設定からシークレットを選択し、キーと値を登録する。
続いて、設定からアクセスポリシーを選択し、アクセスポリシーを追加する。
シークレットのアクセス許可を「取得」、プリンシパルの選択で Azure Functions のオブジェクトIDを入力して、リソースを選択する。追加し終わったら一覧で保存する。
アプリケーション設定に Key Vault の識別子を設定
Key Valut で作成したキーを開いて、シークレット識別子をコピーする。
Azure Functions のアプリケーション設定で、シークレット識別子を以下の書式で値として設定する。
@Microsoft.KeyVault(SecretUri=<シークレット識別子>)
正常に接続できるとキーコンテナーの参照にチェックが付く。
コードからアプリケーション設定を取得すると Key Vault の値が展開される。
var connectionString = Configuration["BLOB_CONNECTION_STRING_KEYVAULT"]
参考
関連記事
- Azure Functions で Azure Cosmos DB (Table) を操作する
- Azure Functions で Azure Table Storage を操作する
- Azure Functions で Azure Queue Storage を操作する
- Azure Functions で Azure Blob Storage にファイルを保存する
- Azure Functions で Azure Blob Storage からファイルを取得する
- Azure Functions で Azure Storage への接続情報
- Azure Functions で Startup クラスを定義して DI を利用する
- Azure Managed ID を利用する