ToC
マルチアカウントを使いこなす
私は、AWSだけでなく、Alibaba Cloudも利用しています。
複数のAlibabaアカウントを利用していることもあり、マネージメントコンソールでアカウントを切り替えて
利用できる Switch Identity
の機能で少しだけ便利になりました。
AWSでも同様の機能があり、使ったことがあったので 公式ドキュメント の記載でも理解できましたが、 理解を深めるために改めて設定手順ベースで記載してみました。
Switch Identity とは…
Switch Identity
は、複数のアカウントを利用している際に1つのRAMユーザー
で複数のアカウントを
利用することが可能になる機能です。
個人レベルではあまり問題にならないかもしれませんが、会社などでは複数のプロジェクトが複数のAlibabaアカウントで構築されているようなことも多いかと思います。
Alibabaアカウントが5個、10個あると、Alibaba Cloudアカウント毎にRAMユーザーを作成して「ユーザー、パスワード」の管理が非常に煩雑(ある意味のカオス)になりがちです。
これを解決する機能が、Switch Identityになります。
今回は、わかりやすさのために今回は2つのAlibaba Cloudアカウントを利用します。
アカウントA
(切替元)
RAMユーザーを作成してユーザーIDとパスワードでログインするアカウントとします。アカウントB
(切替先)
RAMロールを作成して Switch Identity して機能利用するアカウントとします。
なお、3つ以上のアカウントがある場合には、アカウントBと同様のアカウントが複数ある状況になります。(アカウントB’のような感じです)
![/posts/2020/11/img/336f91b1_hue69181a4139b4c9960605ee3d182345a_36812_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/336f91b1_hue69181a4139b4c9960605ee3d182345a_36812_700x0_resize_lanczos_3.png)
各アカウントへの設定の実施
切替元のアカウントA
と 切替先 アカウントB
のそれぞれで設定が必要になります。
アカウントA(切替元)への設定
まずは、アカウントAにログインして設定を行います。
アカウントAの設定は、RAMユーザーアカウント
の設定をするだけなのであまり悩むことはないかと思います。
コンソールで実行するのであればRAM (Resource Access Management)
から、Users
を選択して
ユーザーの作成できます。
パスワード流出時のセキュリティ向上の観点でも、Alibaba Cloudでは、rootのユーザーで利用するよりも
各種のアプリケーション作成等ではRAMユーザー
の利用が推奨されており、さらにセキュリティを強化する意味でも
ワンタイムパスワードの設定を追加で行うのも良い施策だと思います。
![/posts/2020/11/img/a14b8198_hu19fe73d81ca0e99e95d2c381581a4c40_82407_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/a14b8198_hu19fe73d81ca0e99e95d2c381581a4c40_82407_700x0_resize_lanczos_3.png)
アカウントB(切替先)への設定
次にアカウントBにログインして設定を行います。
アカウントBには、アカウントAからのSwitch Identityを許可するRAMロール
を作成します。
RAM
のコンソールから、RAM Roles
を選択してRoleを作成します。
他のAlibaba CloudのRAMユーザーからのアクセスを引き受けるためのRoleになるため、Alibaba Cloud Account
を選択します。
![/posts/2020/11/img/356a9111_hua485fedf24740404f2ddb6b92cf5e621_28847_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/356a9111_hua485fedf24740404f2ddb6b92cf5e621_28847_700x0_resize_lanczos_3.png)
次にRAM Roleの名前
とアクセスを許可する Alibaba Account ID
を指定します。
今回は、Alibaba Account ID
にはアカウントAのIDを指定します。
なお、同一のアカウント内でも権限昇格する際にSwitch Identity
の機能を使うことができますが、今回は省略します。
![/posts/2020/11/img/6f5f46de_hub3c4aa9c082cf5190f3354fa28cd5067_44545_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/6f5f46de_hub3c4aa9c082cf5190f3354fa28cd5067_44545_700x0_resize_lanczos_3.png)
最後にRAMロール
に割り当てる Permission
を設定します。
作成した RAMロール
を選択して、Add Permissionsから権限を付与してください。
![/posts/2020/11/img/4c261efb_hu5962d04a292b536b10f4b383a139d5ce_77647_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/4c261efb_hu5962d04a292b536b10f4b383a139d5ce_77647_700x0_resize_lanczos_3.png)
Switch Identityを実行
それでは早速、コンソールで Switch Identityを使ってみます。
まずは、アカウントA
で作成した RAMユーザー
でログインします。
コンソール画面右上のアカウント設定のアイコンをクリックして、Switch Identity
を選択します。
![/posts/2020/11/img/be7f336e_hu57fbbefd712014f08560e6594c22f015_36059_400x0_resize_lanczos_3.png](../../../../posts/2020/11/img/be7f336e_hu57fbbefd712014f08560e6594c22f015_36059_400x0_resize_lanczos_3.png)
選択すると、Switch Role
画面に遷移します。
ここで アカウントB にて設定したRAM Roleの名前
とAlibaba Account ID
を入力します。
入力内容は こちら が参考になります。
![/posts/2020/11/img/e2407680_hu0b1d6edf8258e50e31179ea5a5972a79_20582_700x0_resize_lanczos_3.png](../../../../posts/2020/11/img/e2407680_hu0b1d6edf8258e50e31179ea5a5972a79_20582_700x0_resize_lanczos_3.png)
- Enterprise Alias / Default Domain Name
アカウントBのID.onaliyun.com
と入力 - Role Name
RAM Roleの名前
を入力 (あくまで ARN:Alibaba Resource Nameではないので注意)
あとは、Switch
ボタンをクリックすることで アカウントB
のコンソールに遷移します。
これで1つのRAMユーザー
で複数のAlibabaアカウントを管理することができます。
One more thing.
この Switch Role
画面でパラメーターを都度入力するのは、結構手間がかかります。
そこで、私はアカウントAにログインした状態でSwitchできるリンクを作成していたりします。
下記のような形式でアクセスすることで、Switch Role
画面をスキップしてSwitch Identity
が可能になります。
アクセスリンクhttps://signin-intl.aliyun.com/switchRole.htm?parentAlias=[アカウントID].onaliyun.com&roleName=[RamRole名]
地味ではありますが、かなり便利なのでどうぞご利用ください。