こんにちは、yassanです。
今回は OCIにおけるIAMの考え方を紹介します。
IAMは、パブリッククラウドを利用するうえで極めて重要なサービスです。
ですが、OCIを始めて利用する方にとっては、なかなか理解が難しいかもしれません。
今回は、OCIのIAMのコンポーネントとその内容を説明します。
(情報は2023年6月現在の情報であることをご了承ください)
IAMのコンポーネント
IAMのコンポーネントは以下の3つあります。
- プリンシパル
- グループ
- ポリシー
プリンシパル
プリンシパルは、OCI上でのリソースとなります。
例えば、IAMユーザーやインスタンスがあげられます。
IAMユーザはOCIを利用するための個人ユーザのことです。
コンソールやCLIを利用するうえで必須のリソースとなります。
インスタンスは何らかのサービスで作成したインスタンスのこととなります。
具体的な例ですと、コンピュートサービスで起動した仮想マシンインスタンスがわかりやすいかと思います。
これらのプリンシパルを次に紹介するグループに束ねることで管理します。
グループ
グループは、プリンシパルを束ねたリソースとなります。
とはいえ、グループとプリンシパルの関係についてはポイントがあります。
それは、「プリンシパル側からグループに属する」のではなく「グループ側がプリンシパルを属させる」ということです。
何を言ってるかわからないかもしれないですけど、例えばコンソール画面からIAMユーザを見てみるとわかります。
画面操作上ではグループに属する操作はできません。
逆に、グループからはプリンシパルを属させることができます。
コンソールで迷子にならないように、頭の片隅に置いといてください。
ポリシー
ポリシーは、操作の権限を指します。
ポリシーはどのグループに何の権限を与えるかをまとめたものになります。
例えば、グループ「Yassan」に「オブジェクトストレージへの書き込み」を許可するといったものが複数集まっているイメージです。
ポリシーも考え方としては、グループがポリシーを付けるというよりは、ポリシー内でグループに対する記述を書くことで権限を与える、ことになります。
同じくコンソールで迷子にならないようにご注意ください。
また、ポリシーはグループに対する記述しかできません。
AWSではIAMユーザにポリシーをアタッチすることができますが、OCIではプリンシパルを直接指定することができません。
最後に、ポリシーは何も書かれていない状態では、すべて「拒否」となります。
許可するルールを記載していくものとなります。
その他の概念
IAMに関係するその他の概念についてもまとめておきます。
IDCS
IDCSは、Oracleが提供していたID管理サービスです。
OCIとは関連しないもので、Oracleが提供するクラウドサービスのIDを管理しているものです。
OCIもOracleが提供するクラウドサービスに変わりはありませんので、
OCIのもこのIDCSを利用してログインすることが可能です。
OCI以外のクラウドサービスも利用する場合は、ユーザ管理はIDCSの方が適している場合があります。
動的グループ
動的グループは、インスタンスプリンシパルなどポリシーを適用したいIAMユーザ以外のリソースをまとめたグループです。
例えば、仮想マシンにObjectStorageに書き込み権限を与えたい場合、仮想マシンを動的グループに属させて、ポリシー内で動的グループに権限を付与する流れとなります。
動的グループはその名の通り、一致ルールを作成してプリンシパルをグループに属させます。
一致ルールは、OCIDで指定したり、タグで指定することができます。
まとめ
いかがでしたでしょうか。
パブリッククラウドにおけるIAMは利用するうえで必要な知識です。
最初は慣れないかもしれませんが、触っていくことで少しずつ理解できるかと思います。
これからも頑張ってOCIの理解を進めていきましょう。
ここまで読んでいただき、ありがとうございました。
OCI学習におすすめの書籍
OCIについてしっかりと学びたい、実践的なスキルを身につけたいと考えている方向けに、おすすめの書籍を紹介します。
これらの書籍は、実際にOCIを活用している僕も参考にしている書籍です。
Oracle Cloud Infrastructure徹底入門 Oracle Cloudの基本からインフラ設計・構築まで
本書は、他のクラウドサービスを利用したことがある人を中心に、
OCIに興味があるエンジニアが、業務システムを設計、構築するために必要な知識
――Oracle Cloudの基本からインフラ構築・設計まで――
を一冊で学ぶことができる必携の書です。
OCIに関して基本的な概念について、また各サービスについて読みやすい情報量で記載されています。
また、後半からは実際に設計をする上でのポイントがまとめられています。
初めてOCIを触る方、マルチクラウドの展開の中にOCIが視野にある方におすすめです。