Amazon Service Catalog 中的身份和 - Amazon Service Catalog
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Service Catalog 中的身份和

访问亚马逊Service Catalog 需要凭证。这些凭证必须有权访问 Amazon Web Services 资源,例如亚马逊云科技产品组合或产品。Amazon Service Catalog 集成了亚马逊身份和访问管理 (IAM),使您能够授予亚马逊Service Catalog 管理员创建和管理产品所需的权限,并授予亚马逊Service Catalog 终端用户启动产品和管理所需的权限预置产品。这些策略要么由 Amazon Web Services 创建和管理,要么由管理员和最终用户单独创建和管理。要控制访问权限,您可以将这些策略附加到您在 Amazon Service Catalog 中使用的 IAM 用户、群组和角色。

Audience

你拥有的权限Amazon Identity and Access Management (IAM) 可能取决于您在亚马逊云科技目录中扮演的角色。

你拥有的权限通过Amazon Identity and Access Management (IAM) 还取决于您在亚马逊云科技目录中扮演的角色。

管理员作为 Amazon Service Catalog 管理员,您需要对管理员控制台的完全访问权限和 IAM 权限,才能执行诸如创建和管理产品组合和产品、管理约束以及向最终用户授予访问权限等任务。

最终用户-在您的最终用户可以使用您的产品之前,您需要向他们授予访问亚马逊Service Catalog 最终用户控制台的权限。他们还可以拥有启动产品和管理预配置产品的权限。

IAM 管理员-如果您是 IAM 管理员,您可能希望了解如何编写策略以管理对 Amazon SerService Catalog 的访问的详细信息。要查看您可Service Catalog AM 中使用的基于身份的策略示例,请参阅预定义的Amazon Web Services 托管策略.

适用于的Amazon Web ServicesAmazon Service Catalog

Amazon 服务负责维护和更新 Amazon 托管策略。您无法更改 Amazon 托管策略中的权限。服务偶尔会向 Amazon 托管式策略添加额外权限以支持新功能。此类更新会影响您找到策略的所有身份(用户、组和角色)。服务最有可能更新Amazon新功能启动期间或新操作可用时的托管策略。服务不会从 Amazon 托管式策略中删除权限,因此策略更新不会破坏您的现有权限。

此外,Amazon 还支持跨多种服务的工作职能的托管式策略。例如, ReadOnlyAccess Amazon托管策略向所有人提供只读访问权限Amazon服务和资源。当服务启动新功能时,Amazon 会为新操作和资源添加只读权限。有关工作职能策略的列表和说明,请参阅 IAM 用户指南中的适用于工作职能的 Amazon 托管策略

Amazon Web Services 创建的托管策略将授予针对常用案例的必要权限。您可以将这些策略附加到 IAM 用户和角色。有关更多信息,请参阅 。Amazon Web ServicesIAM 用户指南.

以下是亚马逊Service Catalog 的Amazon Web Services 托管政策。

Administrators
  • AWSServiceCatalogAdminFullAccess— 授予管理员控制台视图的完全访问权限以及创建和管理产品和产品组合的权限。

  • AWSServiceCatalogAdminReadOnlyAccess— 授予管理员控制台视图的完全访问权限。不授予创建或管理产品和产品组合的访问权限。

最终用户
  • AWSServiceCatalogEndUserFullAccess— 授予对最终用户控制台视图的完全访问权限。授予启动产品和管理预配置产品的权限。

  • AWSServiceCatalogEndUserReadOnlyAccess— 授予对最终用户控制台视图的只读访问权限。不授予启动产品或管理预配置产品的权限。

要将策略附加到 IAM 用户,请参阅添加和删除 IAM 身份权限Amazon Identity and Access Management用户指南.

已淘汰的策略

