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) 向けです。特定のリソースを表示する権限を付与しますが、作成や変更は許可しません。また、ワークベンチ経由での 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 インスタンスを作成する権限はありません。
イメージを作成する権限はありません。
ワークベンチを使用して ECS インスタンスにリモート接続し、ログインできます。ログイン後、開発者はコマンドを使用してインスタンスにプロジェクトをデプロイできます。
Operator
ECS インスタンスリストを表示できます。
ECS インスタンスを作成する権限はありません。
イメージを作成できます。
関連ドキュメント
RAM は、ユーザー ID とリソースのアクセス権限を管理できる Alibaba Cloud のサービスです。詳細については、「RAM とは」をご参照ください。
RAM ユーザーの多要素認証 (MFA) の方法、手順、および制限を確認できます。詳細については、「RAM ユーザーの MFA」をご参照ください。
ECS は、いくつかのカスタムポリシーを提供しています。詳細については、「カスタムポリシー」をご参照ください。
ワークベンチを使用して ECS インスタンスにログインできます。詳細については、「ワークベンチを使用したインスタンスへの接続」をご参照ください。