RAM(Resource Access Management)は、AlibabaCloudユーザーに対してAlibabaCloudのリソースへのアクセスを安全に制御するための仕組みです。
RAMにより、どのユーザーが AlibabaCloudリソースを使用できるか(認証)、また、それらのユーザーがどのリソースをどのような方法で使用できるか(認可)を制御できます。
※AlibabaCloudは、AWSと類似するサービスが多いですが、 RAMは、AWSのIAMと類似するサービスです。
RAM使用可能のクラウドサービス
次の表に、管理コンソールまたは API の呼び出しから RAM にアクセスできるすべての Alibaba Cloud サービスを示します。この表では、
右のマーク(√)は使用可能であることを示します。
円マーク(○)は使用できないことを示します。
サービス | コンソール | API |
---|---|---|
Elastic Compute Service | √ | √ |
ApsaraDB for RDS | √ | √ |
ApsaraDB for MongoDB | √ | √ |
ApsaraDB for Redis | √ | √ |
Server Load Balancer | √ | √ |
Cloud Monitor | √ | √ |
Resource Access Management (RAM) | √ | √ |
Object Storage Service | √ | √ |
Key Management Service (KMS) | √ | √ |
Alibaba Cloud CDN | √ | √ |
Table Store | √ | √ |
Log Service | √ | √ |
Virtual Private Cloud | √ | √ |
Elastic IP Address | √ | √ |
Express Connect | √ | √ |
Message Service | √ | √ |
Technical Support Service | √ | ○ |
RAMの利用するには
・AlibabaCloud マネジメントコンソール
・AlibabaCloud コマンドラインツール
・AlibabaCloud SDK
一般には AlibabaCloud マネジメントコンソールのRAMの画面から利用します。
https://ram.console.aliyun.com/#/overview
RAMも他のサービスと同様に、自動化が可能です。 シェルスクリプトから利用するには AlibabaCloud コマンドラインツールAlibabaCloud Command Line Interface(AlibabaCloud CLI)が提供されています。 アプリケーションに組み込むには AlibabaCloud SDK(Java、Python、.NET、Node.js、PHPなど)を利用できます。
RAMの基本
最初にAlibabaCloudを利用する時に、AlibabaCloudプライマリアカウントを取得しますが、このアカウントはリソースへのフルアクセスを許可します。お客様ごとのAlibabaCloud環境は、複数の利用者やプログラムなどによって利用されますので、原則的にAlibabaCloudアカウントやそのシークレットアクセスキーを直接利用することはお勧めできません。なので、実際には用途や目的ごとにAlibabaCloudアカウントをから、RAMユーザーやRAMロールなどを作成して、AlibabaCloudを利用します。そうすることで、RAMユーザーやRAMロールごとのアクセス管理、承認、監査(AlibabaCloud ActionTrail)が可能になります。
※ UNIXの「root」アカウントの直接利用、Windowsの「Administrator」の直接利用は望ましくないというのと同じ考えに基づきます。
RAM利用の流れ
RAMユーザーの作成を例にしますと、RAMユーザーは1つ以上のRAMグループに所属させ、RAMグループは1つ以上のRAMポリシーを設定します。UNIXやWindowsのユーザー管理と基本的に考え方は一緒です。
以降では、RAMユーザー、RAMグループ、RAMポリシー、およびRAMロールについて解説します。
■RAMユーザー
RAMユーザーは、固定のID と ID資格情報を持つ実際のIDであり、一般的には、特定のユーザーまたはアプリケーションに対応します。
RAMでは、(企業の従業員、システム、アプリケーションに対応する)複数のRAMユーザーをAlibabaCloudアカウントで作成できます。
RAMユーザーはリソースを所有せず、個別に課金されることはありません。ユーザーの管理と支払いはAlibaba Cloudアカウントごとに行われます。
RAMユーザーはAlibabaCloudアカウントに属しており、このアカウントでのみ表示できます。また、独立した AlibabaCloudアカウントではありません。
AlibabaCloudアカウントから権限付与された後にのみ、AlibabaCloudアカウントの下で、コンソールにログオンすることや、APIを使用してリソースで操作を実行することができます。
ユーザー作成手順は次のとおりです。
・[RAMコンソール]にログインします。
・ユーザー > 新規ユーザー を選択します。
・ダイアログボックスにユーザー情報を入力して、[OK]をクリックします。
※ ユーザーの作成時にアクセスキーを作成したい場合は「このユーザーのAccessKeyを自動生成」を選んでください。
次は、ユーザーログオンパスワードを設定します。
RAMユーザーが管理コンソールにアクセスできるようにするには、そのユーザーのログオンパスワードを作成します。手順は次のとおりです。
・[ユーザーの詳細] ページに移動するユーザーを選択します。
・[コンソールへのログインの有効化]をクリックし、ダイアログボックスでユーザーの初期パスワードを設定します。また、最初のログオン時にユーザーがこのパスワードを変更する必要があることを指定することもできます。
ログインパスワードを設定した後、 ユーザーの詳細ページで MFA、パスワードリセット、コンソールログオンを有効にすることもできます。
■RAMグループ
AlibabaCloudアカウントで多数のRAMユーザーを作成した場合は、ユーザーとその権限を管理しやすくするために、グループ単位でユーザーを管理することをお勧めします。
RAMグループ作成手順は次のとおりです。
・[グループ管理] > [新規グループ] を選択します。
・ポップアップウィンドウで、新しいグループの名前を入力して、[OK]をクリックします。
RAMグループにユーザー追加手順は次のとおりです。
・グループ管理画面から、グループ名を選択して、[グループの詳細] ページに移動します。このページの [グループメンバー管理] にグループのメンバーが表示されます。
・[グループのメンバーの編集] を選択し、先ほど作成したRAMユーザーをグループに追加して、[OK]をクリックします。
RAMグループに権限付与手順は次のとおりです。
・グループ管理画面から、「許可」リンクをクリックして、[グループの権限付与ポリシーの編集] ページに移動します。
・グループ用権限付与ポリシーの編集ウィンドウで、グループに付与する必要なポリシーを選択して、[OK]をクリックします。
■RAMポリシー
RAMポリシーとは、権限セットを記述するシンプルな言語仕様のタイプです。
RAMは、システムアクセスポリシーとカスタマイズアクセスポリシーの2種類の権限付与ポリシーに対応しています。
・AlibabaCloudによって管理されているシステムアクセスポリシーは、使用できますが、変更することはできません。システムアクセスポリシーのバージョンは自動的に更新されます。※前述のRAMグループに権限付与手順に、使用したポリシーはシステムアクセスポリシーです。
・ユーザー自身が管理するカスタマイズアクセスポリシーについては、作成したり削除したりできます。また、ポリシーのバージョンは、ユーザー自身で管理する必要があります。
カスタマイズアクセスポリシーの作成手順は次のとおりです。
・左ナビゲーションで、「権限付与ポリシー管理」をクリックし、ページ右上の「権限付与ポリシーを作成」ボタンをクリックします。
・権限付与ポリシーの作成ページに、1つのポリシーのテンプレートを選定します。
・ポリシー名とポリシーの内容を入力して、「権限付与ポリシーを作成」ボタンをクリックします。
ポリシーの構文仕様はAlibaba Cloudの公式ドキュメントをご参考ください。
■RAMロール
RAMユーザーと同様に、RAMロールもRAM IDの一種です。RAMユーザーと比較して、RAMロールは仮想ユーザーです。つまり、RAMロールにはID資格情報がなく、信頼できるAlibabaCloudアカウントが引き受ける必要があります。主にクロスアカウントアクセス、および一時的な承認アクセスに使用されます。
RAMロールの作成手順は次のとおりです。
・左ナビゲーションで、ロール管理を選択し、「新規ロール」ボタンをクリックします。
・ロール作成ウィンドウで、「ユーザーロール」を選択します。
・割当対象アカウントを選択し、「次へ」をクリックします。
・ロール名を入力し(補足はオプション)、「作成」ボタンをクリックします。
・ロール作成後、「閉じる」をクリックして完了します。
※作成後の権限付与方法は、前述のRAMグループの権限付与と同様です。
おわりに
以上、RAMの概要とRAMの4つのコアな機能(RAMユーザ、RAMグループ、RAMポリシー、およびRAMロール)を紹介しました。
各コア機能のもっと複雑な利用方法は、また、今後紹介していきたいと思います。