【初心者向け】Azure マネージドID をざっくり理解する
この記事の内容
- Azure マネージドID の基本的な概念と役割を解説します
- システム割り当てとユーザー割り当ての2種類の違いを説明します
- Azure ポータルでの有効化・作成手順を紹介します
- Azure CLI を使ったマネージドID でのログイン方法を紹介します
- VMSS など拡張性の高い環境での活用例を解説します
マネージドID とは?
Azure のサービスを利用する際、認証や権限管理は欠かせない要素です。今回は「マネージドID」について、初心者向けに分かりやすく解説します。
マネージドID は、Azure リソースが他の Azure サービスへ安全かつ簡単にアクセスするための ID 管理機能です。パスワードや秘密鍵などの資格情報を自分で管理する必要がなく、リソースに対して自動的に ID を割り当て、必要な権限を設定できます。
マネージドID には、以下の2種類があります。
- システム割り当てマネージドID
- ユーザー割り当てマネージドID
システム割り当てマネージドID
システム割り当てマネージドID は、仮想マシン(VM)やオートメーションアカウントなど、Azure のリソース作成時に「オン」にするだけで自動的に作成され、そのリソースに紐づきます。リソースのライフサイクルに連動するため、リソースを削除すると ID も一緒に削除されます。
権限の割り当ても簡単で、例えばアプリケーションサービスが Blob ストレージにアクセスする場合、マネージドID を利用すればパスワード管理不要でアクセス権限を設定できます。
有効化の手順
- 対象の仮想マシンの「セキュリティ」→「ID」へ移動します
- 「システム割り当て済み」のスイッチを「オン」にして保存します
- 有効化後、オブジェクトID が自動生成されます
このオブジェクトID は Azure Active Directory(AAD)の「エンタープライズアプリケーション」として登録され、ここで権限の割り当てが可能です。
Azure CLI でのログイン例
Azure CLI を利用する場合、以下のようにシステム割り当てマネージドID でログインできます。
az login --identity
この方法ではパスワード等の資格情報の入力が不要です。ただし、権限を割り当てていない場合はアクセスできません。必要に応じて「閲覧者」などのロールを割り当ててから利用しましょう。
ユーザー割り当てマネージドID
ユーザー割り当てマネージドID は、自分で事前に ID を作成し、必要な権限を割り当ててから、複数の Azure リソースに割り当てることができます。たとえば VM を増やしたとき、各 VM に同じユーザー割り当てマネージドID を割り当てれば、事前定義した権限設定を一括で適用できます。
作成と割り当ての手順
- Azure ポータルで「マネージドID」から新規作成します。サブスクリプション・リソースグループ・リージョンを選択して作成します
- 作成したユーザー割り当てマネージドID にはクライアントID(オブジェクトID)が割り当てられます
- 仮想マシンなどのリソースの「ID」設定から、作成したユーザー割り当てマネージドID を追加します
Azure CLI でのログイン例
ユーザー割り当てマネージドID を使って CLI でログインする場合は、クライアントID を指定します。
az login --identity --username <クライアントID>
割り当てていない ID は利用できません。必ずリソースに割り当ててから利用しましょう。
マネージドID の柔軟な利用パターン
複数の ID を単一リソースに割り当てる
1つの VM に複数のユーザー割り当てマネージドID を割り当てることができます。用途別に ID と権限を分けて管理することが可能です。
同じ ID を複数リソースで共有する
事前に作成したユーザー割り当てマネージドID を、VM だけでなくオートメーションアカウントにも割り当てて、同じ権限で運用することができます。
VMSS(仮想マシン スケールセット)での活用例
VMSS は複数の VM を自動で増減できるサービスです。事前にユーザー割り当てマネージドID を作成しておけば、スケールアウトで増えた VM にも同じ権限を一括で割り当てられます。これにより、拡張性の高い環境でも安全かつ効率的な認証管理が実現できます。
まとめ
- システム割り当てマネージドID は、リソース作成時や後から「オン」にするだけで簡単に利用でき、パスワード管理も不要です。リソース削除と同時に ID も削除されます
- ユーザー割り当てマネージドID は、事前に作成・権限設定しておき、複数リソースでの共有や複数 ID の割り当てが可能です
- マネージドID を活用することで、資格情報の管理から解放され、セキュアかつ運用効率の高い権限管理が実現できます
- Azure で認証や権限管理を検討する際は、まずマネージドID の活用を検討してみましょう