Azure Key Vault、アクセスポリシーを2027年2月に廃止。Azure RBACへの完全移行が必須に
Microsoftは、Azure Key Vaultの従来型権限モデル「アクセスポリシー」を2027年2月に廃止し、Azure RBACへ一本化する方針を決定しました。
【ニュースの概要】
Microsoftは2024年2月、Azure Key Vaultにおける従来のアクセス制御モデルの廃止スケジュールを公表しました。セキュリティガバナンスの強化と管理モデルの統合を目的としています。
廃止予定日: 2027年2月28日(JST:2027年3月1日未明)
対象機能: 従来の「コンテナーアクセスポリシー(Vault Access Policies)」モデル。
推奨アクション: 既存のKey Vaultを「Azureロールベースのアクセス制御(Azure RBAC)」モデルへ移行すること。
【技術的背景と仕組み】
従来のアクセスポリシーモデルは、Key Vaultごとに独自の権限リストを持つ仕様であり、Azure全体の統合的な権限管理(Azure RBAC)とは分離されていました。これにより、大規模な環境でのガバナンス適用や、きめ細やかな権限分離(特定のシークレットのみへのアクセス許可など)が困難という課題がありました。
Azure RBACへの移行により、管理プレーン(リソースの作成・削除)とデータプレーン(シークレットの読み取り・書き込み)がAzure Resource Manager(ARM)の下で統合され、一貫したセキュリティポリシーの適用が可能になります。
graph TD Identity["ユーザー/サービスプリンシパル"] -->|認証| EntraID["Microsoft Entra ID"] EntraID -->|認可判断| RBAC["Azure RBACモデル"] RBAC -->|統一的な制御| Vault["Azure Key Vault"] Vault -->|個別アクセス許可| Data["シークレット/キー/証明書"]
※従来のモデルでは、Vault単位で「アクセスポリシー」という独自のリストを参照していたため、Azureの標準的なロール割り当てフローから外れる仕組みでした。
【コード・コマンド例】
既存のKey Vaultに対して、Azure RBACを有効化するためのAzure CLIコマンド例です。
# 特定のKey VaultのアクセスモデルをAzure RBACに切り替える
az keyvault update \
--name "MySecureVault" \
--resource-group "MyResourceGroup" \
--enable-rbac-authorization true
# 特定のユーザーに「Key Vault シークレット ユーザー」ロールを割り当てる例
az role assignment create \
--role "Key Vault Secrets User" \
--assignee "user@example.com" \
--scope "/subscriptions/<sub-id>/resourceGroups/<rg-id>/providers/Microsoft.KeyVault/vaults/MySecureVault"
【インパクトと今後の展望】
(事実) 2027年2月28日以降、従来のアクセスポリシーを使用しているアプリケーションやスクリプトは、Key Vaultへのアクセスに失敗する可能性があります。
(考察) この移行は、企業のセキュリティ担当者にとって「管理の簡素化」という大きなメリットをもたらします。一方で、長年運用されているシステムでは、ARMテンプレートやTerraformコード、デプロイパイプラインに「アクセスポリシー」の定義がハードコードされているケースが多く、修正範囲は広範に及ぶと予測されます。 特に、アクセスポリシーは「最大1024件」という制限がありましたが、RBACへ移行することでサブスクリプション全体のロール割り当て制限(通常4000件)の影響を受けるようになるため、大規模環境ではリソースグループ単位でのロール継承を設計に組み込む必要があります。
【まとめ】
2027年2月28日をもって、旧来のKey Vaultアクセスポリシーは完全に廃止される。
Azure RBACへの移行により、Entra IDと統合された、より高度で一貫した権限管理が可能になる。
既存のIaC(Infrastructure as Code)や自動化スクリプトの改修が必要となるため、早期のインベントリ確認と移行計画の策定が推奨される。
参考リンク:

