はじめに
アイデンティティ・ドメインとは、Oracle Cloud Infrastructure(OCI)でユーザを管理するための仕組みです。
詳しくは、こちらを参考にしてみてください。
ドメインは、ひとつのテナントに複数持つことができるのですが、そのような環境にOracle Analytics Cloud(OAC)をデプロイするとどうなるのか、を試してみました。
複数のドメインを用意する
OCI管理コンソールにログインします。
「アイデンティティとセキュリティ」から「ドメイン」を選択します。
「ドメインの作成」をクリックして、新しいドメインを追加します。
任意の表示名を入力し、ドメイン・タイプを「Free」にして「ドメインの作成」をクリックします。
ドメインが2つできました。
それぞれのドメインにOACの管理ユーザを作成する
それぞれのドメインをクリックして、ユーザとグループを作成します。
ユーザ名であるメールアドレスにぼかしを入れたら、何がなんだかわかりにくくなりましたが、初めから存在していたDefaultドメインに登録されているユーザです。
この内のひとりが、Defualtドメインに作成するOACインスタンスの管理者となります。
2つ目のドメインのユーザはこんな感じです。
やはり、この内のひとりがSecondaryドメインに作成するOACインスタンスの管理者となります。
ポリシーを設定する際のグループの指定方法に注意してください。ドメインを指定しないとデフォルトのドメインと解釈されます。
例:allow group 'Secondary'/'OAC_Admins2' to manage analytics-instances in compartment demo
OACインスタンスを作成する
OCI管理コンソールを一旦サインアウトして、再度サインインします。
ドメインが複数になったことで、最初にログインしたいドメインの選択画面がでてきます。
Defaultドメインを選択してログインします。
ログインアカウントは、DefaultドメインのOAC管理用ユーザです。
OACインスタンスの作成は、いつも通りです。
Defaultドメインに関連付けるOACドメインはOAC1という名前にしました。
OCI管理コンソールを一旦サインアウトして、再度サインインします。
今度は、Secondaryドメインを選択してログインします。
ログインアカウントは、SecondaryドメインのOAC管理用ユーザです。
先程同様にOACインスタンスを作成します。今度はOAC2という名前のインスタンスを作成しました。
しばらく待つと、両方のインスタンスの作成が完了しました。
ログインしてみる
OAC1とOAC2にそれぞれログインしてみます。
OAC1を作成した管理者ユーザでは、当然ながらOAC1インスタンスにログインできますが、OAC2インスタンスにはログインできません。
逆もしかりです。
OAC1の場合
まずは、OAC1です。
手元のExcelファイルをアップロードしてデータセットを作成しました。
そのデータセットのアクションメニューから「検査」を選択し「アクセス」タブに移動しました。
Defaultドメインに登録されたユーザに対して、アクセス権が付与可能であることがわかります。
「コントロール」メニューの「ユーザーとロール」も確認してみます。
OAC2の場合
OAC2でも同じことをしてみました。
「コントロール」メニューの「ユーザーとロール」も確認しました。
OACインスタンスとドメインに関連付けを確認
少なくとも管理コンソールでは、作成したOACインスタンスがどのアイデンティティ・ドメインに関連付けられているかがわかりません。
そこで、Cloud Shellで次のコマンドを実行してみました。(一部割愛)
cloudshell:~ (ap-tokyo-1)$ oci analytics analytics-instance get --analytics-instance-id ocid1.analyticsinstance.oc1.ap-tokyo-1.aaaaaaaacxx2zsn74xvhqj6q7zxhgvjiawkjkw23jzn6rty5fscmy3sdk5wq
{
"data": {
"capacity": {
"capacity-type": "OLPU_COUNT",
"capacity-value": 1
},
"defined-tags": {
"Oracle-Tags": {
"CreatedBy": "secondary/hoge@example.com",
"CreatedOn": "2022-06-23T01:10:39.609Z"
}
作成したユーザがわかるので、そこから判断できそうです。
実際には、インスタンスのネーミングルールや説明への記載など工夫が必要と思われます。
おわりに
アイデンティティ・ドメインが例えば本番用と開発用に分かれていた場合、それぞれに関連付けてOACインスタンスをデプロイすることで、ユーザやグループが相互に干渉しないようにすることができそうです。