このトピックでは、カスタムリソースのレスポンスフィールドについて説明します。
カスタムリソースプロバイダーのレスポンスヘッダー
レスポンスヘッダーには、次のフィールドを含める必要があります。
- Content-type: 値を
"application/json"に設定します。 - Date: GMT 形式のリクエスト時間。例:
"Tue, 26 Nov 2019 08:46:44 GMT"。
カスタムリソースプロバイダーのレスポンスフィールド
カスタムリソースプロバイダーは、署名済み URL(ResponseURL または InnerResponseURL)に JSON ファイルを送信するときに、次のプロパティを含めます。
レスポンスボディの合計サイズは 4,096 バイトを超えることはできません。
- Status
- ROS によって生成されたリクエストに対して、カスタムリソースプロバイダーによって送信されるステータス値。
- 値は SUCCESS または FAILED のいずれかである必要があります。
- 必須: はい。
- タイプ: 文字列。
- Reason
- 失敗レスポンスの理由。
- Status フィールドが FAILED に設定されている場合にのみ有効です。
- Status フィールドが FAILED に設定されている場合にのみ必須です。それ以外の場合はオプションです。
- タイプ: 文字列。
- PhysicalResourceId
- カスタムリソースプロバイダーに固有の識別子。値のサイズは最大 255 バイトです。値は空の文字列にすることはできず、同じリソースに対するすべてのレスポンスで同一である必要があります。
- Status フィールドが SUCCESS に設定されている場合にのみ有効です。このレスポンス値は、カスタムリソースを含むスタックを作成するときに渡す必要があります。このレスポンス値は、カスタムリソースを含むスタックを更新または削除するときに、リクエストからコピーする必要があります。
- Status フィールドが SUCCESS に設定されている場合にのみ必須です。それ以外の場合はオプションです。
- タイプ: 文字列。
- StackId
- カスタムリソースを含むスタックを識別する ID。このレスポンス値は、リクエストからコピーする必要があります。
- 必須: はい。
- タイプ: 文字列。
- RequestId
- リクエストの一意の ID。このレスポンス値は、リクエストからコピーする必要があります。
- 必須: はい。
- タイプ: 文字列。
- LogicalResourceId
- ROS テンプレートのカスタムリソースに対してテンプレート開発者によって選択された名前 (論理 ID)。このレスポンス値は、リクエストからコピーする必要があります。
- 必須: はい。
- タイプ: 文字列。
- Data
- オプション。レスポンスと共に送信するカスタムリソースプロバイダー定義の名前と値のペア。Fn::GetAtt を使用して、テンプレートで名前によってここで提供された値にアクセスできます。
- 必須: いいえ。
- タイプ: JSON オブジェクト。