View a markdown version of this page

AWS Service Catalog API 概述 - AWS Service Catalog

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

AWS Service Catalog API 概述

使用 Service Catalog API 的好处

该 AWS Service Catalog API 提供对所有最终用户操作的编程控制,以此作为使用的一种替代方案 AWS 管理控制台。使用 API 时,您可以执行以下操作:

  • 编写自己的自定义界面和应用程序

  • 获得对最终用户产品配置操作的精细控制

  • 将资源配置集成到您的编排管道中

  • 访问托管应用程序及其资源的中心位置

访问 Service Catalog

要使用特定语言的 API 构建应用程序,请使用面向软件开发人员的库、示例代码、教程和其他资源。这些库文件提供可自动执行任务的基本功能,例如以加密方式对请求签名、重试请求和处理错误响应,因此您可以更轻松地上手。要开始使用,请打开适用于 Amazon Web Services 的工具,然后在 SDK 下找到您选择的软件开发工具包。

如果倾向于使用命令行界面,您可使用以下选项:

AWS 命令行界面 (CLI)

要开始使用,请参阅《AWS Command Line Interface 用户指南》有关 Service Catalog 命令的更多信息,请参阅《命令参考》AWS CLI 中的 servicecatalog

AWS 适用于 Windows 的工具 PowerShell

要开始使用,请参阅《AWS Tools for PowerShell 用户指南》。有关 Service Catalog 的 cmdlet 的更多信息,请打开 AWS Tools for PowerShell Cmdlet 参考并展开。AWS Service Catalog

从逻辑上讲, AWS Service Catalog API 可以分为以下几类。

产品发现

使用这些操作来发现或获取有关产品及其发布要求的信息。这些操作不会创建或修改资源。

SearchProducts

列出来电者有权访问的所有产品。

DescribeProduct

获取有关产品的详细信息。

DescribeProductView

功能上与相同DescribeProduct,不同之处在于它使用的是产品视图的 ID 而不是产品的 ID。

ListLaunchPaths

列出用户访问指定产品的所有方式,称为产品路径。用户必须选择路径才能配置产品。

DescribeProvisioningParameters

获取预配置指定产品所需的参数,并提供有关配置产品时会发生什么情况的其他元数据。

每个ProvisioningArtifactParameter都是用户为成功配置产品而必须指定的内容(例如,EC2 实例的大小)。这些ConstraintSummary对象包含允许值的列表以及有关这些ProvisioningArtifactParameter对象的其他元数据。

置备请求

使用这些操作来请求、更新或终止产品的配置。

ProvisionProduct

请求为产品预配。配置产品就是启动使该产品上线以供实际使用所需的资源。例如,配置由 CloudFormation 模板支持的产品意味着启动 CloudFormation 堆栈及其所有底层资源。

UpdateProvisionedProduct

更新预配置产品的配置。例如,由支持的产品 CloudFormation 会更新其底层 CloudFormation 堆栈。请求者必须拥有对指定 ProvisionedProduct内容的足够访问权限。

TerminateProvisionedProduct

请求终止预配置的产品。例如,对于由支持的产品 CloudFormation,这会删除底层 CloudFormation 堆栈。申请者必须拥有对指定预配置产品的足够访问权限。

预配置产品

使用这些操作来获取有关预配置产品的信息。这些操作不会创建或修改资源。

ListRecordHistory

列出所有已执行的请求,即使是已终止的预配置产品也是如此。

DescribeRecord

获取有关请求的信息。在请求操作之后使用此操作来获取当前RecordDetail信息。

SearchProvisionedProducts

获取有关符合指定条件的预配置产品的信息。

ScanProvisionedProducts

列出未终止的预配置产品。

DescribeProvisionedProduct

获取有关预配置产品的信息。

ImportAsProvisionedProduct

请求将资源作为与 Service Catalog 产品和配置对象关联的 Service Catalog 预配置产品导入。导入后,预配置的产品将支持所有支持的 Service Catalog 管理操作。

UpdateProvisionedProductProperties

请求更新指定预配置产品的属性。

预配置产品计划

使用这些操作来管理您的预配置产品计划。计划包括执行计划时要创建或修改的资源列表。

CreateProvisionedProductPlan

创建计划。

DescribeProvisionedProductPlan

获取有关计划资源变化的信息。

ExecuteProvisionedProductPlan

根据计划配置或修改产品。

ListProvisionedProductPlans

列出预配置产品的计划。

DeleteProvisionedProductPlan

删除计划。

产品组合

目录管理员使用这些操作为产品组合管理提供所有必要的操作。

CreatePortfolio

创建产品组合。

DeletePortfolio

删除投资组合。

DescribePortfolio

获取有关投资组合的详细信息。

DescribePortfolioShares

返回为指定投资组合创建的每份投资组合份额的摘要。

ListPortfolios

列出目录中的所有投资组合。

ListPortfoliosForProduct

列出与产品关联的所有产品组合。

UpdatePortfolio

更新投资组合。

UpdatePortfolioShare

更新投资组合份额。

CreatePortfolioShare

与 AWS 账户共享投资组合。

DeletePortfolioShare

停止共享投资组合。

AcceptPortfolioShare

接受共享投资组合的提议。

RejectPortfolioShare

拒绝共享投资组合的提议。

ListAcceptedPortfolioShares

列出该账户接受共享的所有投资组合的详细信息。

ListPortfolioAccess

列出有权访问投资组合的账户 ID。

校长协会

目录管理员使用这些操作为主体关联提供所有必要的操作。

AssociatePrincipalWithPortfolio

将委托人 ARN 与投资组合相关联。

DisassociatePrincipalFromPortfolio

取消本金 ARN 与投资组合的关联。

ListPrincipalsForPortfolio

列出与投资组合关联的所有委托人 ARN。

产品

目录管理员使用这些操作为产品管理提供所有必要的操作。

SearchProductsAsAdmin

获取产品的摘要和状态信息。

DescribeProductAsAdmin

获取有关产品的信息。

CreateProduct

创建产品。

CopyProduct

复制产品。

DescribeCopyProductStatus

获取复制产品操作的状态。

UpdateProduct

更新产品。

DeleteProduct

删除产品。

AssociateProductWithPortfolio

将产品与产品组合相关联。

DisassociateProductFromPortfolio

取消产品与产品组合的关联。

资源调配工件

目录管理员使用这些操作来管理配置对象(也称为产品版本)。

DescribeProvisioningArtifact

获取有关置备构件的信息。

CreateProvisioningArtifact

为产品创建配置对象。

DeleteProvisioningArtifact

删除置备对象。

ListProvisioningArtifacts

列出与产品关联的所有配置对象。

UpdateProvisioningArtifact

更新置备工件。

约束

目录管理员使用这些操作来管理约束。

CreateConstraint

创建约束。

DeleteConstraint

删除约束条件。

DescribeConstraint

获取有关约束条件的信息。

UpdateConstraint

更新约束条件。

ListConstraintsForPortfolio

获取产品组合和产品的约束信息。

服务操作

目录管理员使用这些操作来管理服务操作。

AssociateServiceActionWithProvisioningArtifact

将自助操作与置备对象关联。

CreateServiceAction

创建自助服务操作。

DeleteServiceAction

删除自助服务操作。

DescribeServiceAction

描述自助服务操作。

DescribeServiceActionExecutionParameters

查找针对特定预配置产品的特定自助操作的默认参数,并将结果映射返回给用户。

ExecuteProvisionedProductServiceAction

对已配置的产品执行自助操作。

UpdateServiceAction

更新自助服务操作。

TagOptions

目录管理员使用这些操作进行管理 TagOptions。

CreateTagOption

创建一个 TagOption.

ListTagOptions

列出你的 TagOptions.

DescribeTagOption

描述一个 TagOption.

UpdateTagOption

更新 a TagOption.

AssociateTagOptionWithResource

将 TagOption 与资源关联。

DisassociateTagOptionFromResource

取消与资源的关联。 TagOption

