はじめに
Oracle Cloud のユーザ管理が複雑で、勉強の一環で整理をしていきます。Oracle Cloud を使い始めていて混乱したので、初めて使い始める方に向けて、ユーザ管理方法を記載します。
もし異なる点などあれば、コメントなどで指定いただけると幸いです。
Oracle Cloudのユーザ管理
2019年3月時点で、Oracle Cloud には2種類のユーザ管理が存在します。
- Oracle Cloud 全体のユーザ管理 (Oracle Identity Cloud Service)
- Oracle Cloud Infrastructure のユーザ管理
Oracle Cloud の中に、OCI(Oracle Cloud Infrastructure)と呼ばれる、IaaSを提供するサービスが存在しており、Oracle Cloudの全体で利用できるユーザ管理と、OCIで利用できるユーザ管理があります。
OCI にログインするには、2種類の方法があります。
- OCIで管理しているユーザでログイン
- Oracle Cloud 全体のユーザ (Oracle Identity Cloud Service) でログイン
これに対して、OCI以外のサービスでは、Oracle Identity Cloud Service でログインする必要があります (例外があるかも)
図に表すとこのようになります
OCI のログイン方法はどうすりゃいいの
個人的な意見ですが、Oracle Identity Cloud Serviceを使用するのが良いと思います。OCI管理のユーザを使用することもできますが、Oracle Identity Cloud Serviceと二重管理となってスマートではないため、Oracle Identity Cloud Serviceに統一するとよいです。
OCI のフェデレーション
OCIのIAMにあるフェデレーション機能を使用して、Oracle Identity Cloud Service と連携を行うことが出来ます。
図で表すとこのようになります。
OCIのフェデレーション機能の挙動を簡単に記載します。
- IDCS User : IDCSとOCIに自動的にユーザが作成される。ユーザは、IDCSのユーザに紐づくパスワードで、OCIにもログインすることが出来る
- IDCS Groups : IDCS側にグループが作成される
- Group Mapping : IDCS Group と、OCI側のグループを紐づける
ユーザの追加方法
OCI上でフェデレーションのためのユーザを作成する手順を記載します。
まず、OCIへログインし、Identity → Federation を選択します。
Oracle Identity Cloud Service を選択します。これは、デフォルトで作成されています。
Create IDCS User を選択し、USERNAME などを適宜入力していきます。
- USERNAME : LoginするときのID
- EMAIL : パスワードリセットなどを行う時に、ResetURLを送付する先
- First Name : Oracle Identity Cloud Serviceで表示されるユーザのFist Name
- Last Name : Oracle Identity Cloud Serviceで表示されるユーザのLast Name
作成したときに表示される Reset URL はメモっておきます。
作成完了後、Oracle Identity Cloud Serviceにユーザが自動生成されます。なお、OCI側のユーザはまだ作成されていませんが正常です。
同様に、Groupを作成します。Groupを作成するときに、上記で作成したUSERを選択します。
作成完了後、Oracle Identity Cloud Serviceにグループが自動生成されます。
Group Mapping を 編集するために、Edit Mapping を選択します
IDENTITY PROVIDER GROUP(Oracle Identity Cloud Serviceのグループ) と、OCI GROUP のマッピングを追加します。これを指定することで、Oracle Identity Cloud Serviceのアカウントでログインした際に、OCIのグループを紐づけて、アクセス制御の認可処理を行うことが出来ます。
設定完了後、OCI側に自動的にユーザが生成され、ログインが出来るようになります。ユーザの名前は、oracleidentitycloudservice/sugi
のようにIDCSとフェデレーションされていることがわかるようになっています
これで、作成したユーザを使用してログインすることが出来ます。ユーザ作成時に表示されたリセットURLを使用して、パスワードを指定することで、ログインすることが出来ます。
ユーザの削除方法
OCIのフェデレーション画面で作成した、IDCS User・IDCS Groupを削除することで、自動的にOCIやOracle Identity Cloud Service上のユーザグループが削除されます。
ユーザの権限管理
OCI上の権限管理
Group Mapping で紐づけたGroupを使用してポリシーを生成することで、権限管理を行うことが出来ます。
Group Mapping で sugigroup
へマッピングした際には、以下のようなポリシーを設定することが出来ます。
allow group sugigroup to manage users in tenancy
##Oracle Identity Cloud Service上の権限管理
Oracle Cloud の Dashborad 上でロールを設定することで、Oracle Cloud 全体のサービスのアクセス権限管理を行うことが出来ます。
参考URL