以下托管策略已弃用:

  • ServiceCatalogAdminFullAccess— 使用AWSServiceCatalogAdminFullAccess请改用。

  • ServiceCatalogAdminReadOnlyAccess— 使用AWSServiceCatalogAdminReadOnlyAccess请改用。

  • ServiceCatalogEndUserFullAccess— 使用AWSServiceCatalogEndUserFullAccess请改用。

  • ServiceCatalogEndUserAccess— 使用AWSServiceCatalogEndUserReadOnlyAccess请改用。

使用以下过程可确保管理员和最终用户获得使用当前策略的权限。

要从已过时的策略迁移到当前策略,请参阅添加和删除 IAM 身份权限Amazon Identity and Access Management用户指南.

亚马逊Service Catalog 的基于身份的策略示例

最终用户的控制台访问权限

这些区域有:AWSServiceCatalogEndUserFullAccessAWSServiceCatalogEndUserReadOnlyAccess策略授予对亚马逊Service Catalog 终端用户控制台视图的访问权限。当拥有上述任一策略的用户在亚马逊 Web Services 管理控制台中选择 Amazon Services Catalog 时,最终用户控制台视图会显示他们有权启动的产品。

在最终用户成功启动您授予访问权限的 Amazon Service Catalog 中的产品之前,您必须向他们提供额外的 IAM 权限,以允许他们使用产品亚马逊中的每个底层亚马逊云科技资源 CloudFormation 模板。例如,如果产品模板包含Amazon Relational Database Service (Amazon RDS),则必须向用户 Amazon RDS 授予启动产品的权限。

要了解如何让最终用户能够启动产品,同时强制执行 Amazon Web Services 资源的最低访问权限,请参阅使用Amazon SService Catalog e C.

如果应用 AWSServiceCatalogEndUserReadOnlyAccess 策略,则您的用户将具有最终用户控制台的访问权限,但他们没有启动产品和管理预配置产品所需的权限。您可以使用 IAM 直接向最终用户授予这些权限,但如果您想限制最终用户对 Amazon Web Services 资源的访问权限,则应将该策略附加到启动角色。然后,您可以使用亚马逊Service Catalog 将启动角色应用于产品的启动约束。有关应用启动角色、启动角色限制和示例启动角色的更多信息,请参阅亚马逊Service Catalog.

注意

如果您向用户授予 Amazon Service Catalog 管理员的 IAM 权限,则会改为显示管理员控制台视图。除非您希望最终用户具有管理员控制台视图的访问权限,否则不要授予他们这些权限。

最终用户的产品访问权限

在最终用户可以使用您授予访问权限的产品之前,您必须向他们提供额外的 IAM 权限,以允许他们使用产品亚马逊中的每个底层 Amazon Web Services 资源 CloudFormation模板。例如,如果产品模板包含Amazon Relational Database Service (Amazon RDS),则必须向用户 Amazon RDS 授予启动产品的权限。

如果应用 ServiceCatalogEndUserAccess 策略,则您的用户将具有最终用户控制台视图的访问权限,但他们没有启动产品和管理预配置产品所需的权限。您可以直接向 IAM 中的最终用户授予这些权限,但如果您想限制最终用户对 Amazon Web Services 资源的访问权限,则应将该策略附加到启动角色。然后,您可以使用亚马逊Service Catalog 将启动角色应用于产品的启动约束。有关应用启动角色、启动角色限制和示例启动角色的更多信息,请参阅亚马逊Service Catalog.

管理预配置产品的策略示例

您可以创建自定义策略来帮助满足组织的安全要求。以下示例介绍如何自定义每个操作的访问级别,以提供用户、角色和账户级支持。您可以向用户授予查看、更新、终止和管理以下预配置产品的访问权限:1) 由该用户创建的预配置产品;2) 由其他用户使用该用户的角色创建的预配置产品;或 3) 由该用户登录的账户创建的预配置产品。这种访问权限是分层的,授予账户级访问权限还会授予角色级访问权限和用户级访问权限,而添加角色级访问权限还会授予用户级访问权限,但不授予账户级访问权限。您可以在策略 JSON 中使用 Condition 块作为 accountLevelroleLeveluserLevel 来指定上述权限。

