本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon ECS API 操作支持的资源级权限
资源级权限 一词是指指定允许用户对哪些资源执行操作的能力。Amazon ECS 对资源级权限提供部分支持。这意味着对于某些 Amazon ECS 操作,您可以控制何时允许用户执行操作(基于必须满足的条件)或是允许用户使用的特定资源。例如,您可以为用户授予启动实例的权限,但是仅限特定类型的实例,并且只能使用特定的 AMI。
有关 Amazon ECS 操作创建或修改的资源以及可以在 IAM 策略语句中使用的 ARN 和 Amazon ECS 条件键的更多信息,请参阅 IAM 用户指南 中的 Amazon Elastic Container Service 的操作、资源和条件键。
有关资源级权限的注意事项
当通过在 IAM 策略中指定资源的 Amazon 资源名称 (ARN) 来控制对 Amazon ECS API 操作的访问时,请记住,ECS 引入了一个账户设置,该设置会影响容器实例、服务和任务的 ARN 格式。要使用资源级权限,我们建议您选择使用新的、更长的 ARN 格式。有关更多信息,请参阅 Amazon 资源名称 (ARN) 和IDs。
在评估 IAM 策略时,根据指定资源对新的、更长的 ARN 格式的使用来评估这些资源。以下是访问控制方式的示例。
使用通配符指定仅具有集群的服务
示例:arn:aws:ecs:
region
:aws_account_id
:service/cluster_name
*
在此示例中,将控制对以下服务的访问:
-
cluster_name*
集群中所有使用新 ARN 格式的服务。 -
cluster_name*
集群中所有使用旧 ARN 格式的服务。
这将不会控制对使用旧 ARN 格式、具有前缀为 cluster_name
的服务名称且不在 cluster_name*
集群中的服务的访问。
使用通配符指定同时具有集群和服务名称的服务
示例:arn:aws:ecs:
region
:aws_account_id
:service/cluster_name
/service_name
*
在此示例中,将控制对以下服务的访问:
-
cluster_name
集群中所有使用新 ARN 格式的服务(具有service_name
前缀)。 -
cluster_name
集群中所有使用旧 ARN 格式的服务(具有service_name
前缀),即使服务的实际 ARN 仍将采用arn:aws:ecs:
ARN 格式。region
:aws_account_id
:service/service_name*
指定具有完整 ARN 的服务
示例:arn:aws:ecs:
region
:aws_account_id
:service/cluster_name
/service_name
在此示例中,将控制对以下服务的访问:
-
cluster_name
集群中所有使用新 ARN 格式的服务(具有service_name
服务名称)。 -
cluster_name
集群中所有使用旧 ARN 格式的服务(具有service_name
服务名称),即使服务的实际 ARN 仍将采用arn:aws:ecs:
ARN 格式。region
:aws_account_id
:service/service_name