Alibaba Cloud Resource Access Management (RAM) は、強力で詳細な権限管理機能を提供します。これは、企業内の複数の部門やロールが Elastic Compute Service (ECS) リソースにアクセスする必要があるシナリオに最適です。機密情報や重要なビジネスプロセスを保護するために、各部門やロールの特定の責任に基づいて、異なるアクセス権限を割り当てることができます。権限分離ポリシーを実装すると、管理効率が向上し、情報漏洩のリスクが軽減されます。このトピックでは、RAM ユーザーの権限を管理して ECS リソースへのアクセスを制御する方法について説明します。
シナリオの説明
あなたの会社が ECS を使用してアプリケーションとサービスをホストしているとします。管理者は IT アーキテクチャの計画を主導し、すべての ECS リソースを完全に制御します。彼らの主な責任には、リソースの作成、リソース割り当ての調整、セキュリティポリシーの設定が含まれます。開発者は、継続的なプロジェクトの反復と機能革新を担当します。また、プロジェクトを ECS インスタンスにデプロイします。運用保守 (O&M) エンジニアは、システムの正常な運用を保証する責任があります。彼らは、スナップショットの作成、イメージの作成、スクリプトの実行によって既存のサービスを維持します。
これら 3 つのロールのニーズに基づいて、次の権限計画が設計されています。
管理者: ECS インスタンスの作成と削除、セキュリティグループルールの変更など、ECS 操作に対する完全な権限を持ちます。
開発者: すべての ECS インスタンスに関する情報を表示できますが、設定を変更することはできません。また、ECS インスタンスにログインして操作を実行することもできます。
O&M エンジニア: スナップショットやイメージなどの特定のリソースを作成し、スクリプトを実行する権限を持っています。リソースを削除する権限はありません。
手順
1. RAM ユーザーの作成
お使いの Alibaba Cloud アカウントを使用して、Resource Access Management (RAM) コンソールにログインします。Manager、Developer、Operator の 3 つの RAM ユーザーを作成します。これにより、異なる担当者に適切な権限を割り当てることができます。RAM ユーザーを作成する際は、[コンソールログイン] を選択します。詳細については、「RAM ユーザーの作成」をご参照ください。
2. アクセスポリシーの作成
より詳細なアクセスの制御と管理を実装するために、3 つのカスタムポリシーを作成します。詳細については、「カスタムポリシーの作成」をご参照ください。
Manager_Policy
このポリシーは管理者 (Manager) 向けです。ECS 操作に対する完全な権限を付与します。
{
"Version": "1",
"Statement": [
{
"Action": "ecs:*",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"vpc:CheckCanAllocateVpcPrivateIpAddress",
"vpc:DescribeVpcs",
"vpc:DescribeVSwitches",
"bss:ModifyAgreementRecord"
],
"Resource": "*",
"Effect": "Allow"
}
]
}Developer_Policy
このポリシーは開発者 (Developer) 向けです。特定のリソースを表示する権限を付与しますが、作成や変更は許可しません。また、Workbench を介した ECS インスタンスへのリモート接続も許可します。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:List*",
"ecs:Describe*",
"vpc:DescribeVpcs",
"vpc:DescribeVSwitches",
"ecs-workbench:LoginInstance"
],
"Resource": "*"
}
]
}Operator_Policy
このポリシーは O&M エンジニア (Operator) 向けです。特定のリソースを表示し、イメージの作成、スナップショットの作成、コマンドの実行を行う権限を付与します。
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:Describe*",
"ecs:AttachDisk",
"ecs:CreateSnapshot",
"ecs:CreateImage",
"ecs:RunCommand",
"vpc:DescribeVpcs",
"vpc:DescribeVSwitches"
],
"Effect": "Allow",
"Resource": "*"
}
]
}3. RAM ユーザーへの権限付与
RAM ユーザーに異なるカスタムポリシーを割り当てて、特定のリソースへのアクセスと操作を正確に制御します。RAM ユーザーが異常な操作を実行した場合、権限付与を取り消したり、権限の範囲を狭めたりして、脅威に対応し、処理することもできます。詳細については、「RAM ユーザーに権限を付与する」をご参照ください。
RAM ユーザー | 付与するアクセスポリシー |
Manager | Manager_Policy |
Developer | Developer_Policy |
Operator | Operator_Policy |
4. アクセス制御のテスト
RAM ユーザーログインページに移動します。作成した 3 つの RAM ユーザーのそれぞれとしてログインします。
ECS コンソールに移動します。ECS インスタンスリストの表示、ECS インスタンスの作成、イメージの作成などの操作を実行して、アクセス制御が有効であることを確認します。
Manager
ECS インスタンスリストを表示できます。
ECS インスタンスを作成できます。
ECS インスタンスを削除できます。
イメージを作成できます。
Developer
ECS インスタンスリストを表示できます。
ECS インスタンスを作成する権限がありません。
イメージを作成する権限がありません。
Workbench を使用して ECS インスタンスにリモートで接続し、ログインできます。ログイン後、開発者はコマンドを使用してインスタンスにプロジェクトをデプロイできます。
Operator
ECS インスタンスリストを表示できます。
ECS インスタンスを作成する権限がありません。
イメージを作成できます。
リファレンス
Resource Access Management (RAM) は、ユーザー ID とリソースアクセス権限を管理できる Alibaba Cloud サービスです。詳細については、「RAM とは」をご参照ください。
RAM ユーザーの多要素認証 (MFA) のメソッド、命令、および制限を表示できます。詳細については、「RAM ユーザーの MFA」をご参照ください。
Elastic Compute Service (ECS) は、いくつかのカスタムポリシーを提供します。詳細については、「カスタムポリシー」をご参照ください。
Workbench を使用して ECS インスタンスにログインできます。詳細については、「Workbench を使用してインスタンスに接続する」をご参照ください。