这些示例也适用于亚马逊Service Catalog API 写入操作的访问级别:UpdateProvisionedProductTerminateProvisionedProduct,并读取操作:DescribeRecord,ScanProvisionedProducts,以及ListRecordHistory. ScanProvisionedProductsListRecordHistory API 操作使用 AccessLevelFilterKey 作为输入,该键的值对应于此处讨论的 Condition 块级别 (accountLevel 等同于“Account”的 AccessLevelFilterKey 值、“Role”的 roleLevel 值和“User”的 userLevel 值)。有关更多信息,请参阅 。Amazon Service Cat.

示例:对预配置产品的完全管理员访问权限

下面的策略允许自由读写账户级目录中的预配置产品和记录。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicecatalog:*" ], "Resource":"*", "Condition": { "StringEquals": { "servicecatalog:accountLevel": "self" } } } ] }

该策略的功能等同于下面的策略:

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicecatalog:*" ], "Resource":"*" } ] }

换言之,未指定Condition在 Amazon Service Catalog 的任何策略中屏蔽都被视为与指定"servicecatalog:accountLevel"访问。注意,accountLevel 访问权限包含 roleLeveluserLevel 访问权限。

示例:最终用户访问预配置产品

下面的策略将用户的访问权限限制为只能读写自己创建的预配置产品和关联记录。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeProduct", "servicecatalog:DescribeProductView", "servicecatalog:DescribeProvisioningParameters", "servicecatalog:DescribeRecord", "servicecatalog:ListLaunchPaths", "servicecatalog:ListRecordHistory", "servicecatalog:ProvisionProduct", "servicecatalog:ScanProvisionedProducts", "servicecatalog:SearchProducts", "servicecatalog:TerminateProvisionedProduct", "servicecatalog:UpdateProvisionedProduct" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:userLevel": "self" } } } ] }

示例:管理员对预配置产品的部分访问权限

如果将下面的两个策略应用到同一个用户,可产生称作“管理员部分访问权限”的访问类型 - 即提供完全的只读访问和有限的写入访问。这意味着用户能够查看账户级目录中的任何预配置产品或关联记录,但无法对不归该用户所有的任何预配置产品或记录执行任何操作。

第一个策略允许用户对自己创建的预配置产品执行写入操作,但不允许对其他用户创建的预配置产品执行写入操作。第二个策略允许用户对所有用户、角色或账户创建的预配置产品执行读取操作。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeProduct", "servicecatalog:DescribeProductView", "servicecatalog:DescribeProvisioningParameters", "servicecatalog:ListLaunchPaths", "servicecatalog:ProvisionProduct", "servicecatalog:SearchProducts", "servicecatalog:TerminateProvisionedProduct", "servicecatalog:UpdateProvisionedProduct" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:userLevel": "self" } } } ] }
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeRecord", "servicecatalog:ListRecordHistory", "servicecatalog:ScanProvisionedProducts" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:accountLevel": "self" } } } ] }

Amazon Service Catalog 身份

可以使用以下信息,以帮助您诊断和修复在使用 Amazon Service Catalog 和 Amazon Identity and Access Management 时可能遇到的常见问题。

我无权在 Amazon Service Catalog 中执行操作

如果 Amazon 管理控制台指示您无权执行某个操作,则必须联系您的管理员寻求帮助。您的管理员是指为您提供用户名和密码的那个人。当 mateoJackson IAM 用户尝试使用控制台查看有关虚构的详细信息,以了解有关虚构的详细信息,但会发生以下示例错误 my-example-widget 资源但没有虚构的 awes:GetWidget 权限。

User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: awes:GetWidget on resource: my-example-widget

在这种情况下,Mateo 请求管理员更新其策略,以允许他访问 my-example-widget 使用 awes 的资源:GetWidget 操作。

我无权执行 iam:PassRole

