View a markdown version of this page

使用 AWS CLI 的服务目录示例 - AWS Command Line Interface

使用 AWS CLI 的服务目录示例

以下代码示例演示如何通过将 AWS Command Line Interface与服务目录结合使用,来执行操作和实现常见场景。

操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示了如何使用 accept-portfolio-share

AWS CLI

接受共享产品组合

以下 accept-portfolio-share 示例接受其他用户提出的共享指定产品组合的提议。

aws servicecatalog accept-portfolio-share \ --portfolio-id port-2s6wuabcdefghijk

此命令不生成任何输出。

以下代码示例演示了如何使用 associate-principal-with-portfolio

AWS CLI

将委托人与产品组合相关联

以下 associate-principal-with-portfolio 示例会将用户与特定产品组合相关联。

aws servicecatalog associate-principal-with-portfolio \ --portfolio-id port-2s6abcdefwdh4 \ --principal-arn arn:aws:iam::123456789012:user/usertest \ --principal-type IAM

此命令不生成任何输出。

以下代码示例演示了如何使用 associate-product-with-portfolio

AWS CLI

将产品与产品组合相关联

以下 associate-product-with-portfolio 示例会将指定产品与特定产品组合相关联。

aws servicecatalog associate-product-with-portfolio --product-id prod-3p5abcdef3oyk --portfolio-id port-2s6abcdef5wdh4

此命令不生成任何输出。

以下代码示例演示了如何使用 associate-tag-option-with-resource

AWS CLI

将 TagOption 与资源相关联

以下 associate-tag-option-with-resource 示例会将指定 TagOption 与指定资源相关联。

aws servicecatalog associate-tag-option-with-resource \ --resource-id port-2s6abcdq5wdh4 \ --tag-option-id tag-p3abc2pkpz5qc

此命令不生成任何输出。

以下代码示例演示了如何使用 copy-product

AWS CLI

复制产品

以下 copy-product 示例使用 JSON 文件传递参数,创建指定产品的副本。

aws servicecatalog copy-product --cli-input-json file://copy-product-input.json

的内容copy-product-input.json

{ "SourceProductArn": "arn:aws:catalog:us-west-2:123456789012:product/prod-tcabcd3syn2xy", "TargetProductName": "copy-of-myproduct", "CopyOptions": [ "CopyTags" ] }

输出:

{ "CopyProductToken": "copyproduct-abc5defgjkdji" }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CopyProduct

以下代码示例演示了如何使用 create-constraint

AWS CLI

创建约束

以下 create-constraint 示例创建一个约束。

aws servicecatalog create-constraint \ --portfolio-id port-y3fnkesxxxxx \ --product-id prod-cfrfxmraxxxxx \ --type LAUNCH \ --parameters '{"RoleArn" : "arn:aws:iam::123456789012:role/LaunchRole"}'

输出:

{ "ConstraintDetail": { "ConstraintId": "cons-7tr6gei4bxxxx", "Type": "LAUNCH", "Owner": "123456789012", "ProductId": "prod-cfrfxmra3xxxx", "PortfolioId": "port-y3fnkeslpxxxx" }, "ConstraintParameters": "{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}", "Status": "CREATING" }

有关更多信息,请参阅《AWS 服务目录用户指南》中的使用 AWS 服务目录约束

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 CreateConstraint

以下代码示例演示了如何使用 create-portfolio-share

AWS CLI

与账户共享产品组合

以下 create-portfolio-share 示例与指定账户共享指定产品组合。

aws servicecatalog create-portfolio-share \ --portfolio-id port-2s6abcdef5wdh4 \ --account-id 794123456789

此命令不生成任何输出。

以下代码示例演示了如何使用 create-portfolio

AWS CLI

创建产品组合

以下 create-portfolio 示例创建产品组合。

aws servicecatalog create-portfolio \ --provider-name my-provider \ --display-name my-portfolio

输出:

{ "PortfolioDetail": { "ProviderName": "my-provider", "DisplayName": "my-portfolio", "CreatedTime": 1571337221.555, "ARN": "arn:aws:catalog:us-east-2:123456789012:portfolio/port-2s6xmplq5wdh4", "Id": "port-2s6xmplq5wdh4" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreatePortfolio

以下代码示例演示了如何使用 create-product

AWS CLI

创建产品

以下 create-product 示例使用 JSON 文件传递参数,创建产品。

aws servicecatalog create-product \ --cli-input-json file://create-product-input.json

的内容create-product-input.json

{ "AcceptLanguage": "en", "Name": "test-product", "Owner": "test-owner", "Description": "test-description", "Distributor": "test-distributor", "SupportDescription": "test-support", "SupportEmail": "test@amazon.com", "SupportUrl": "https://aws.amazon.com", "ProductType": "CLOUD_FORMATION_TEMPLATE", "Tags": [ { "Key": "region", "Value": "us-east-1" } ], "ProvisioningArtifactParameters": { "Name": "test-version-name", "Description": "test-version-description", "Info": { "LoadTemplateFromURL": "https://s3-us-west-1.amazonaws.com/cloudformation-templates-us-west-1/my-cfn-template.template" }, "Type": "CLOUD_FORMATION_TEMPLATE" } }

输出:

{ "Tags": [ { "Key": "region", "Value": "us-east-1" } ], "ProductViewDetail": { "CreatedTime": 1576025036.0, "ProductARN": "arn:aws:catalog:us-west-2:1234568542028:product/prod-3p5abcdef3oyk", "Status": "CREATED", "ProductViewSummary": { "Type": "CLOUD_FORMATION_TEMPLATE", "Distributor": "test-distributor", "SupportUrl": "https://aws.amazon.com", "SupportEmail": "test@amazon.com", "Id": "prodview-abcd42wvx45um", "SupportDescription": "test-support", "ShortDescription": "test-description", "Owner": "test-owner", "Name": "test-product2", "HasDefaultPath": false, "ProductId": "prod-3p5abcdef3oyk" } }, "ProvisioningArtifactDetail": { "CreatedTime": 1576025036.0, "Active": true, "Id": "pa-pq3p5lil12a34", "Description": "test-version-description", "Name": "test-version-name", "Type": "CLOUD_FORMATION_TEMPLATE" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreateProduct

以下代码示例演示了如何使用 create-provisioned-product-plan

AWS CLI

创建计划

以下 create-provisioned-product-plan 示例创建一个计划。

aws servicecatalog create-provisioned-product-plan \ --plan-name test-plan \ --plan-type CLOUDFORMATION \ --product-id prod-cfrfxmraxxxxx \ --provisioned-product-name test-pp \ --provisioning-artifact-id pa-7wz4cu5cxxxxx

输出:

{ "PlanName": "test-plan", "PlanId": "plan-cuxae3z6gxxxx", "ProvisionProductId": "pp-7kh7wbc4xxxxx", "ProvisionedProductName": "test-pp", "ProvisioningArtifactId": "pa-7wz4cu5cxxxxx" }

有关更多信息,请参阅《AWS 服务目录用户指南》中的创建启动计划

以下代码示例演示了如何使用 create-provisioning-artifact

AWS CLI

创建预置构件

以下 create-provisioning-artifact 示例使用 JSON 文件传递参数,创建预置构件。

aws servicecatalog create-provisioning-artifact \ --cli-input-json file://create-provisioning-artifact-input.json

的内容create-provisioning-artifact-input.json

{ "ProductId": "prod-nfi2abcdefghi", "Parameters": { "Name": "test-provisioning-artifact", "Description": "test description", "Info": { "LoadTemplateFromURL": "https://s3-us-west-1.amazonaws.com/cloudformation-templates-us-west-1/my-cfn-template.template" }, "Type": "CLOUD_FORMATION_TEMPLATE" } }

输出:

{ "Info": { "TemplateUrl": "https://s3-us-west-1.amazonaws.com/cloudformation-templates-us-west-1/my-cfn-template.template" }, "Status": "CREATING", "ProvisioningArtifactDetail": { "Id": "pa-bb4abcdefwnaio", "Name": "test-provisioning-artifact", "Description": "test description", "Active": true, "Type": "CLOUD_FORMATION_TEMPLATE", "CreatedTime": 1576022545.0 } }

以下代码示例演示了如何使用 create-tag-option

AWS CLI

创建 TagOption

以下 create-tag-option 示例创建 TagOption。

aws servicecatalog create-tag-option --key 1234 --value name

输出:

{ "TagOptionDetail": { "Id": "tag-iabcdn4fzjjms", "Value": "name", "Active": true, "Key": "1234" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreateTagOption

以下代码示例演示了如何使用 delete-constraint

AWS CLI

删除约束

以下 delete-constraint 示例删除一个约束。

aws servicecatalog delete-constraint \ --id cons-7tr6gei4bxxxx

此命令不生成任何输出。

有关更多信息,请参阅《AWS 服务目录用户指南》中的使用 AWS 服务目录约束

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 DeleteConstraint

以下代码示例演示了如何使用 delete-portfolio-share

AWS CLI

停止与账户共享产品组合

以下 delete-portfolio-share 示例停止与指定账户共享产品组合。

aws servicecatalog delete-portfolio-share \ --portfolio-id port-2s6abcdq5wdh4 \ --account-id 123456789012

此命令不生成任何输出。

以下代码示例演示了如何使用 delete-portfolio

AWS CLI

删除产品组合

以下 delete-portfolio 示例删除指定产品组合。

aws servicecatalog delete-portfolio \ --id port-abcdlx4gox4do

此命令不生成任何输出。

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeletePortfolio

以下代码示例演示了如何使用 delete-product

AWS CLI

删除产品

以下 delete-product 示例删除指定产品。

aws servicecatalog delete-product \ --id prod-abcdcek6yhbxi

此命令不生成任何输出。

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeleteProduct

以下代码示例演示了如何使用 delete-provisioned-product-plan

AWS CLI

删除预置产品计划

以下 delete-provisioned-product-plan 示例删除预置产品计划。

aws servicecatalog delete-provisioned-product-plan \ --plan-id plan-cuxae3z6gxxxx

此命令不生成任何输出。

有关更多信息,请参阅《AWS 服务目录用户指南》中的创建启动计划

以下代码示例演示了如何使用 delete-provisioning-artifact

AWS CLI

删除预置构件

以下 delete-provisioning-artifact 示例删除指定预置构件。

aws servicecatalog delete-provisioning-artifact \ --product-id prod-abc2uebuplcpw \ --provisioning-artifact-id pa-pqabcddii7ouc

此命令不生成任何输出。

以下代码示例演示了如何使用 delete-tag-option

AWS CLI

删除 TagOption

以下 delete-tag-option 示例删除指定 TagOption。

aws servicecatalog delete-tag-option \ --id tag-iabcdn4fzjjms

此命令不生成任何输出。

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeleteTagOption

以下代码示例演示了如何使用 describe-constraint

AWS CLI

描述约束

以下 describe-constraint 示例描述一个约束。

aws servicecatalog describe-constraint \ --id "cons-oqp52evr4bxxxx"

输出:

{ "ConstraintDetail": { "ConstraintId": "cons-7tr6gei4bxxxx", "Type": "LAUNCH", "Owner": "123456789012", "ProductId": "prod-cfrfxmra3xxxx", "PortfolioId": "port-y3fnkeslpxxxx" }, "ConstraintParameters": "{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}", "Status": "AVAILABLE" }

有关更多信息,请参阅《AWS 服务目录用户指南》中的使用 AWS 服务目录约束

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 DescribeConstraint

以下代码示例演示了如何使用 describe-copy-product-status

AWS CLI

描述复制产品操作的状态

以下 describe-copy-product-status 示例显示指定异步复制产品操作的当前状态。

aws servicecatalog describe-copy-product-status \ --copy-product-token copyproduct-znn5tf5abcd3w

输出:

{ "CopyProductStatus": "SUCCEEDED", "TargetProductId": "prod-os6hog7abcdt2" }

以下代码示例演示了如何使用 describe-portfolio-share-status

AWS CLI

描述产品组合共享状态

以下 describe-portfolio-share-status 示例描述产品组合共享状态。

aws servicecatalog describe-portfolio-share-status \ --portfolio-share-token "share-agngcybu4xxxx"

输出:

{ "PortfolioShareToken": "share-agngcybu4xxxx", "PortfolioId": "port-y3fnkeslxxxxx", "OrganizationNodeValue": "123456789012", "Status": "COMPLETED", "ShareDetails": { "SuccessfulShares": [ "012345678901" ], "ShareErrors": [] } }

有关更多信息,请参阅《AWS 服务目录用户指南》中的共享产品组合

以下代码示例演示了如何使用 describe-portfolio-shares

AWS CLI

描述产品组合共享

以下 describe-portfolio-shares 示例描述产品组合共享。

aws servicecatalog describe-portfolio-shares \ --portfolio-id port-y3fnkeslxxxxx \ --type ACCOUNT

输出:

{ "PortfolioShareDetails": [ { "PrincipalId": "123456789012", "Type": "ACCOUNT", "Accepted": true, "ShareTagOptions": false, "SharePrincipals": false }, { "PrincipalId": "123456789012", "Type": "ACCOUNT", "Accepted": false, "ShareTagOptions": false, "SharePrincipals": false } ] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的共享产品组合

以下代码示例演示了如何使用 describe-portfolio

AWS CLI

描述产品组合

以下 describe-portfolio 示例显示指定产品组合的详细信息。

aws servicecatalog describe-portfolio \ --id port-2s6abcdq5wdh4

输出:

{ "TagOptions": [], "PortfolioDetail": { "ARN": "arn:aws:catalog:us-west-2:687558541234:portfolio/port-2s6abcdq5wdh4", "Id": "port-2s6wuzyq5wdh4", "CreatedTime": 1571337221.555, "DisplayName": "my-portfolio", "ProviderName": "my-provider" }, "Tags": [] }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribePortfolio

以下代码示例演示了如何使用 describe-product-as-admin

AWS CLI

以管理员身份描述产品

以下 describe-product-as-admin 示例使用管理员权限显示指定产品的详细信息。

aws servicecatalog describe-product-as-admin \ --id prod-abcdcek6yhbxi

输出:

{ "TagOptions": [], "ProductViewDetail": { "ProductARN": "arn:aws:catalog:us-west-2:687558542028:product/prod-abcdcek6yhbxi", "ProductViewSummary": { "SupportEmail": "test@amazon.com", "Type": "CLOUD_FORMATION_TEMPLATE", "Distributor": "test-distributor", "ShortDescription": "test-description", "Owner": "test-owner", "Id": "prodview-wi3l2j4abc6vc", "SupportDescription": "test-support", "ProductId": "prod-abcdcek6yhbxi", "HasDefaultPath": false, "Name": "test-product3", "SupportUrl": "https://aws.amazon.com" }, "CreatedTime": 1577136715.0, "Status": "CREATED" }, "ProvisioningArtifactSummaries": [ { "CreatedTime": 1577136715.0, "Description": "test-version-description", "ProvisioningArtifactMetadata": { "SourceProvisioningArtifactId": "pa-abcdxkkiv5fcm" }, "Name": "test-version-name-3", "Id": "pa-abcdxkkiv5fcm" } ], "Tags": [ { "Value": "iad", "Key": "region" } ] }

以下代码示例演示了如何使用 describe-product

AWS CLI

描述产品

以下 describe-product 示例描述产品。

aws servicecatalog describe-product \ --id prod-dybl43puxxxxx

输出:

{ "ProductViewSummary": { "Id": "prodview-vkvy2kum5xxxx", "ProductId": "prod-dybl43puxxxxx", "Name": "ec2-test", "Owner": "user", "ShortDescription": "", "Type": "CLOUD_FORMATION_TEMPLATE", "Distributor": "", "HasDefaultPath": false, "SupportEmail": "", "SupportDescription": "", "SupportUrl": "" }, "ProvisioningArtifacts": [ { "Id": "pa-j7fs6ybztxxxx", "Name": "v2", "Description": "", "CreatedTime": "2021-07-16T15:20:24-05:00", "Guidance": "DEFAULT" }, { "Id": "pa-s6z7i2nivxxxx", "Description": "Create EC2 and KMS", "CreatedTime": "2024-06-13T18:27:54-05:00", "Guidance": "DEFAULT" }, { "Id": "pa-6573v3bloxxxx", "Name": "v3", "CreatedTime": "2024-06-13T18:45:14-05:00", "Guidance": "DEFAULT" } ], "Budgets": [], "LaunchPaths": [ { "Id": "lpv3-y3fnkeslpxxxx", "Name": "TestPort" } ] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的管理产品

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 DescribeProduct

以下代码示例演示了如何使用 describe-provisioned-product-plan

AWS CLI

描述预置产品计划

以下 describe-provisioned-product-plan 示例删除预置产品计划。

aws servicecatalog describe-provisioned-product-plan \ --plan-id "plan-g7iwsaf3mxxxx"

输出:

{ "ProvisionedProductPlanDetails": { "CreatedTime": "2025-11-09T18:09:37.808000-06:00", "PathId": "lpv3-y3fnkeslpxxxx", "ProductId": "prod-cfrfxmraxxxxx", "PlanName": "test-plan", "PlanId": "plan-g7iwsaf3mxxxx", "ProvisionProductId": "pp-mkbnbztzxxxxx", "ProvisionProductName": "test-pp", "PlanType": "CLOUDFORMATION", "ProvisioningArtifactId": "pa-7wz4cu5cxxxxx", "Status": "CREATE_SUCCESS", "UpdatedTime": "2025-11-09T18:09:46.524000-06:00", "Tags": [] } }

有关更多信息,请参阅《AWS 服务目录用户指南》中的创建启动计划

以下代码示例演示了如何使用 describe-provisioned-product

AWS CLI

描述预置产品

以下 describe-provisioned-product 示例显示指定预置产品的详细信息。

aws servicecatalog describe-provisioned-product \ --id pp-dpom27bm4abcd

输出:

{ "ProvisionedProductDetail": { "Status": "ERROR", "CreatedTime": 1577222793.358, "Arn": "arn:aws:servicecatalog:us-west-2:123456789012:stack/mytestppname3/pp-dpom27bm4abcd", "Id": "pp-dpom27bm4abcd", "StatusMessage": "AmazonCloudFormationException Parameters: [KeyName] must have values (Service: AmazonCloudFormation; Status Code: 400; Error Code: ValidationError; Request ID: 5528602a-a9ef-427c-825c-f82c31b814f5)", "IdempotencyToken": "527c5358-2a1a-4b9e-b1b9-7293b0ddff42", "LastRecordId": "rec-tfuawdjovzxge", "Type": "CFN_STACK", "Name": "mytestppname3" }, "CloudWatchDashboards": [] }

以下代码示例演示了如何使用 describe-provisioning-artifact

AWS CLI

描述预置构件

以下 describe-provisioning-artifact 示例显示指定预置构件的详细信息。

aws servicecatalog describe-provisioning-artifact \ --provisioning-artifact-id pa-pcz347abcdcfm \ --product-id prod-abcdfz3syn2rg

输出:

{ "Info": { "TemplateUrl": "https://awsdocs.s3.amazonaws.com/servicecatalog/myexampledevelopment-environment.template" }, "ProvisioningArtifactDetail": { "Id": "pa-pcz347abcdcfm", "Active": true, "Type": "CLOUD_FORMATION_TEMPLATE", "Description": "updated description", "CreatedTime": 1562097906.0, "Name": "updated name" }, "Status": "AVAILABLE" }

以下代码示例演示了如何使用 describe-provisioning-parameters

AWS CLI

描述预置参数

以下 describe-provisioning-parameters 示例描述预置参数。

aws servicecatalog describe-provisioning-parameters \ --product-id prod-cfrfxmraxxxxx \ --provisioning-artifact-id pa-7wz4cu5cxxxxx \ --path-id lpv3-y3fnkeslpxxxx

输出:

{ "ProvisioningArtifactParameters": [ { "ParameterKey": "Size", "ParameterType": "String", "IsNoEcho": false, "ParameterConstraints": { "AllowedValues": [] } } ], "ConstraintSummaries": [ { "Type": "LAUNCH" } ], "UsageInstructions": [ { "Type": "rules", "Value": "{}" }, { "Type": "version", "Value": "2010-09-09" }, { "Type": "launchAsRole", "Value": "arn:aws:iam::123456789012:role/NewLaunchRole" }, { "Type": "tagUpdateOnProvisionedProduct", "Value": "NOT_ALLOWED" } ], "TagOptions": [ { "Key": "Application Name", "Values": [ "Testing Tag", "Testing Tag Options" ] } ], "ProvisioningArtifactPreferences": {}, "ProvisioningArtifactOutputs": [ { "Key": "pa-7wz4cu5cxxxxx", "Description": "" } ], "ProvisioningArtifactOutputKeys": [] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的发布产品

以下代码示例演示了如何使用 describe-tag-option

AWS CLI

描述 TagOption

以下 describe-tag-option 示例显示指定 TagOption 的详细信息。

aws servicecatalog describe-tag-option \ --id tag-p3tej2abcd5qc

输出:

{ "TagOptionDetail": { "Active": true, "Id": "tag-p3tej2abcd5qc", "Value": "value-3", "Key": "1234" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeTagOption

以下代码示例演示了如何使用 disassociate-principal-from-portfolio

AWS CLI

解除主体与产品组合的关联

以下 disassociate-principal-from-portfolio 示例解除指定主体与产品组合的关联。

aws servicecatalog disassociate-principal-from-portfolio \ --portfolio-id port-2s6abcdq5wdh4 \ --principal-arn arn:aws:iam::123456789012:group/myendusers

此命令不生成任何输出。

以下代码示例演示了如何使用 disassociate-product-from-portfolio

AWS CLI

解除产品与产品组合的关联

以下 disassociate-product-from-portfolio 示例解除指定产品与产品组合的关联。

aws servicecatalog disassociate-product-from-portfolio \ --product-id prod-3p5abcdmu3oyk \ --portfolio-id port-2s6abcdq5wdh4

此命令不生成任何输出。

以下代码示例演示了如何使用 disassociate-tag-option-from-resource

AWS CLI

解除 TagOption 与资源的关联

以下 disassociate-tag-option-from-resource 示例解除指定 TagOption 与资源的关联。

aws servicecatalog disassociate-tag-option-from-resource \ --resource-id port-2s6abcdq5wdh4 \ --tag-option-id tag-p3abc2pkpz5qc

此命令不生成任何输出。

以下代码示例演示了如何使用 list-accepted-portfolio-shares

AWS CLI

列出已接受共享的产品组合

以下 list-accepted-portfolio-shares 示例列出该账户接受共享的所有产品组合,仅包括默认的服务目录产品组合。

aws servicecatalog list-accepted-portfolio-shares \ --portfolio-share-type "AWS_SERVICECATALOG"

输出:

{ "PortfolioDetails": [ { "ARN": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-d2abcd5dpkuma", "Description": "AWS Service Catalog Reference blueprints for often-used AWS services such as EC2, S3, RDS, VPC and EMR.", "CreatedTime": 1574456190.687, "ProviderName": "AWS Service Catalog", "DisplayName": "Reference Architectures", "Id": "port-d2abcd5dpkuma" }, { "ARN": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-abcdefaua7zpu", "Description": "AWS well-architected blueprints for high reliability applications.", "CreatedTime": 1574461496.092, "ProviderName": "AWS Service Catalog", "DisplayName": "High Reliability Architectures", "Id": "port-abcdefaua7zpu" } ] }

以下代码示例演示了如何使用 list-constraints-for-portfolio

AWS CLI

示例 1:列出产品组合的所有约束

以下 list-constraints-for-portfolio 示例列出产品组合的所有约束。

aws servicecatalog list-constraints-for-portfolio \ --portfolio-id port-y3fnkeslpxxxx

输出:

{ "ConstraintDetails": [ { "ConstraintId": "cons-dgdyqdqrxxxxx", "Type": "LAUNCH", "Description": "Launch as local role TestLaunchRole", "Owner": "123456789012", "ProductId": "prod-j6pd3hf6xxxxx", "PortfolioId": "port-y3fnkeslxxxxx" }, { "ConstraintId": "cons-tzxjnj4l6xxxx", "Type": "RESOURCE_UPDATE", "Owner": "123456789012", "ProductId": "prod-sphewkokxxxxx", "PortfolioId": "port-y3fnkeslxxxxx" } ] }

示例 2:列出有关产品的约束

以下 list-constraints-for-portfolio 示例列出有关产品的约束。

aws servicecatalog list-constraints-for-portfolio \ --portfolio-id port-y3fnkeslxxxxx \ --product-id prod-j6pd3hf6xxxxx

输出:

{ "ConstraintDetails": [ { "ConstraintId": "cons-dgdyqdqrxxxxx", "Type": "LAUNCH", "Description": "Launch as local role TestLaunchRole", "Owner": "123456789012", "ProductId": "prod-j6pd3hf6xxxxx", "PortfolioId": "port-y3fnkeslxxxxx" } ] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的使用 AWS 服务目录约束

以下代码示例演示了如何使用 list-launch-paths

AWS CLI

列出启动路径

以下 list-launch-paths 示例列出产品组合的启动路径。

aws servicecatalog list-launch-paths \ --product-id prod-cfrfxmraxxxxx

输出:

{ "LaunchPathSummaries": [ { "Id": "lpv3-y3fnkeslpxxxx", "ConstraintSummaries": [ { "Type": "LAUNCH" } ], "Tags": [], "Name": "TestPort" } ] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的向用户授予访问权限

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 ListLaunchPaths

以下代码示例演示了如何使用 list-portfolio-access

AWS CLI

列出有权访问产品组合的账户

以下 list-portfolio-access 示例列出有权访问指定产品组合的 AWS 账户。

aws servicecatalog list-portfolio-access \ --portfolio-id port-2s6abcdq5wdh4

输出:

{ "AccountIds": [ "123456789012" ] }

以下代码示例演示了如何使用 list-portfolios-for-product

AWS CLI

列出与产品关联的产品组合

以下 list-portfolios-for-product 示例列出与指定产品关联的产品组合。

aws servicecatalog list-portfolios-for-product \ --product-id prod-abcdfz3syn2rg

输出:

{ "PortfolioDetails": [ { "CreatedTime": 1571337221.555, "Id": "port-2s6abcdq5wdh4", "ARN": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-2s6abcdq5wdh4", "DisplayName": "my-portfolio", "ProviderName": "my-provider" }, { "CreatedTime": 1559665256.348, "Id": "port-5abcd3e5st4ei", "ARN": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-5abcd3e5st4ei", "DisplayName": "test", "ProviderName": "provider-name" } ] }

以下代码示例演示了如何使用 list-portfolios

AWS CLI

列出产品组合

以下 list-portfolios 示例列出当前区域的服务目录产品组合。

aws servicecatalog list-portfolios

输出:

{ "PortfolioDetails": [ { "CreatedTime": 1559665256.348, "ARN": "arn:aws:catalog:us-east-2:123456789012:portfolio/port-5pzcxmplst4ei", "DisplayName": "my-portfolio", "Id": "port-5pzcxmplst4ei", "ProviderName": "my-user" } ] }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ListPortfolios

以下代码示例演示了如何使用 list-principals-for-portfolio

AWS CLI

列出产品组合的所有主体

以下 list-principals-for-portfolio 示例列出指定产品组合的所有主体。

aws servicecatalog list-principals-for-portfolio \ --portfolio-id port-2s6abcdq5wdh4

输出:

{ "Principals": [ { "PrincipalARN": "arn:aws:iam::123456789012:user/usertest", "PrincipalType": "IAM" } ] }

以下代码示例演示了如何使用 list-provisioning-artifacts

AWS CLI

列出产品的所有预置构件

以下 list-provisioning-artifacts 示例列出指定产品的所有预置构件。

aws servicecatalog list-provisioning-artifacts \ --product-id prod-nfi2abcdefgcpw

输出:

{ "ProvisioningArtifactDetails": [ { "Id": "pa-abcdef54ipm6z", "Description": "test-version-description", "Type": "CLOUD_FORMATION_TEMPLATE", "CreatedTime": 1576021147.0, "Active": true, "Name": "test-version-name" }, { "Id": "pa-bb4zyxwwnaio", "Description": "test description", "Type": "CLOUD_FORMATION_TEMPLATE", "CreatedTime": 1576022545.0, "Active": true, "Name": "test-provisioning-artifact-2" } ] }

以下代码示例演示了如何使用 list-resources-for-tag-option

AWS CLI

列出与 TagOption 关联的资源

以下 list-resources-for-tag-option 示例列出与指定 TagOption 关联的资源。

aws servicecatalog list-resources-for-tag-option \ --tag-option-id tag-p3tej2abcd5qc

输出:

{ "ResourceDetails": [ { "ARN": "arn:aws:catalog:us-west-2:123456789012:product/prod-abcdfz3syn2rg", "Name": "my product", "Description": "description", "CreatedTime": 1562097906.0, "Id": "prod-abcdfz3syn2rg" } ] }

以下代码示例演示了如何使用 list-tag-options

AWS CLI

以下 list-tag-options 示例列出 TagOptions 的所有值。

aws servicecatalog list-tag-options

输出:

{ "TagOptionDetails": [ { "Value": "newvalue", "Active": true, "Id": "tag-iabcdn4fzjjms", "Key": "1234" }, { "Value": "value1", "Active": true, "Id": "tag-e3abcdvmwvrzy", "Key": "key" } ] }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ListTagOptions

以下代码示例演示了如何使用 provision-product

AWS CLI

置备产品

以下 provision-product 示例使用指定的预置构件置备指定的产品。

aws servicecatalog provision-product \ --product-id prod-abcdfz3syn2rg \ --provisioning-artifact-id pa-abc347pcsccfm \ --provisioned-product-name "mytestppname3"

输出:

{ "RecordDetail": { "RecordId": "rec-tfuawdabcdege", "CreatedTime": 1577222793.362, "ProvisionedProductId": "pp-abcd27bm4mldq", "PathId": "lpv2-abcdg3jp6t5k6", "RecordErrors": [], "ProductId": "prod-abcdfz3syn2rg", "UpdatedTime": 1577222793.362, "RecordType": "PROVISION_PRODUCT", "ProvisionedProductName": "mytestppname3", "ProvisioningArtifactId": "pa-pcz347abcdcfm", "RecordTags": [], "Status": "CREATED", "ProvisionedProductType": "CFN_STACK" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ProvisionProduct

以下代码示例演示了如何使用 reject-portfolio-share

AWS CLI

拒绝分享产品组合

以下 reject-portfolio-share 示例拒绝分享给定产品组合的产品组合。

aws servicecatalog reject-portfolio-share \ --portfolio-id port-2s6wuabcdefghijk

此命令不生成任何输出。

以下代码示例演示了如何使用 scan-provisioned-products

AWS CLI

列出所有可用的预置产品

以下 scan-provisioned-products 示例列出可用的预置产品。

aws servicecatalog scan-provisioned-products

输出:

{ "ProvisionedProducts": [ { "Status": "ERROR", "Arn": "arn:aws:servicecatalog:us-west-2:123456789012:stack/mytestppname3/pp-abcd27bm4mldq", "StatusMessage": "AmazonCloudFormationException Parameters: [KeyName] must have values (Service: AmazonCloudFormation; Status Code: 400; Error Code: ValidationError; Request ID: 5528602a-a9ef-427c-825c-f82c31b814f5)", "Id": "pp-abcd27bm4mldq", "Type": "CFN_STACK", "IdempotencyToken": "527c5358-2a1a-4b9e-b1b9-7293b0ddff42", "CreatedTime": 1577222793.358, "Name": "mytestppname3", "LastRecordId": "rec-tfuawdabcdxge" } ] }

以下代码示例演示了如何使用 search-products-as-admin

AWS CLI

搜索具有管理员权限的产品

以下 search-products-as-admin 示例使用产品组合 ID 作为筛选条件搜索具有管理员权限的产品。

aws servicecatalog search-products-as-admin \ --portfolio-id port-5abcd3e5st4ei

输出:

{ "ProductViewDetails": [ { "ProductViewSummary": { "Name": "my product", "Owner": "owner name", "Type": "CLOUD_FORMATION_TEMPLATE", "ProductId": "prod-abcdfz3syn2rg", "HasDefaultPath": false, "Id": "prodview-abcdmyuzv2dlu", "ShortDescription": "description" }, "ProductARN": "arn:aws:catalog:us-west-2:123456789012:product/prod-abcdfz3syn2rg", "CreatedTime": 1562097906.0, "Status": "CREATED" } ] }

以下代码示例演示了如何使用 search-products

AWS CLI

获取有关调用方有权访问的产品的信息

以下 search-products 示例获取调用方有权访问的所有产品。

aws servicecatalog search-products

输出:

{ "ProductViewSummaries": [ { "Id": "prodview-5uksdh4xxxxxx", "ProductId": "prod-j6fu3hxxxxxxxx", "Name": "TestSC", "Owner": "test", "ShortDescription": "", "Type": "CLOUD_FORMATION_TEMPLATE", "Distributor": "", "HasDefaultPath": false, "SupportEmail": "", "SupportDescription": "", "SupportUrl": "" }, { "Id": "prodview-3kfoaabxxxxxx", "ProductId": "prod-j6pd3xxxxxxxx", "Name": "TestProduct", "Owner": "test_owner", "ShortDescription": "", "Type": "CLOUD_FORMATION_TEMPLATE", "Distributor": "", "HasDefaultPath": false, "SupportEmail": "", "SupportDescription": "", "SupportUrl": "" } ] }

有关更多信息,请参阅《AWS 服务目录用户指南》中的管理产品

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 SearchProducts

以下代码示例演示了如何使用 search-provisioned-products

AWS CLI

搜索预置产品

以下 search-provisioned-products 示例使用 JSON 文件传递参数,搜索与指定产品 ID 匹配的预置产品。

aws servicecatalog search-provisioned-products \ --cli-input-json file://search-provisioned-products-input.json

的内容search-provisioned-products-input.json

{ "Filters": { "SearchQuery": [ "prod-tcjvfz3syn2rg" ] } }

输出:

{ "ProvisionedProducts": [ { "ProvisioningArtifactId": "pa-pcz347abcdcfm", "Name": "mytestppname3", "CreatedTime": 1577222793.358, "Id": "pp-abcd27bm4mldq", "Status": "ERROR", "UserArn": "arn:aws:iam::123456789012:user/cliuser", "StatusMessage": "AmazonCloudFormationException Parameters: [KeyName] must have values (Service: AmazonCloudFormation; Status Code: 400; Error Code: ValidationError; Request ID: 5528602a-a9ef-427c-825c-f82c31b814f5)", "Arn": "arn:aws:servicecatalog:us-west-2:123456789012:stack/mytestppname3/pp-abcd27bm4mldq", "Tags": [ { "Value": "arn:aws:catalog:us-west-2:123456789012:product/prod-abcdfz3syn2rg", "Key": "aws:servicecatalog:productArn" }, { "Value": "arn:aws:iam::123456789012:user/cliuser", "Key": "aws:servicecatalog:provisioningPrincipalArn" }, { "Value": "value-3", "Key": "1234" }, { "Value": "pa-pcz347abcdcfm", "Key": "aws:servicecatalog:provisioningArtifactIdentifier" }, { "Value": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-2s6abcdq5wdh4", "Key": "aws:servicecatalog:portfolioArn" }, { "Value": "arn:aws:servicecatalog:us-west-2:123456789012:stack/mytestppname3/pp-abcd27bm4mldq", "Key": "aws:servicecatalog:provisionedProductArn" } ], "IdempotencyToken": "527c5358-2a1a-4b9e-b1b9-7293b0ddff42", "UserArnSession": "arn:aws:iam::123456789012:user/cliuser", "Type": "CFN_STACK", "LastRecordId": "rec-tfuawdabcdxge", "ProductId": "prod-abcdfz3syn2rg" } ], "TotalResultsCount": 1 }

以下代码示例演示了如何使用 terminate-provisioned-product

AWS CLI

终止预置产品

以下 terminate-provisioned-product 示例终止预置产品。

aws servicecatalog terminate-provisioned-product \ --provisioned-product-id pp-7z4t3k4hxxxxx

输出:

{ "RecordDetail": { "RecordId": "rec-sbwnhzld3xxxx", "ProvisionedProductName": "test2", "Status": "CREATED", "CreatedTime": "2025-12-31T15:23:55.051000-06:00", "UpdatedTime": "2025-12-31T15:23:55.051000-06:00", "ProvisionedProductType": "CFN_STACK", "RecordType": "TERMINATE_PROVISIONED_PRODUCT", "ProvisionedProductId": "pp-7z4t3k4hxxxxx", "ProductId": "prod-j6pd3hf6xxxxx", "ProvisioningArtifactId": "pa-sbhovlh7wxxxx", "PathId": "lpv3-y3fnkeslpxxxx", "RecordErrors": [], "RecordTags": [], "LaunchRoleArn": "arn:aws:iam::123456789012:role/TestLaunchRole" } }

有关更多信息,请参阅《AWS 服务目录用户指南》中的管理预置产品

以下代码示例演示了如何使用 update-constraint

AWS CLI

更新约束

以下 update-constraint 示例更新一个约束。

aws servicecatalog update-constraint \ --id cons-dgdyqdqrxxxxx \ --parameters '{"LocalRoleName": "TestLaunchRole"}'

输出:

{ "ConstraintDetail": { "ConstraintId": "cons-dgdyqdqrxxxxx", "Type": "LAUNCH", "Description": "Launch as local role TestLaunchRole", "Owner": "123456789012", "ProductId": "prod-j6pd3hf6xxxxx", "PortfolioId": "port-y3fnkeslxxxxx" }, "ConstraintParameters": "{\"LocalRoleName\": \"TestLaunchRole\"}", "Status": "CREATING" }

有关更多信息,请参阅《AWS 服务目录用户指南》中的使用 AWS 服务目录约束

  • 有关 API 详细信息,请参阅《AWS CLI Command Reference》中的 UpdateConstraint

以下代码示例演示了如何使用 update-portfolio

AWS CLI

更新产品组合

以下 update-portfolio 示例更新指定产品组合的名称。

aws servicecatalog update-portfolio \ --id port-5abcd3e5st4ei \ --display-name "New portfolio name"

输出:

{ "PortfolioDetail": { "DisplayName": "New portfolio name", "ProviderName": "provider", "ARN": "arn:aws:catalog:us-west-2:123456789012:portfolio/port-5abcd3e5st4ei", "Id": "port-5abcd3e5st4ei", "CreatedTime": 1559665256.348 }, "Tags": [] }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 UpdatePortfolio

以下代码示例演示了如何使用 update-product

AWS CLI

更新产品

以下 update-product 示例更新指定产品的名称和所有人。

aws servicecatalog update-product \ --id prod-os6abc7drqlt2 \ --name "New product name" \ --owner "Updated product owner"

输出:

{ "Tags": [ { "Value": "iad", "Key": "region" } ], "ProductViewDetail": { "ProductViewSummary": { "Owner": "Updated product owner", "ProductId": "prod-os6abc7drqlt2", "Distributor": "test-distributor", "SupportUrl": "https://aws.amazon.com", "Name": "New product name", "ShortDescription": "test-description", "HasDefaultPath": false, "Id": "prodview-6abcdgrfhvidy", "SupportDescription": "test-support", "SupportEmail": "test@amazon.com", "Type": "CLOUD_FORMATION_TEMPLATE" }, "Status": "CREATED", "ProductARN": "arn:aws:catalog:us-west-2:123456789012:product/prod-os6abc7drqlt2", "CreatedTime": 1577136255.0 } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 UpdateProduct

以下代码示例演示了如何使用 update-provisioning-artifact

AWS CLI

更新预置构件

以下 update-provisioning-artifact 示例使用 JSON 文件传递参数,更新指定预置构件的名称和描述。

aws servicecatalog update-provisioning-artifact \ --cli-input-json file://update-provisioning-artifact-input.json

的内容update-provisioning-artifact-input.json

{ "ProductId": "prod-abcdfz3syn2rg", "ProvisioningArtifactId": "pa-pcz347abcdcfm", "Name": "updated name", "Description": "updated description" }

输出:

{ "Info": { "TemplateUrl": "https://awsdocs.s3.amazonaws.com/servicecatalog/myexampledevelopment-environment.template" }, "Status": "AVAILABLE", "ProvisioningArtifactDetail": { "Active": true, "Description": "updated description", "Id": "pa-pcz347abcdcfm", "Name": "updated name", "Type": "CLOUD_FORMATION_TEMPLATE", "CreatedTime": 1562097906.0 } }

以下代码示例演示了如何使用 update-tag-option

AWS CLI

更新 TagOption

以下 update-tag-option 示例使用指定 JSON 文件更新 TagOption 的值。

aws servicecatalog update-tag-option --cli-input-json file://update-tag-option-input.json

的内容update-tag-option-input.json

{ "Id": "tag-iabcdn4fzjjms", "Value": "newvalue", "Active": true }

输出:

{ "TagOptionDetail": { "Value": "newvalue", "Key": "1234", "Active": true, "Id": "tag-iabcdn4fzjjms" } }
  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 UpdateTagOption