App Service のアプリから Blob Storage を読みたい。認証情報の扱いとして最も安全なものは?
正答
- ストレージのアカウントキーをソースコードに直接書く
- 接続文字列をリポジトリの設定ファイルに入れてコミットする
- 有効期限 10 年の SAS を作ってアプリ設定に入れる
- マネージド ID を有効にし、その ID に必要なロールを割り当てる
解説
マネージド ID は、App Service や VM に Azure が管理する ID を付ける仕組みで、アプリは秘密情報を持たずに Microsoft Entra ID からトークンを得て Storage や Key Vault に接続できる。資格情報の発行とローテーションは Azure が行うため、漏えいやローテーション忘れの心配がない。アカウントキーはストレージアカウント全体への完全な権限で、コードやリポジトリに入れると漏えいしたときの被害が最大になる。期限の長い SAS も、漏れたら期限まで使われ続ける。
この問題を含む Azure のテストを制限時間つきで解く
Azureクイズへ