如果您收到错误消息,提示您无权执行 iam:PassRole 操作,则必须联系您的管理员寻求帮助。您的管理员是指为您提供用户名和密码的那个人。请求该人员更新您的策略,以便允许您将角色传递给 Amazon Service Catalg。

某些 Amazon 服务允许您将现有角色传递到该服务,而不是创建新的服务角色或服务相关角色。为此,您必须具有将角色传递到服务的权限。

当名为 marymajor 的 IAM 用户尝试使用控制台在亚马逊云科技目录中执行操作时,会发生以下示例错误。但是,服务必须具有服务角色所授予的权限才可执行操作。Mary 不具有将角色传递到服务的权限。

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

在这种情况下,Mary 请求她的管理员来更新其策略,以允许她执行 iam:PassRole 操作。

我想要查看我的访问密钥

在创建 IAM 用户访问密钥后,您可以随时查看您的访问密钥 ID。但是,您无法再查看您的秘密访问密钥。如果您丢失了私有密钥,则必须创建一个新的访问密钥对。

访问密钥包含两部分:访问密钥 ID(例如 AKIAIOSFODNN7EXAMPLE)和秘密访问密钥(例如 wJalrXUtnDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDENGDEN AKIAIOSFODNN7EXAMPLEbPxRfiCYEXAMPLEKEY)。

与用户名和密码一样,您必须同时使用访问密钥 ID 和秘密访问密钥对请求执行身份验证。像对用户名和密码一样,安全地管理访问密钥。

请不要向第三方提供访问密钥,即便是为了帮助查找规范用户 ID亚马逊一般参考指南。如果您这样做,可能会向某人提供对您的账户的永久访问权限。

当您创建访问密钥对时,系统会提示您将访问密钥 ID 和秘密访问密钥保存在一个安全位置。秘密访问密钥仅在您创建它时可用。如果丢失了您的秘密访问密钥,您必须为 IAM 用户添加新的访问密钥。您最多可拥有两个访问密钥。如果您已有两个密钥,则必须删除一个密钥对,然后再创建新的密钥。要查看说明,请参阅 IAM 用户指南中的管理访问密钥

我是管理员并希望允许其他人访问 Amazon Service Catalog

要允许其他人访问 Amazon Service Catalog,您必须为需要访问权限的人员或应用程序创建一个 IAM 实体(用户或角色)。他们将使用该实体的凭证访问 Amazon。然后,您必须将策略附加到实体,以便在 Amazon SerService Catalog 中向其授予正确的权限。

要立即开始使用,请参阅 IAM 用户指南中的创建您的第一个 IAM 委派用户和组

我希望允许我的亚马逊云科技账户以外的人访问我的 Amazon Service Calog 资源

您可以创建一个角色,以便其它账户中的用户或您组织外的人员可以使用该角色来访问您的资源。您可以指定谁值得信赖,可以代入角色。对于支持基于资源的策略或访问控制列表 (ACL) 的服务,您可以使用这些策略向人员授予对您的资源的访问权。

要了解更多信息,请参阅以下内容:

控制访问

Amazon Service Catalog 产品组合为您的管理员提供了对最终用户组的一定访问权限控制。将用户添加到某个产品组合后,这些用户可以浏览并启动其中的任何产品。有关更多信息,请参阅 管理产品组合

约束

约束控制在从特定产品组合启动产品时应用于最终用户的规则。您使用约束对产品进行限制,以便进行管理或控制成本。有关约束条件的更多信息,请参阅使用亚马逊Service Catalog 限制

Amazon Service Catalog 启动限制使您可以更好地控制最终用户所需的权限。当您的管理员为产品组合中的产品创建启动约束时,启动约束将与最终用户从该产品组合中启动产品时使用的角色 ARN 关联。使用此模式,您可以控制对Amazon Web Services 科技资源创建的访问权限。有关更多信息,请参阅 。亚马逊Service Catalog.