メニュー
AWS CloudFormation
ユーザーガイド (API Version 2010-05-15)

Name タイプ

一部のリソースには、カスタム名を指定できます。デフォルトでは、リソースを特定する一意の物理 ID が AWS CloudFormation によって生成されます。たとえば、Amazon S3 バケットには stack123123123123-s3bucket-abcdefghijk1 などの物理 ID が付きます。カスタム名を使用すると、production-app-logsbusiness-metrics など、一見して判別しやすい名前を指定することができます。

リソース名は実行中のすべてのスタックおいて一意である必要があります。テンプレートを再利用して複数のスタックを作成する場合、テンプレートに基づくカスタム名は変更するか削除する必要があります。名前を指定しない場合、AWS CloudFormation は一意の物理 ID を生成してリソースの名前とします。名前は文字で開始し、ASCII 文字、数字、ハイフンのみを使用できます。最後の文字をハイフンにすることはできず、ハイフンを 2 つ続けて使用することもできません。

スタックリソースの変更を AWS CloudFormation 以外で行うことも避けてください。たとえば、スタックに属しているリソースの名前を AWS CloudFormation を使用せずに変更した場合、そのスタックを更新または削除しようとしたときにエラーが発生します。

重要

カスタムで名前を付けたリソースの置き換えが発生する更新は実行できません。リソースを置き換える必要がある場合は、新しい名前を指定します。

カスタム名を使用する場合は、AWS CloudFormation テンプレートで、目的のリソースの名前プロパティを指定します。カスタム名をサポートする各リソースには、独自の名前を指定するためのプロパティが存在します。たとえば、DynamoDB テーブルに名前を付けるには、TableName プロパティを使用します。その例を次に示します。

JSON

Copy
"myDynamoDBTable" : { "Type" : "AWS::DynamoDB::Table", "Properties" : { "KeySchema" : { "HashKeyElement": { "AttributeName" : "AttributeName1", "AttributeType" : "S" }, "RangeKeyElement" : { "AttributeName" : "AttributeName2", "AttributeType" : "N" } }, "ProvisionedThroughput" : { "ReadCapacityUnits" : "5", "WriteCapacityUnits" : "10" }, "TableName" : "SampleTable" } }

YAML

Copy
myDynamoDBTable: Type: "AWS::DynamoDB::Table" Properties: KeySchema: HashKeyElement: AttributeName: "AttributeName1" AttributeType: "S" RangeKeyElement: AttributeName: "AttributeName2" AttributeType: "N" ProvisionedThroughput: ReadCapacityUnits: "5" WriteCapacityUnits: "10" TableName: "SampleTable"

サポートされているリソース

次のリソースタイプをサポートするカスタム名:

このページの内容: