本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
通过以下方式发现资源 AWS Cloud Control API
使用 list-resources
命令可以发现 AWS 账户 和 AWS 区域中当前预置的资源。这包括指定资源类型的所有资源,无论它们是通过 Cloud Control API、直接通过底层服务还是其他机制(例如作为 AWS CloudFormation 堆栈的一部分)进行配置。
为每种资源返回的信息包括:
-
此资源的主标识符。
-
或者,它可以包括部分或全部资源的属性,并详细说明资源的当前状态。有关更多信息,请参阅 查看资源类型架构。
以下示例将返回 AWS::Logs::LogGroup
资源的列表。
$
aws cloudcontrol list-resources --type-name AWS::Logs::LogGroup
Cloud Control 会API返回您账户中指定资源类型的资源列表。例如,list-resources
返回您账户中所有资源的主要标识符和资源属性,无论这些AWS::Logs::LogGroup
资源是否由 Cloud Control API 配置。返回的信息类似于以下内容,具体取决于账户中的资源。
{ "TypeName": "AWS::Logs::LogGroup", "ResourceDescriptions": [ { "Identifier": "CloudControlExample", "Properties": '{"RetentionInDays":180, "LogGroupName": "CloudControlExample", "Arn": "arn:aws:logs:us-west-2:123456789012:log-group:CloudControlExample:*"}' }, { "Identifier": "AnotherLogGroupResourceExample", "Properties": '{"RetentionInDays":90, "LogGroupName": "AnotherLogGroupResourceExample", "Arn": "arn:aws:logs:us-west-2:123456789012:log-group:AnotherLogGroupResourceExample:*"}' } ] }
以下示例将请求一系列 AWS::Kinesis::Stream
资源。
$
aws cloudcontrol list-resources --type-name AWS::Kinesis::Stream
对于 Kinesis 流,Cloud Control 会API返回每个流的主标识符以及资源属性的子集。在本例中,只是一个 Name
属性。然后,您可以将流的主标识符与 get-resource
结合使用,以请求资源的完整当前状态。
{ "TypeName": "AWS::Kinesis::Stream", "ResourceDescriptions": [ { "Identifier": "MyKinesisStream", "Properties": '{"Name": "MyKinesisStream"}' }, { "Identifier": "AnotherStream", "Properties": '{"Name": "AnotherStream"}' } ] }
需要其他信息的资源
某些资源要求您提供有关要在请求中列出的资源的更多信息。在这些情况下,必须使用 ResourceModel
参数指定这些属性。
下表列出了这些资源,以及您在列出请求期间在 ResourceModel
参数中指定的属性。
资源 | 必需属性 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|