LoginSignup
1
0

More than 1 year has passed since last update.

KeyVaultに格納したシークレットをAKSで読みだす Managed Identity 編

Posted at

AKSクラスタとKeyVaultを連携するにはakv2k8sを使うのが楽らしい。

akv2k8sの公式ページ
https://akv2k8s.io/

が、チュートリアル を見ると

az keyvault set-policy -n akv2k8s-test --spn <spn for akv2k8s> --secret-permissions get 

とAKSに Service Principal が付与されている前提で、読みだしパーミッションを設定されていらっしゃる。
Azureはニワカなのでよくわかっていなかったのですが、Azure内で完結するなら、システム割り当ての Managed Identity 使って認証するのがよさそうです。

Azure リソースのマネージド ID とは
https://docs.microsoft.com/ja-jp/azure/active-directory/managed-identities-azure-resources/overview

AKSクラスタの Managed Identity は、クラスタを作成した際に自動的に追加される、リソースグループ MC_[リソースグループ名]_[クラスタ名] 内にある、 種類マネージドIDの [クラスタ名]-aks-agentpool を見ると書いてあります。
オブジェクト(プリンシパル)ID というやつですな。 カッコ書きとかいらないので、呼称を統一してほしい...

あとは、KeyVaultのアクセスポリシーに、調べた Managed Identityでシークレット読み出し権限を付与するだけ。
わかってみれば簡単でした。

  • 参考

Azure Kubernetes ServiceのPodからManaged identities(旧MSI)認証でKey Vaultの情報を取得する

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0