Resource Access Management (RAM) は、ユーザー ID とリソースアクセス権限を管理できる Alibaba Cloud のサービスです。組織内の複数のユーザーがリソースで共同作業する必要がある場合は、RAM を使用して Alibaba Cloud アカウントキーの共有を回避します。最小権限の原則に基づいてユーザーに権限を割り当てることができます。この方法により、ビジネスのセキュリティリスクを軽減できます。
RAM ユーザーの作成と権限付与
RAM ユーザーへのシステムポリシーの付与
-
Alibaba Cloud アカウントで Resource Access Management (RAM) コンソールにログインします。
-
左側のナビゲーションペインで、Settings をクリックして RAM の初期設定を構成します。
RAM ユーザーのセキュリティ設定を構成できます。詳細については、「RAM ユーザーのセキュリティポリシーの設定」をご参照ください。
-
左側のナビゲーションペインで、[ID 管理 >] Users を選択します。 RAM ユーザーを作成し、ユーザーのログオンパスワードと AccessKey を設定します。
詳細については、「RAM ユーザーの作成」をご参照ください。
-
Users ページで、対象の RAM ユーザーにシステムポリシーを付与します。
説明-
RAM ユーザーに Resource Orchestration Service (ROS) リソースの読み取り専用権限を付与する場合は、
AliyunROSReadOnlyAccessポリシーを RAM ユーザーにアタッチします。 -
RAM ユーザーにすべての ROS 操作を管理する権限を付与する場合は、
AliyunROSFullAccessポリシーを RAM ユーザーにアタッチします。
-
RAM ユーザーへのカスタムポリシーの付与
-
カスタムポリシーを作成するには、左側のナビゲーションペインで[権限管理 >] Policiesを選択します。
カスタムポリシーは、RAM ユーザーがスタックに対して実行できる操作を定義する認可ポリシーです。詳細については、「カスタムポリシーの作成」をご参照ください。
アクセスポリシーには複数のステートメントを含めることができます。各ステートメントには、Action と Resource を含める必要があります。ROS がサポートする Action と Resource の詳細については、「ROS の認可可能なリソースタイプ」をご参照ください。
-
左側のナビゲーションペインで、[ID 管理 >] Users を選択し、対象の RAM ユーザーにカスタムポリシーを付与します。
説明カスタムポリシーをユーザーグループに付与できます。グループにポリシーを付与すると、そのグループ内のすべての RAM ユーザーが権限を継承します。
ROS カスタムポリシーの例
-
例 1:スタックのリストの表示
次のポリシーでは、RAM ユーザーが China (Beijing) リージョンのすべてのスタックのリストと詳細を表示できるようにします。アスタリスク (*) はワイルドカード文字であり、China (Beijing) リージョンのすべてのスタックを表します。
{ "Statement": [ { "Action": [ "ros:DescribeStacks", "ros:DescribeStackDetail" ], "Effect": "Allow", "Resource": "acs:ros:cn-beijing:*:stack/*" } ], "Version": "1" } -
例 2:スタックの作成と表示
次のポリシーでは、RAM ユーザーがすべてのリージョンでスタックを作成および表示できるようにします。
{ "Statement": [ { "Action": [ "ros:CreateStack", "ros:DescribeStacks", "ros:DescribeStackDetail", "ros:ValidateTemplate" ], "Effect": "Allow", "Resource": "*" } ], "Version": "1" } -
例 3:スタックの更新
次のポリシーでは、RAM ユーザー
12345****がスタック94dd5431-2df6-4415-81ca-732a7082****を更新できるようにします。{ "Statement": [ { "Action": [ "ros:UpdateStack" ], "Effect": "Allow", "Resource": "acs:ros:cn-beijing:12345****:stack/94dd5431-2df6-4415-81ca-732a7082****" } ], "Version": "1" } -
例 4:すべての ROS 機能とリソースへのアクセス
このポリシーは、ROS が一時的な権限付与に Security Token Service (STS) を使用するかどうかに関係なく適用されます。このポリシーでは、RAM ユーザーがすべての ROS 機能とリソースにアクセスできますが、他の Alibaba Cloud サービスにはアクセスできません。これは、ユーザーが 42.120.XX.XX/24 CIDR ブロックから HTTPS 経由で Alibaba Cloud 管理コンソールまたは API にアクセスする場合にのみ許可されます。注意:
-
acs:SourceIpは 42.120.XX.XX/24 に設定されています。これは、Alibaba Cloud へは指定された CIDR ブロック (42.120.XX.XX/24) からアクセスする必要があることを意味します。 -
acs:SecureTransportは true に設定されています。これは、Alibaba Cloud へのアクセスに HTTPS を使用する必要があることを意味します。
{ "Statement": [ { "Effect": "Allow", "Action": "ros:*", "Resource": "*", "Condition": { "IpAddress": { "acs:SourceIp": "42.120.XX.XX/24" }, "Bool": { "acs:SecureTransport": "true" } } } ], "Version": "1" } -
-
例 5:すべての ROS 機能とリソースへのアクセスと Elastic Compute Service (ECS) へのアクセスの構成
-
ROS が一時的な権限付与に STS を使用する場合:
acs:SourceIpとacs:SecureTransportの条件は、STS シナリオでは引き継がれません。したがって、このポリシーでは、RAM ユーザーがすべての ROS 機能とリソースにアクセスできますが、ECS を含む他のサービスにはアクセスできません。これは、ユーザーが 42.120.XX.XX/24 CIDR ブロックから HTTPS 経由で Alibaba Cloud 管理コンソールまたは API にアクセスする場合にのみ許可されます。 -
ROS が一時的な権限付与に STS を使用しない場合: このポリシーでは、RAM ユーザーが ROS と ECS のすべての機能とリソースにアクセスできますが、他のサービスにはアクセスできません。これは、ユーザーが 42.120.XX.XX/24 CIDR ブロックから HTTPS 経由で Alibaba Cloud 管理コンソールまたは API にアクセスする場合にのみ許可されます。
説明ROS が一時的な権限付与に STS を使用しない場合、
acs:SourceIpとacs:SecureTransportの引き継ぎをサポートするサービスは、Elastic Compute Service (ECS)、Virtual Private Cloud (VPC)、Server Load Balancer (SLB)、ApsaraDB RDS (RDS)、Tair (Redis OSS-compatible)、PrivateZone、Container Service for Kubernetes (ACK)、Function Compute (FC)、Object Storage Service (OSS)、Simple Log Service (SLS)、API Gateway、ActionTrail です。{ "Statement": [ { "Effect": "Allow", "Action": [ "ros:*", "ecs:*" ], "Resource": "*", "Condition": { "IpAddress": { "acs:SourceIp": "42.120.XX.XX/24" }, "Bool": { "acs:SecureTransport": "true" } } } ], "Version": "1" }
-
-
例 6:タグベースの認可を使用した ROS リソースへのアクセスと操作
次のポリシーでは、RAM ユーザーがタグのキーと値のペア
{"Environment": "TEST"}を持つ ROS リソースを管理できるようにします。{ "Statement": [ { "Action": "ros:*", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "acs:ResourceTag/Environment": "TEST" } } } ], "Version": "1" }