ListResourcesForTagOption

列出 a 的资源 TagOption。

DeleteTagOption

删除 a TagOption.

AppRegistry

用作您的应用程序、其资源以及您在企业中使用的应用程序元数据的存储库。

AssociateAttributeGroup

将属性组与应用程序关联,以使应用程序的元数据与该组的属性相结合。

AssociateResource

将资源与应用程序关联。

CreateApplication

创建一个新应用程序,该应用程序是相关云资源抽象层次结构中的顶级节点。

CreateAttributeGroup

创建一个新的属性组作为用户定义属性的容器。

DeleteApplication

删除由其应用程序 ID 或名称指定的应用程序。

DeleteAttributeGroup

删除由其属性组 ID 或名称指定的属性组。

DisassociateAttributeGroup

取消属性组与应用程序的关联,以从应用程序的元数据中移除该属性组中包含的额外属性。

DisassociateResource

取消资源与应用程序的关联。

GetApplication

检索有关您的一个应用程序的元数据信息。

GetAssociatedResource

获取与应用程序关联的资源。

GetAttributeGroup

按名称或 ID 检索属性组。

ListApplications

列出与指定应用程序关联的所有属性组。

ListAssociatedAttributeGroups

列出与指定应用程序关联的所有属性组。

ListAssociatedResources

列出与指定应用程序关联的所有资源。

ListAttributeGroups

列出您有权访问的所有属性组。

ListAttributeGroupsForApplication

列出与特定应用程序关联的所有属性组的详细信息。

ListTagsForResource

列出资源上的所有标签。

TagResource

为指定资源分配一个或多个标签(键值对)。

SyncResource

将资源与当前录制的内容同步。 AppRegistry

UntagResource

删除资源的标签。

UpdateApplication

使用新属性更新现有应用程序。

UpdateAttributeGroup

使用新的详细信息更新现有属性组。

工作流程示例

在这种情况下,管理员使用 AWS Service Catalog 创建资源,最终用户查找可用产品并配置产品。这是一个示例工作流程;这不是使用 AWS Service Catalog API 的唯一方法。

管理员任务
  • 创建产品组合、产品视图、产品、产品版本和约束条件。

  • 将 IAM 用户分配给产品,这样他们就可以访问了。

最终用户任务
  1. 用户调用SearchProducts时不带任何参数。这将返回用户有权访问的产品列表,以及可用于确定结果范围的 SearchDomain “”。

  2. 用户继续使用其他搜索过滤器SearchProducts进行呼叫,直到找到所需的产品。

  3. 用户打电话DescribeProductView以查找此产品的配置对象(也称为版本)列表。这决定了用户实际提供的内容。

  4. 用户调用ListLaunchPaths以查找此产品的路径列表以及每条路径的限制。这决定了对预配置产品应用哪组约束。

  5. 选择配置对象和路径后,用户调用DescribeProvisioningParameters。这将返回用户在使用配置工件和路径配置产品之前必须提供的参数列表,以及管理员决定提供的任何其他使用说明。

  6. 用户调用 ProvisionProduct,指定产品、配置对象、路径和输入参数。输入参数是键值对的列表,其中密钥是使用获取的 DescribeProvisioningParameters,值由用户提供(例如)。{ParameterKey:"dbpassword", ParameterValue:"mycoolpassword"}这将启动创建指定 AWS 资源的工作流程。它还会创建用于跟踪置备请求的记录详细信息以及代表底层 AWS 资源的预配置产品对象。

  7. 用户进行轮询DescribeRecord以查看记录详细信息的状态何时从IN_PROGRESS状态变为已完成状态(SUCCEEDED或者ERROR)。

  8. 当请求的记录详细信息处于已完成状态时,用户会DescribeRecord再次调用。输出标识了创建的资源。

  9. 用户调用UpdateProvisionedProduct以更新现有的底层资源。根据请求的特定更新,此操作可以不间断地更新,但会有一些中断,也可以完全替换预配置的产品。

  10. 最后,用户调用终TerminateProvisionedProduct止已配置的产品。