🍇
AzureAppServiceの構成のアプリケーション設定に秘密鍵を登録する
手順
1. リソースの作成からKey Vaultを作成する
2. キーコンテナーを作成する。
3. アクセス制御に(IAM)から権限を付与する
シークレットを登録しようとすると「この操作はRBACで許可されていません。」と表示され登録できないのでアクセス制御(IAM)から登録できる権限を付与します。
- ロールの割り当ての追加を行います。
- ロールはキーコンテナー管理者を選択しユーザを選択します。
4. 秘密鍵を登録する
画面のシークレット > 生成/インポートから秘密鍵を登録しても正しく読み込んでもらえないのでAzureCLIで登録します。
-
Azureにログインします。
az login
-
秘密鍵のファイルを用意して登録します。
ここではsecret.txtを用意しました。中身は
----BEGIN PRIVATE KEY-----
が1行目で最終行が----END PRIVATE KEY---—
です。az keyvault secret set --vault-name "SharedConnectionKey" --name "APP-PRIVATE-KEY" --file "secret.txt"
-
シークレットに
—name
で指定したキーが登録されていれば成功です。
-
シークレット識別子をメモしておきます。
5. アプリにキーを読み取る権限を付与する
-
状態をオンに変更します。
-
Azureロールの割り当てからアプリにキーを読み取る権限を付与します。
6. AzureAppServiceの構成からアプリケーション設定を追加する
-
アプリケーション設定から追加する
-
先程4.4でメモしたシークレット識別子をSecretUri=の後に記載する
@Microsoft.KeyVault(SecretUri=シークレット識別子) -
OKで追加して構成を保存します。
-
キーコンテナーの参照にチェックマークが付けば完了です。
※追加直後はiマークがついていて少し時間が経ってから更新するとチェックマークになります。
Discussion