Oracle Cloud Infrastructure(OCI)の**Identity and Access Management(IAM)**は、クラウド環境のセキュリティとアクセス管理を支える中核的なサービスです。本記事では、IAMの基本機能、デフォルト・ドメインの詳細、管理構成、ポリシー設計まで網羅的に解説します。
デフォルト・ドメインとは?
OCIテナンシを作成すると、自動的に**デフォルト・ドメイン(Defaultドメイン)**が作成されます。このドメインは、IAM構成の基礎として特殊な役割を持ちます。
デフォルト・ドメインの特徴
- 削除・非アクティブ化不可
- テナンシ設定の一部であるため、削除や非アクティブ化ができません。
- サインイン・ページで常に表示
- サインイン・ページでデフォルト・ドメインを非表示にすることはできません。
- 全リージョンにレプリケート
- テナンシがサブスクライブされているすべてのリージョンで常にレプリケートされます。一方、個別に作成したドメインは指定したリージョンにしか存在しません。
デフォルト・ドメインの初期設定
デフォルト・ドメインには、以下の重要な設定が含まれています:
- Administrators Group
- デフォルトの管理者ユーザーが属するグループ。
- 特徴:
- 削除不可。
- グループには少なくとも1人のユーザーが必要。
- テナンシ内のすべてのOCIリソースへのアクセス権を持つ。
- Administrator User
- スーパーユーザー権限を持つ初期管理ユーザー。
- タスク例:
- ユーザーやグループの管理。
- 管理ロールの委任。
- マルチファクタ認証(MFA)の構成。
- セルフサービスプロファイルやポリシーの設定。
注意点
デフォルト・ドメインに関連する設定で推奨されない操作:
- 管理者グループの利用
- 日常業務や非管理タスクには使用しないこと。
- 管理者グループには、必要最低限のユーザーのみを追加することが推奨されます。
複数のアイデンティティ・ドメインを使用するメリット
OCIでは、複数のアイデンティティ・ドメインを作成することで、クラウド環境の管理効率やセキュリティを向上できます。
複数アイデンティティ・ドメインが必要な理由
- リソースの分離
- ドメインが仮想コンパートメントとして機能し、異なるチームや部門のリソースを分離します。
- 意図しない干渉やアクセスを防止可能。
- セキュリティとコンプライアンスの向上
- 特定のセキュリティポリシー、アクセス制御、コンプライアンス要件を各ドメインに適用可能。
- 管理制御の柔軟性
- 各ドメインに独自の管理セットを設定し、管理範囲を明確化。
- 例:
- 開発部門用のアイデンティティ・ドメイン。
- 生産部門用のアイデンティティ・ドメイン。
- リソースの効率的なスケーリング
- ドメインごとにリソースを独立して割り当て可能。
- 各部門の要求に応じた柔軟なリソース管理が実現します。
- 管理の簡素化
- 組織の成長に伴い、単一のアイデンティティ・ドメインでは管理が不十分になる可能性があります。
- 複数ドメインにより、リソースの効率的な編成が可能です。
IAMの主要コンポーネント
OCI IAMは、以下のコンポーネントで構成されています。それぞれの役割を理解することで、効率的な管理が可能になります。
- グループ管理
- ユーザーをグループ化し、管理を効率化。
- 例:ネットワーク管理グループ、インスタンス管理グループなど。
- ポリシー
- グループに対してリソースへのアクセス権を制御。
- 記述例:csharpコードをコピーする
Allow group 'Production'/'NetworkAdmin' to manage virtual-network-family in compartment Sandbox
- コンパートメント
- リソースを論理的に整理・分離する単位。
- 階層構造(6レベルまで)を活用し、用途や部門ごとに柔軟に設定可能。
- クォータ
- リソース使用制限を設定し、過剰な利用を防止。
- 例:特定のコンパートメントでの仮想クラウドネットワーク(VCN)の最大数を4つに制限。
IAMポリシー:アクセス制御の仕組み
IAMポリシーは、OCIリソースに対するアクセス権を定義するドキュメントです。
ポリシーの構文
- Subjects句: 対象となるグループまたはユーザーを指定。
- Action句: 4種類の動詞(inspect, read, use, manage)で権限を指定。
- Placement句: リソースの対象範囲(例:コンパートメント、テナンシ)。
管理ロール:効率的な管理の鍵
OCI IAMには、7種類の管理ロールが用意されています。これにより、タスクの分担と効率的な管理が可能です。
- アイデンティティ・ドメイン管理者: 管理全般を担当。
- セキュリティ管理者: 認証やセキュリティ設定を管理。
- アプリケーション管理者: アプリケーションの管理を担当。
- ユーザー管理者: ユーザーやグループの管理を担当。
- ユーザー・マネージャー: ユーザーアカウントの操作を担当。
- ヘルプデスク管理者: ユーザーサポートを担当。
- 監査管理者: アクティビティの監査とレポート作成を担当。
予算(Budgets)
OCIでは、予算機能を活用することで、リソースの使用状況を追跡し、コスト管理を効率化できます。この機能は、特定のコンパートメントやテナンシ全体での支出を制限・監視する際に役立ちます。
予算機能の特徴
- 設定可能な予算
- 例えば、月額2,000ドルの予算を設定すると、その上限に達する前にアラートを受け取ることができます。
- アラートのしきい値
- 支出が設定した割合(例: 50%、90%)に達した際に通知を送信します。
- 実際の支出追跡
- コンパートメントごとのコストを詳細に把握するためのレポートが生成されます。
まとめ
OCIのIAMは、クラウド環境におけるアクセス管理を効率化し、セキュリティを強化するための重要なツールです。デフォルト・ドメインから複数ドメインの活用、ポリシー設定や管理ロールの利用までを理解し、最大限に活用することで、効率的かつ安全なクラウド運用が可能となります。