AWS CLI を使用した CloudFront の例 - AWS Command Line Interface

AWS CLI を使用した CloudFront の例

次のコード例は、CloudFront で AWS Command Line Interface を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています。

アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。

各例には完全なソースコードへのリンクが含まれており、コードの設定方法と実行方法に関する手順を確認できます。

トピック

アクション

次の例は、associate-distribution-tenant-web-acl を使用する方法を説明しています。

AWS CLI

ウェブ ACL と CloudFront ディストリビューションテナントを関連付けるには

次の associate-distribution-tenant-web-acl の例では、ウェブ ACL を ETag E13V1IB3VIYABC を持つ CloudFront ディストリビューションに関連付けます。

aws cloudfront associate-distribution-tenant-web-acl \ --id dt_2wjDZi3hD1ivOXf6rpZJO1AB \ --if-match E13V1IB3VIYABC \ --web-acl-arn arn:aws:wafv2:us-east-1:123456789012:global/webacl/web-global-example/626900da-5f64-418b-ba9b-743f37123ABC

出力:

{ "ETag": "E1VC38T7YXBABC", "Id": "dt_2wjDZi3hD1ivOXf6rpZJO1AB", "WebACLArn": "arn:aws:wafv2:us-east-1:123456789012:global/webacl/web-global-example/626900da-5f64-418b-ba9b-743f37123ABC" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「AWS WAF 保護を使用する」を参照してください。

次の例は、associate-distribution-web-acl を使用する方法を説明しています。

AWS CLI

ウェブ ACL と CloudFront ディストリビューションを関連付けるには

次の associate-distribution-web-acl の例では、ウェブ ACL を CloudFront ディストリビューションに関連付けます。

aws cloudfront associate-distribution-web-acl \ --id E1XNX8R2GOAABC \ --if-match E2YWS1C2J3OABC \ --web-acl-arn arn:aws:wafv2:us-east-1:123456789012:global/webacl/web-global-example/626900da-5f64-418b-ba9b-743f3746cABC

出力:

{ "ETag": "E3QE7ED60U0ABC", "Id": "E1XNX8R2GOAABC", "WebACLArn": "arn:aws:wafv2:us-east-1:123456789012:global/webacl/web-global-example/626900da-5f64-418b-ba9b-743f3746cABC" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「AWS WAF 保護を使用する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「AssociateDistributionWebAcl」を参照してください。

次の例は、create-cloud-front-origin-access-identity を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティを作成するには

次の例では、コマンドライン引数として OAI 設定を指定して、CloudFront オリジンアクセスアイデンティティ (OAI) を作成しています。

aws cloudfront create-cloud-front-origin-access-identity \ --cloud-front-origin-access-identity-config \ CallerReference="cli-example",Comment="Example OAI"

次の例に示すように、同じことは、JSON ファイルで OAI 設定を指定することでも実現できます。

aws cloudfront create-cloud-front-origin-access-identity \ --cloud-front-origin-access-identity-config file://OAI-config.json

OAI-config.json ファイルは、以下を含む現在のディレクトリ内にある JSON ドキュメントです。

{ "CallerReference": "cli-example", "Comment": "Example OAI" }

OAI 設定をコマンドライン引数で指定する場合も、JSON ファイルで指定する場合も、出力は変わりません。

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/origin-access-identity/cloudfront/E74FTE3AEXAMPLE", "ETag": "E2QWRUHEXAMPLE", "CloudFrontOriginAccessIdentity": { "Id": "E74FTE3AEXAMPLE", "S3CanonicalUserId": "cd13868f797c227fbea2830611a26fe0a21ba1b826ab4bed9b7771c9aEXAMPLE", "CloudFrontOriginAccessIdentityConfig": { "CallerReference": "cli-example", "Comment": "Example OAI" } } }

次の例は、create-connection-group を使用する方法を説明しています。

AWS CLI

CloudFront で接続グループを作成するには

次の create-connection-group の例では、有効な接続グループを作成し、エニーキャスト静的 IP リストを指定し、IPv6 を無効にします。

aws cloudfront create-connection-group \ --name cg-with-anycast-ip-list \ --no-ipv6-enabled \ --enabled \ --anycast-ip-list-id aip_CCkW6gKrDiBD4n78123ABC \ --tags "Items=[{Key=abc,Value=123}]"

出力:

{ "ETag": "E23ZP02F085ABC", "ConnectionGroup": { "Id": "cg_2yb6uj74B4PCbfhT31WFdiSABC", "Name": "cg-with-anycast-ip-list", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2yb6uj74B4PCbfhT31WFdiSABC", "CreatedTime": "2025-06-16T16:25:50.061000+00:00", "LastModifiedTime": "2025-06-16T16:25:50.061000+00:00", "Tags": { "Items": [ { "Key": "abc", "Value": "123" } ] }, "Ipv6Enabled": false, "RoutingEndpoint": "dj6xusxq65abc.cloudfront.net", "AnycastIpListId": "aip_CCkW6gKrDiBD4n78123ABC", "Status": "InProgress", "Enabled": true, "IsDefault": false } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateConnectionGroup」を参照してください。

次の例は、create-distribution-tenant を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションテナントを作成するには

次の create-distribution-tenant の例では、WAF を無効にし、地域制限を追加し、別の証明書を使用するようにカスタマイズを指定する CloudFront ディストリビューションテナントを作成します。

aws cloudfront create-distribution-tenant \ --cli-input-json file://tenant.json

tenant.json の内容:

{ "DistributionId": "E1XNX8R2GOAABC", "Domains": [ { "Domain": "example.com" } ], "Parameters": [ { "Name": "testParam", "Value": "defaultValue" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "Enabled": false, "Tags": { "Items": [ { "Key": "tag", "Value": "tagValue" } ] }, "Name": "new-tenant-customizations", "Customizations": { "GeoRestrictions": { "Locations": ["DE"], "RestrictionType": "whitelist" }, "WebAcl": { "Action": "disable" }, "Certificate": { "Arn": "arn:aws:acm:us-east-1:123456789012:certificate/ec53f564-ea5a-4e4a-a0a2-e3c989449abc" } } }

出力:

{ "ETag": "E23ZP02F085ABC", "DistributionTenant": { "Id": "dt_2yN5tYwVbPKr7m2IB69M1yp1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "new-tenant-customizations", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2yN5tYwVbPKr7m2IB69M1yp1AB", "Domains": [ { "Domain": "example.com", "Status": "active" } ], "Tags": { "Items": [ { "Key": "tag", "Value": "tagValue" } ] }, "Customizations": { "WebAcl": { "Action": "disable" }, "Certificate": { "Arn": "arn:aws:acm:us-east-1:123456789012:certificate/ec53f564-ea5a-4e4a-a0a2-e3c989449abc" }, "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "DE" ] } }, "Parameters": [ { "Name": "testParam", "Value": "defaultValue" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "CreatedTime": "2025-06-11T17:20:06.432000+00:00", "LastModifiedTime": "2025-06-11T17:20:06.432000+00:00", "Enabled": false, "Status": "InProgress" } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ディストリビューションを作成する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateDistributionTenant」を参照してください。

次の例は、create-distribution-with-tags を使用する方法を説明しています。

AWS CLI

タグ付きの CloudFront ディストリビューションを作成するには

次の create-distribution-with-tags の例では、dist-config-with-tags.json という名前の JSON ファイルにディストリビューション設定とタグを指定して、2 つのタグを持つディストリビューションを作成しています。

aws cloudfront create-distribution-with-tags \ --distribution-config-with-tags file://dist-config-with-tags.json

dist-config-with-tags.json ファイルは現在のフォルダ内の JSON ドキュメントです。ファイルの先頭にある Tags オブジェクトに、次の 2 つのタグが含まれていることに注目してください。

Name = ExampleDistributionProject = ExampleProject

dist-config-with-tags.json の内容:

{ "Tags": { "Items": [ { "Key": "Name", "Value": "ExampleDistribution" }, { "Key": "Project", "Value": "ExampleProject" } ] }, "DistributionConfig": { "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } }

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/distribution/EDFDVBD6EXAMPLE", "ETag": "E2QWRUHEXAMPLE", "Distribution": { "Id": "EDFDVBD6EXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE", "Status": "InProgress", "LastModifiedTime": "2019-12-04T23:35:41.433Z", "InProgressInvalidationBatches": 0, "DomainName": "d111111abcdef8.cloudfront.net", "ActiveTrustedSigners": { "Enabled": false, "Quantity": 0 }, "DistributionConfig": { "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateDistributionWithTags」を参照してください。

次の例は、create-distribution を使用する方法を説明しています。

AWS CLI

例 1: CloudFront ディストリビューションを作成するには

次の例では、amzn-s3-demo-bucket という名前の S3 バケットのディストリビューションを作成し、コマンドライン引数を使用してデフォルトのルートオブジェクトとして index.html を指定しています。

aws cloudfront create-distribution \ --origin-domain-name amzn-s3-demo-bucket.s3.amazonaws.com \ --default-root-object index.html

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/distribution/EMLARXS9EXAMPLE", "ETag": "E9LHASXEXAMPLE", "Distribution": { "Id": "EMLARXS9EXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/EMLARXS9EXAMPLE", "Status": "InProgress", "LastModifiedTime": "2019-11-22T00:55:15.705Z", "InProgressInvalidationBatches": 0, "DomainName": "d111111abcdef8.cloudfront.net", "ActiveTrustedSigners": { "Enabled": false, "Quantity": 0 }, "DistributionConfig": { "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } } }

例 2: JSON ファイルを使用して CloudFront ディストリビューションを作成するには

次の例では、amzn-s3-demo-bucket という名前の S3 バケットのディストリビューションを作成し、JSON ファイルを使用してデフォルトのルートオブジェクトとして index.html を指定します。

aws cloudfront create-distribution \ --distribution-config file://dist-config.json

dist-config.json の内容:

{ "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true }

出力例については、例 1 を参照してください。

  • API の詳細については、AWS CLI コマンドリファレンスの「CreateDistribution」を参照してください。

次の例は、create-field-level-encryption-config を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定を作成するには

次の例では、fle-config.json という名前の JSON ファイルに設定パラメータを指定して、フィールドレベル暗号化の設定を作成しています。フィールドレベル暗号化の設定を作成する前に、フィールドレベル暗号化のプロファイルが必要です。プロファイルを作成するには、create-field-level-encryption-profile コマンドを参照してください。

CloudFront のフィールドレベル暗号化の詳細については、「Amazon CloudFront 開発者ガイド」の「フィールドレベル暗号化を使用した機密データの保護」を参照してください。

aws cloudfront create-field-level-encryption-config \ --field-level-encryption-config file://fle-config.json

fle-config.json ファイルは、以下を含む現在のフォルダ内にある JSON ドキュメントです。

{ "CallerReference": "cli-example", "Comment": "Example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0 } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } }

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/field-level-encryption/C3KM2WVD605UAY", "ETag": "E2P4Z4VU7TY5SG", "FieldLevelEncryption": { "Id": "C3KM2WVD605UAY", "LastModifiedTime": "2019-12-10T21:30:18.974Z", "FieldLevelEncryptionConfig": { "CallerReference": "cli-example", "Comment": "Example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0, "Items": [] } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } } } }

次の例は、create-field-level-encryption-profile を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイルを作成するには

次の例では、fle-profile-config.json という名前の JSON ファイルにパラメータを指定して、フィールドレベル暗号化のプロファイルを作成しています。フィールドレベル暗号化のプロファイルを作成する前に、CloudFront パブリックキーが必要です。CloudFront パブリックキーを作成するには、create-public-key コマンドを参照してください。

CloudFront のフィールドレベル暗号化の詳細については、「Amazon CloudFront 開発者ガイド」の「フィールドレベル暗号化を使用した機密データの保護」を参照してください。

aws cloudfront create-field-level-encryption-profile \ --field-level-encryption-profile-config file://fle-profile-config.json

fle-profile-config.json ファイルは、以下を含む現在のフォルダ内にある JSON ドキュメントです。

{ "Name": "ExampleFLEProfile", "CallerReference": "cli-example", "Comment": "FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField" ] } } ] } }

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/field-level-encryption-profile/PPK0UOSIF5WSV", "ETag": "E2QWRUHEXAMPLE", "FieldLevelEncryptionProfile": { "Id": "PPK0UOSIF5WSV", "LastModifiedTime": "2019-12-10T01:03:16.537Z", "FieldLevelEncryptionProfileConfig": { "Name": "ExampleFLEProfile", "CallerReference": "cli-example", "Comment": "FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField" ] } } ] } } } }

次の例は、create-invalidation-for-distribution-tenant を使用する方法を説明しています。

AWS CLI

ディストリビューションテナントの CloudFront の無効化を作成するには

次の create-invalidation-for-distribution-tenant の例では、CloudFront ディストリビューションテナント内ですべてのファイルの無効化を作成します。

aws cloudfront create-invalidation-for-distribution-tenant \ --id dt_2wjDZi3hD1ivOXf6rpZJO1AB \ --invalidation-batch '{"Paths": {"Quantity": 1, "Items": ["/*"]}, "CallerReference": "invalidation-$(date +%s)"}'

出力:

{ "Location": "https://cloudfront.amazonaws.com/2020-05-31/distribution-tenant/dt_2wjDZi3hD1ivOXf6rpZJO1AB/invalidation/I2JGL2F1ZAA426PGG0YLLKABC", "Invalidation": { "Id": "I2JGL2F1ZAA426PGG0YLLKABC", "Status": "InProgress", "CreateTime": "2025-05-07T16:59:25.947000+00:00", "InvalidationBatch": { "Paths": { "Quantity": 1, "Items": [ "/*" ] }, "CallerReference": "invalidation-$(date +%s)" } } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ファイルを無効化してコンテンツを削除する」を参照してください。

次の例は、create-invalidation を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションでキャッシュ削除を作成するには

次の create-invalidation 例では、指定した CloudFront ディストリビューションで指定したファイルのキャッシュ削除を作成します。

aws cloudfront create-invalidation \ --distribution-id EDFDVBD6EXAMPLE \ --paths "/example-path/example-file.jpg" "/example-path/example-file2.png"

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/distribution/EDFDVBD6EXAMPLE/invalidation/I1JLWSDAP8FU89", "Invalidation": { "Id": "I1JLWSDAP8FU89", "Status": "InProgress", "CreateTime": "2019-12-05T18:24:51.407Z", "InvalidationBatch": { "Paths": { "Quantity": 2, "Items": [ "/example-path/example-file2.png", "/example-path/example-file.jpg" ] }, "CallerReference": "cli-1575570291-670203" } } }

前の例では、AWS CLI が自動的にランダム CallerReference を生成しました。独自の CallerReference を指定したり、キャッシュ削除パラメータをコマンドライン引数として渡さないようにしたりするには、JSON ファイルを使用できます。次の例では、inv-batch.json という名前の JSON ファイルでキャッシュ削除パラメータを指定して、2 つのファイルのキャッシュ削除を作成します。

aws cloudfront create-invalidation \ --distribution-id EDFDVBD6EXAMPLE \ --invalidation-batch file://inv-batch.json

inv-batch.json の内容:

{ "Paths": { "Quantity": 2, "Items": [ "/example-path/example-file.jpg", "/example-path/example-file2.png" ] }, "CallerReference": "cli-example" }

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/distribution/EDFDVBD6EXAMPLE/invalidation/I2J0I21PCUYOIK", "Invalidation": { "Id": "I2J0I21PCUYOIK", "Status": "InProgress", "CreateTime": "2019-12-05T18:40:49.413Z", "InvalidationBatch": { "Paths": { "Quantity": 2, "Items": [ "/example-path/example-file.jpg", "/example-path/example-file2.png" ] }, "CallerReference": "cli-example" } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateInvalidation」を参照してください。

次の例は、create-public-key を使用する方法を説明しています。

AWS CLI

CloudFront パブリックキーを作成するには

次の例では、pub-key-config.json という名前の JSON ファイルでパラメータを指定して、CloudFront パブリックキーを作成します。このコマンドを使用するには、事前に PEM でエンコードされたパブリックキーが必要です。詳細については、「Amazon CloudFront 開発者ガイド」の「RSA キーペアを作成する」を参照してください。

aws cloudfront create-public-key \ --public-key-config file://pub-key-config.json

pub-key-config.json ファイルは、以下を含む現在のフォルダ内にある JSON ドキュメントです。パブリックキーは PEM 形式でエンコードされていることに注意してください。

{ "CallerReference": "cli-example", "Name": "ExampleKey", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n", "Comment": "example public key" }

出力:

{ "Location": "https://cloudfront.amazonaws.com/2019-03-26/public-key/KDFB19YGCR002", "ETag": "E2QWRUHEXAMPLE", "PublicKey": { "Id": "KDFB19YGCR002", "CreatedTime": "2019-12-05T18:51:43.781Z", "PublicKeyConfig": { "CallerReference": "cli-example", "Name": "ExampleKey", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n", "Comment": "example public key" } } }
  • API の詳細については、AWS CLI コマンドリファレンスの「CreatePublicKey」を参照してください。

次の例は、delete-cloud-front-origin-access-identity を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティを削除するには

次の例では、E74FTE3AEXAMPLE という ID のオリジンアクセスアイデンティティ (OAI) を削除しています。OAI を削除するには、OAI の ID と ETag が必要です。OAI ID は、create-cloud-front-origin-access-identity コマンドと list-cloud-front-origin-access-identities コマンドの出力で返されます。ETag を取得するには、get-cloud-front-origin-access-identity コマンドまたは get-cloud-front-origin-access-identity-config コマンドを使用します。--if-match オプションを使用して、OAI の ETag を指定します。

aws cloudfront delete-cloud-front-origin-access-identity \ --id E74FTE3AEXAMPLE \ --if-match E2QWRUHEXAMPLE

成功した場合は、コマンドの出力はありません。

次の例は、delete-connection-group を使用する方法を説明しています。

AWS CLI

接続グループを削除するには

次の delete-connection-group の例では、接続グループを削除します。接続グループは無効にする必要があり、どの CloudFront リソースにも関連付けることはできません。

aws cloudfront delete-connection-group \ --id cg_2wjLpjbHkLUdhWAjHllcOeABC \ --if-match ETVPDKIKX0DABC

成功した場合は、コマンドの出力はありません。

接続グループの管理の詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループを作成する (オプション)」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteConnectionGroup」を参照してください。

次の例は、delete-distribution-tenant を使用する方法を説明しています。

AWS CLI

ディストリビューションテナントを削除するには

次の delete-distribution-tenant の例では、ETag ETVPDKIKX0DABC を使用してディストリビューションテナントを削除します。ディストリビューションテナントは無効にする必要があり、どの CloudFront リソースにも関連付けることはできません。

aws cloudfront delete-distribution-tenant \ --id dt_2wjMUbg3NHZEQ7OfoalP5zi1AB \ --if-match ETVPDKIKX0DABC

成功した場合は、コマンドの出力はありません。

詳細については、「Amazon CloudFront デベロッパーガイド」の「ディストリビューションを削除する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteDistributionTenant」を参照してください。

次の例は、delete-distribution を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションを削除するには

次の例では、ID EDFDVBD6EXAMPLE の付いた CloudFront ディストリビューションを削除します。ディストリビューションを削除する前に、ディストリビューションを無効にする必要があります。ディストリビューションを無効にするには、update-distribution コマンドを使用します。詳細については、update-distribution の例を参照してください。

ディストリビューションを無効にすると、ディストリビューションを削除できます。ディストリビューションを削除するには、--if-match オプションを使用してディストリビューション のETag を指定する必要があります。ETag を取得するには、get-distribution コマンドまたは get-distribution-config コマンドを使用します。

aws cloudfront delete-distribution \ --id EDFDVBD6EXAMPLE \ --if-match E2QWRUHEXAMPLE

成功した場合は、コマンドの出力はありません。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteDistribution」を参照してください。

次の例は、delete-field-level-encryption-config を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定を削除するには

次の例では、C3KM2WVD605UAY という ID を持つ CloudFront のフィールドレベル暗号化の設定を削除しています。フィールドレベル暗号化の設定を削除するには、その ID と ETag が必要です。ID は create-field-level-encryption-config コマンドと list-field-level-encryption-configs コマンドの出力で返されます。ETag を取得するには、get-field-level-encryption コマンドまたは get-field-level-encryption-config コマンドを使用します。--if-match オプションを使用して、設定の ETag を指定します。

aws cloudfront delete-field-level-encryption-config \ --id C3KM2WVD605UAY \ --if-match E26M4BIAV81ZF6

成功した場合は、コマンドの出力はありません。

次の例は、delete-field-level-encryption-profile を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイルを削除するには

次の例では、PPK0UOSIF5WSV という ID を持つ CloudFront のフィールドレベル暗号化のプロファイルを削除しています。フィールドレベル暗号化のプロファイルを削除するには、その ID と ETag が必要です。ID は create-field-level-encryption-profile コマンドと list-field-level-encryption-profiles コマンドの出力で返されます。ETag を取得するには、get-field-level-encryption-profile コマンドまたは get-field-level-encryption-profile-config コマンドを使用します。--if-match オプションを使用して、プロファイルの ETag を指定します。

aws cloudfront delete-field-level-encryption-profile \ --id PPK0UOSIF5WSV \ --if-match EJETYFJ9CL66D

成功した場合は、コマンドの出力はありません。

次の例は、delete-public-key を使用する方法を説明しています。

AWS CLI

CloudFront パブリックキーを削除するには

次の例では、KDFB19YGCR002 という ID を持つ CloudFront パブリックキーを削除しています。パブリックキーを削除するには、その ID と ETag が必要です。ID は create-public-key コマンドと list-public-keys コマンドの出力で返されます。ETag を取得するには、get-public-key コマンドまたは get-public-key-config コマンドを使用します。--if-match オプションを使用して、パブリックキーの ETag を指定します。

aws cloudfront delete-public-key \ --id KDFB19YGCR002 \ --if-match E2QWRUHEXAMPLE

成功した場合は、コマンドの出力はありません。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeletePublicKey」を参照してください。

次の例は、disassociate-distribution-tenant-web-acl を使用する方法を説明しています。

AWS CLI

ウェブ ACL とディストリビューションテナントの関連付けを解除するには

次の disassociate-distribution-tenant-web-acl の例では、ETag E1PA6795UKMABC を使用してディストリビューションテナントからウェブ ACL の関連付けを解除します。

aws cloudfront disassociate-distribution-tenant-web-acl \ --id dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB \ --if-match E1PA6795UKMABC

出力:

{ "ETag": "E13V1IB3VIYABC", "Id": "dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「AWS WAF セキュリティ保護を無効にする」を参照してください。

次の例は、disassociate-distribution-web-acl を使用する方法を説明しています。

AWS CLI

ウェブ ACL と CloudFront ディストリビューションの関連付けを解除するには

次の disassociate-distribution-web-acl の例では、ETag E13V1IB3VIYABC を使用してウェブ ACL と CloudFront ディストリビューション間の関連付けを解除します。

aws cloudfront disassociate-distribution-web-acl \ --id E1XNX8R2GOAABC \ --if-match EEZQ9Z24VM1ABC

出力:

{ "ETag": "E2YWS1C2J3OABC", "Id": "E1XNX8R2GOAABC" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「AWS WAF セキュリティ保護を無効にする」を参照してください。

次の例は、get-cloud-front-origin-access-identity-config を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティ設定を取得するには

次の例では、ID が E74FTE3AEXAMPLE である CloudFront オリジンアクセスアイデンティティ (OAI) に関するメタデータ (ETag を含む) を取得します。OAI ID は、create-cloud-front-origin-access-identity コマンドと list-cloud-front-origin-access-identities コマンドの出力で返されます。

aws cloudfront get-cloud-front-origin-access-identity-config --id E74FTE3AEXAMPLE

出力:

{ "ETag": "E2QWRUHEXAMPLE", "CloudFrontOriginAccessIdentityConfig": { "CallerReference": "cli-example", "Comment": "Example OAI" } }

次の例は、get-cloud-front-origin-access-identity を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティを取得するには

次の例では、ID が E74FTE3AEXAMPLE である CloudFront オリジンアクセスアイデンティティ (OAI) を、ETag および関連する S3 正規 ID を含めて取得します。OAI ID は、create-cloud-front-origin-access-identity コマンドと list-cloud-front-origin-access-identities コマンドの出力で返されます。

aws cloudfront get-cloud-front-origin-access-identity --id E74FTE3AEXAMPLE

出力:

{ "ETag": "E2QWRUHEXAMPLE", "CloudFrontOriginAccessIdentity": { "Id": "E74FTE3AEXAMPLE", "S3CanonicalUserId": "cd13868f797c227fbea2830611a26fe0a21ba1b826ab4bed9b7771c9aEXAMPLE", "CloudFrontOriginAccessIdentityConfig": { "CallerReference": "cli-example", "Comment": "Example OAI" } } }

次の例は、get-connection-group-by-routing-endpoint を使用する方法を説明しています。

AWS CLI

ルーティングエンドポイントで接続グループを取得するには

次の get-connection-group-by-routing-endpoint の例では、ルーティングエンドポイントを使用して接続グループに関する情報を取得します。

aws cloudfront get-connection-group-by-routing-endpoint \ --routing-endpoint dvdg9gprgabc.cloudfront.net

出力:

{ "ETag": "E23ZP02F085ABC", "ConnectionGroup": { "Id": "cg_2wjDWTBKTlRB87cAaUQFaakABC", "Name": "connection-group-2", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2wjDWTBKTlRB87cAaUQFaakABC", "CreatedTime": "2025-05-06T15:42:00.790000+00:00", "LastModifiedTime": "2025-05-06T15:42:00.790000+00:00", "Ipv6Enabled": true, "RoutingEndpoint": "dvdg9gprgabc.cloudfront.net", "Status": "Deployed", "Enabled": true, "IsDefault": false } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

次の例は、get-connection-group を使用する方法を説明しています。

AWS CLI

CloudFront 接続グループを取得するには

次の get-connection-group の例では、CloudFront 接続グループに関する情報を取得します。

aws cloudfront get-connection-group \ --identifier cg_2wjDWTBKTlRB87cAaUQFaakABC

出力:

{ "ETag": "E23ZP02F085ABC", "ConnectionGroup": { "Id": "cg_2wjDWTBKTlRB87cAaUQFaakABC", "Name": "connection-group-2", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2wjDWTBKTlRB87cAaUQFaakABC", "CreatedTime": "2025-05-06T15:42:00.790000+00:00", "LastModifiedTime": "2025-05-06T15:42:00.790000+00:00", "Ipv6Enabled": true, "RoutingEndpoint": "dvdg9gprgabc.cloudfront.net", "Status": "Deployed", "Enabled": true, "IsDefault": false } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetConnectionGroup」を参照してください。

次の例は、get-distribution-config を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューション設定を取得するには

次の例では、ID EDFDVBD6EXAMPLE の CloudFront ディストリビューションに関するメタデータ (ETag を含む) を取得します。ディストリビューション ID は create-distribution コマンドと list-distributions コマンドで返されます。

aws cloudfront get-distribution-config \ --id EDFDVBD6EXAMPLE

出力:

{ "ETag": "E2QWRUHEXAMPLE", "DistributionConfig": { "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } }
  • API の詳細については、AWS CLI コマンドリファレンスの「GetDistributionConfig」を参照してください。

次の例は、get-distribution-tenant-by-domain を使用する方法を説明しています。

AWS CLI

ドメイン別にディストリビューションテナント情報を取得するには

次の get-distribution-tenant-by-domain の例では、指定されたドメインを使用してディストリビューションテナントに関する情報を取得します。

aws cloudfront get-distribution-tenant-by-domain \ --domain example.com

出力:

{ "ETag": "E23ZP02F085ABC", "DistributionTenant": { "Id": "dt_2xVInRKCfUzQHgxosDs9hiLk1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "example-tenant-4", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2xVInRKCfUzQHgxosDs9hiLk1AB", "Domains": [ { "Domain": "example.com", "Status": "active" } ], "Parameters": [ { "Name": "testParam", "Value": "defaultValue" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "CreatedTime": "2025-05-23T16:16:20.871000+00:00", "LastModifiedTime": "2025-05-23T16:16:20.871000+00:00", "Enabled": false, "Status": "Deployed" } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「Understand how multi-tenant distributions work」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetDistributionTenantByDomain」を参照してください。

次の例は、get-distribution-tenant を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションテナントに関する詳細を取得するには

次の get-distribution-tenant の例では、CloudFront ディストリビューションテナントに関する情報を取得します。

aws cloudfront get-distribution-tenant \ --id dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB

出力:

{ "ETag": "E23ZP02F085ABC", "DistributionTenant": { "Id": "dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "example-tenant-2", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB", "Domains": [ { "Domain": "example.com", "Status": "inactive" } ], "ConnectionGroupId": "cg_2wjDWTBKTlRB87cAaUQFaakABC", "CreatedTime": "2025-05-06T15:42:28.542000+00:00", "LastModifiedTime": "2025-05-06T15:42:37.724000+00:00", "Enabled": true, "Status": "InProgress" } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「Understand how multi-tenant distributions work」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetDistributionTenant」を参照してください。

次の例は、get-distribution を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションを取得するには

次の get-distribution の例では、ID が EDFDVBD6EXAMPLE である CloudFront ディストリビューション (ETag を含む) を取得します。ディストリビューション ID は create-distribution コマンドと list-distributions コマンドで返されます。

aws cloudfront get-distribution \ --id EDFDVBD6EXAMPLE

出力:

{ "ETag": "E2QWRUHEXAMPLE", "Distribution": { "Id": "EDFDVBD6EXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE", "Status": "Deployed", "LastModifiedTime": "2019-12-04T23:35:41.433Z", "InProgressInvalidationBatches": 0, "DomainName": "d111111abcdef8.cloudfront.net", "ActiveTrustedSigners": { "Enabled": false, "Quantity": 0 }, "DistributionConfig": { "CallerReference": "cli-example", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-cli-example", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetDistribution」を参照してください。

次の例は、get-field-level-encryption-config を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定に関するメタデータを取得するには

次の例では、C3KM2WVD605UAY という ID を持つ CloudFront のフィールドレベル暗号化の設定に関するメタデータ (ETag を含む) を取得しています。

aws cloudfront get-field-level-encryption-config --id C3KM2WVD605UAY

出力:

{ "ETag": "E2P4Z4VU7TY5SG", "FieldLevelEncryptionConfig": { "CallerReference": "cli-example", "Comment": "Example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0, "Items": [] } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetFieldLevelEncryptionConfig」を参照してください。

次の例は、get-field-level-encryption-profile-config を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイル設定を取得するには

次の例では、PPK0UOSIF5WSV という ID を持つ CloudFront のフィールドレベル暗号化のプロファイルに関するメタデータ (ETag を含む) を取得しています。

aws cloudfront get-field-level-encryption-profile-config --id PPK0UOSIF5WSV

出力:

{ "ETag": "E1QQG65FS2L2GC", "FieldLevelEncryptionProfileConfig": { "Name": "ExampleFLEProfile", "CallerReference": "cli-example", "Comment": "FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField" ] } } ] } } }

次の例は、get-field-level-encryption-profile を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイルを取得するには

次の例では、PPK0UOSIF5WSV という ID を持つ CloudFront のフィールドレベル暗号化のプロファイル (ETag を含む) を取得しています。

aws cloudfront get-field-level-encryption-profile --id PPK0UOSIF5WSV

出力:

{ "ETag": "E1QQG65FS2L2GC", "FieldLevelEncryptionProfile": { "Id": "PPK0UOSIF5WSV", "LastModifiedTime": "2019-12-10T01:03:16.537Z", "FieldLevelEncryptionProfileConfig": { "Name": "ExampleFLEProfile", "CallerReference": "cli-example", "Comment": "FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField" ] } } ] } } } }

次の例は、get-field-level-encryption を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定を取得するには

次の例では、C3KM2WVD605UAY という ID を持つ CloudFront のフィールドレベル暗号化の設定 (ETag を含む) を取得しています。

aws cloudfront get-field-level-encryption --id C3KM2WVD605UAY

出力:

{ "ETag": "E2P4Z4VU7TY5SG", "FieldLevelEncryption": { "Id": "C3KM2WVD605UAY", "LastModifiedTime": "2019-12-10T21:30:18.974Z", "FieldLevelEncryptionConfig": { "CallerReference": "cli-example", "Comment": "Example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0, "Items": [] } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetFieldLevelEncryption」を参照してください。

次の例は、get-invalidation-for-distribution-tenant を使用する方法を説明しています。

AWS CLI

ディストリビューションテナントの無効化を取得するには

次の get-invalidation-for-distribution-tenant の例では、ディストリビューションテナントの無効化に関する情報を取得します。

aws cloudfront get-invalidation-for-distribution-tenant \ --distribution-tenant-id dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB \ --id I4CU23QAPKMUDUU06F9OFGFABC

出力:

{ "Invalidation": { "Id": "I4CU23QAPKMUDUU06F9OFGFABC", "Status": "Completed", "CreateTime": "2025-05-06T15:46:12.824000+00:00", "InvalidationBatch": { "Paths": { "Quantity": 2, "Items": [ "/example/invalidation", "/more/invalidations" ] }, "CallerReference": "007ee5a6-d0a0-42be-bb61-e7b915969b48" } } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ファイルを無効化してコンテンツを削除する」を参照してください。

次の例は、get-invalidation を使用する方法を説明しています。

AWS CLI

CloudFront の無効化を取得するには

次の例では、EDFDVBD6EXAMPLE という ID を持つ CloudFront ディストリビューションについて、I2J0I21PCUYOIK という ID の無効化を取得しています。

aws cloudfront get-invalidation --id I2J0I21PCUYOIK --distribution-id EDFDVBD6EXAMPLE

出力:

{ "Invalidation": { "Status": "Completed", "InvalidationBatch": { "Paths": { "Items": [ "/example-path/example-file.jpg", "/example-path/example-file-2.jpg" ], "Quantity": 2 }, "CallerReference": "cli-example" }, "Id": "I2J0I21PCUYOIK", "CreateTime": "2019-12-05T18:40:49.413Z" } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetInvalidation」を参照してください。

次の例は、get-managed-certificate-details を使用する方法を説明しています。

AWS CLI

マネージド証明書の詳細を取得するには

次の get-managed-certificate-details の例では、CloudFront マネージド ACM 証明書の詳細を取得します。

aws cloudfront get-managed-certificate-details \ --identifier dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB

出力:

{ "ManagedCertificateDetails": { "CertificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/655dc1fe-6d37-451d-a013-c2db3a034abc", "CertificateStatus": "pending-validation", "ValidationTokenHost": "self-hosted", "ValidationTokenDetails": [ { "Domain": "example.com", "RedirectTo": "validation.us-east-1.acm-validations.aws/123456789012/.well-known/pki-validation/b315c9ae21284e7918bb9f3f422ab1c7.txt", "RedirectFrom": "example.com/.well-known/pki-validation/b315c9ae21284e7918bb9f3f422ac3c7.txt" } ] } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「CloudFront ディストリビューションテナントの証明書をリクエストする」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetManagedCertificateDetails」を参照してください。

次の例は、get-public-key-config を使用する方法を説明しています。

AWS CLI

CloudFront パブリックキーの設定を取得するには

次の例では、KDFB19YGCR002 という ID を持つ CloudFront パブリックキーに関するメタデータ (ETag を含む) を取得します。パブリックキー ID は create-public-key コマンドと list-public-keys コマンドで返されます。

aws cloudfront get-public-key-config --id KDFB19YGCR002

出力:

{ "ETag": "E2QWRUHEXAMPLE", "PublicKeyConfig": { "CallerReference": "cli-example", "Name": "ExampleKey", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n", "Comment": "example public key" } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetPublicKeyConfig」を参照してください。

次の例は、get-public-key を使用する方法を説明しています。

AWS CLI

CloudFront パブリックキーを取得するには

次の例では、KDFB19YGCR002 という ID を持つ CloudFront パブリックキー (ETag を含む) を取得します。パブリックキー ID は create-public-key コマンドと list-public-keys コマンドで返されます。

aws cloudfront get-public-key --id KDFB19YGCR002

出力:

{ "ETag": "E2QWRUHEXAMPLE", "PublicKey": { "Id": "KDFB19YGCR002", "CreatedTime": "2019-12-05T18:51:43.781Z", "PublicKeyConfig": { "CallerReference": "cli-example", "Name": "ExampleKey", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n", "Comment": "example public key" } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetPublicKey」を参照してください。

次の例は、list-cloud-front-origin-access-identities を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティを一覧表示するには

次の例では、AWS アカウント内の CloudFront オリジンアクセスアイデンティティ (OAI) の一覧を取得します。

aws cloudfront list-cloud-front-origin-access-identities

出力:

{ "CloudFrontOriginAccessIdentityList": { "Items": [ { "Id": "E74FTE3AEXAMPLE", "S3CanonicalUserId": "cd13868f797c227fbea2830611a26fe0a21ba1b826ab4bed9b7771c9aEXAMPLE", "Comment": "Example OAI" }, { "Id": "EH1HDMBEXAMPLE", "S3CanonicalUserId": "1489f6f2e6faacaae7ff64c4c3e6956c24f78788abfc1718c3527c263bf7a17EXAMPLE", "Comment": "Test OAI" }, { "Id": "E2X2C9TEXAMPLE", "S3CanonicalUserId": "cbfeebb915a64749f9be546a45b3fcfd3a31c779673c13c4dd460911ae402c2EXAMPLE", "Comment": "Example OAI #2" } ] } }

次の例は、list-connection-groups を使用する方法を説明しています。

AWS CLI

接続グループを一覧表示するには

次の list-connection-groups の例では、AWS アカウントで使用可能な接続グループを一覧表示します。

aws cloudfront list-connection-groups

出力:

{ "ConnectionGroups": [ { "Id": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "Name": "CreatedByCloudFront-cg_2whCJoXMYCjHcxaLGrkllvyABC", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2whCJoXMYCjHcxaLGrkllvyABC", "RoutingEndpoint": "d3sx0pso7m5abc.cloudfront.net", "CreatedTime": "2025-05-05T22:32:29.630000+00:00", "LastModifiedTime": "2025-05-05T22:32:29.630000+00:00", "ETag": "E23ZP02F085ABC", "Enabled": true, "Status": "Deployed", "IsDefault": true }, { "Id": "cg_2wjDWTBKTlRB87cAaUQFaakABC", "Name": "connection-group-2", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2wjDWTBKTlRB87cAaUQFaakABC", "RoutingEndpoint": "dvdg9gprgabc.cloudfront.net", "CreatedTime": "2025-05-06T15:42:00.790000+00:00", "LastModifiedTime": "2025-05-06T15:42:00.790000+00:00", "ETag": "E23ZP02F085ABC", "Enabled": true, "Status": "Deployed", "IsDefault": false } ] }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListConnectionGroups」を参照してください。

次の例は、list-distribution-tenants-by-customization を使用する方法を説明しています。

AWS CLI

カスタマイズ別にディストリビューションテナントを一覧表示するには

次の list-distribution-tenants-by-customization の例では、指定されたウェブ ACL を使用するディストリビューションテナントを一覧表示します。

aws cloudfront list-distribution-tenants-by-customization \ --web-acl-arn arn:aws:wafv2:us-east-1:123456789012:global/webacl/CreatedByCloudFront-0273cd2f/a3c19bce-42b5-48a1-a8d4-b2bb2f28eabc

出力:

{ "DistributionTenantList": [ { "Id": "dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "example-tenant-2", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB", "Domains": [ { "Domain": "example.com", "Status": "inactive" } ], "ConnectionGroupId": "cg_2wjDWTBKTlRB87cAaUQFaakABC", "Customizations": { "WebAcl": { "Action": "override", "Arn": "arn:aws:wafv2:us-east-1:123456789012:global/webacl/CreatedByCloudFront-0273cd2f/a3c19bce-42b5-48a1-a8d4-b2bb2f28eabc" }, "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "AL" ] } }, "CreatedTime": "2025-05-06T15:42:28.542000+00:00", "LastModifiedTime": "2025-05-06T16:14:08.710000+00:00", "ETag": "E1F83G8C2ARABC", "Enabled": true, "Status": "Deployed" } ] }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ディストリビューションテナントのカスタマイズ」を参照してください。

次の例は、list-distribution-tenants を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションテナントを一覧表示するには

次の list-distribution-tenants の例では、関連付けられた接続グループごとに AWS アカウント内の 3 つの CloudFront ディストリビューションテナントを一覧表示します。

aws cloudfront list-distribution-tenants \ --association-filter ConnectionGroupId=cg_2whCJoXMYCjHcxaLGrkllvyABC \ --max-items 3

出力:

{ "DistributionTenantList": [ { "Id": "dt_2yMvQgam3QkJo2z54FDl91dk1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "new-tenant-customizations", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2yMvQgam3QkJo2z54FDl91dk1AB", "Domains": [ { "Domain": "example.com", "Status": "active" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "Customizations": { "WebAcl": { "Action": "disable" }, "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "DE" ] } }, "CreatedTime": "2025-06-11T15:54:02.142000+00:00", "LastModifiedTime": "2025-06-11T15:54:02.142000+00:00", "ETag": "E23ZP02F085ABC", "Enabled": false, "Status": "Deployed" }, { "Id": "dt_2yMuV7NJuBcAB0cwwxMCBZQ1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "new-tenant", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2yMuV7NJuBcAB0cwwxMCBZQ1AB", "Domains": [ { "Domain": "1.example.com", "Status": "active" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "Customizations": { "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "DE" ] } }, "CreatedTime": "2025-06-11T15:46:23.466000+00:00", "LastModifiedTime": "2025-06-11T15:46:23.466000+00:00", "ETag": "E23ZP02F085ABC", "Enabled": false, "Status": "Deployed" }, { "Id": "dt_2xVInRKCfUzQHgxosDs9hiLk1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "new-tenant-2", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2xVInRKCfUzQHgxosDs9hiLk1AB", "Domains": [ { "Domain": "2.example.com", "Status": "active" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "CreatedTime": "2025-05-23T16:16:20.871000+00:00", "LastModifiedTime": "2025-05-23T16:16:20.871000+00:00", "ETag": "E23ZP02F085ABC", "Enabled": false, "Status": "Deployed" } ], "NextToken": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAzfQ==" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「Understand how multi-tenant distributions work」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListDistributionTenants」を参照してください。

次の例は、list-distributions-by-connection-mode を使用する方法を説明しています。

AWS CLI

接続モードごとに CloudFront ディストリビューションを一覧表示するには

次の list-distributions-by-connection-mode の例では、指定された接続モードの CloudFront ディストリビューションを一覧表示します。

aws cloudfront list-distributions-by-connection-mode \ --connection-mode tenant-only

出力:

{ "DistributionList": { "Items": [ { "Id": "E1XNX8R2GOAABC", "ARN": "arn:aws:cloudfront::123456789012:distribution/E1XNX8R2GOAABC", "ETag": "EPT4JPJQDY1ABC", "Status": "Deployed", "LastModifiedTime": "2025-05-23T16:16:15.691000+00:00", "DomainName": "-", "Aliases": { "Quantity": 0 }, "Origins": { "Quantity": 1, "Items": [ { "Id": "example-cfn-simple-distribution123", "DomainName": "example.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" }, "ConnectionAttempts": 3, "ConnectionTimeout": 10, "OriginShield": { "Enabled": false }, "OriginAccessControlId": "E2CJRMB5LKEABC" } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "example-cfn-simple-distribution123", "TrustedKeyGroups": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "Compress": true, "LambdaFunctionAssociations": { "Quantity": 0 }, "FunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "", "CachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e5abc", "GrpcConfig": { "Enabled": false } }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": false, "ACMCertificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/ec53f564-ea5a-4e4a-a0a2-e3c989449abc", "SSLSupportMethod": "sni-only", "MinimumProtocolVersion": "TLSv1.2_2021", "Certificate": "arn:aws:acm:us-east-1:123456789012:certificate/ec53f564-ea5a-4e4a-a0a2-e3c989449abc", "CertificateSource": "acm" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "arn:aws:wafv2:us-east-1:123456789012:global/webacl/web-global-example/626900da-5f64-418b-ba9b-743f3746cabc", "HttpVersion": "http2", "IsIPV6Enabled": false, "Staging": false, "ConnectionMode": "tenant-only" } ] } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

次の例は、list-distributions を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションを一覧表示するには

次の例では、AWS アカウントの CloudFront ディストリビューションのリストを取得します。

aws cloudfront list-distributions

出力:

{ "DistributionList": { "Items": [ { "Id": "E23YS8OEXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/E23YS8OEXAMPLE", "Status": "Deployed", "LastModifiedTime": "2024-08-05T18:23:40.375000+00:00", "DomainName": "abcdefgh12ijk.cloudfront.net", "Aliases": { "Quantity": 0 }, "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket.s3.us-east-1.amazonaws.com", "DomainName": "amzn-s3-demo-bucket.s3.us-east-1.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" }, "ConnectionAttempts": 3, "ConnectionTimeout": 10, "OriginShield": { "Enabled": false }, "OriginAccessControlId": "EIAP8PEXAMPLE" } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket.s3.us-east-1.amazonaws.com", "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "TrustedKeyGroups": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "Compress": true, "LambdaFunctionAssociations": { "Quantity": 0 }, "FunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "", "CachePolicyId": "658327ea-f89d-4fab-a63d-7e886EXAMPLE" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "SSLSupportMethod": "vip", "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "HTTP2", "IsIPV6Enabled": true, "Staging": false } ] } }
  • API の詳細については、AWS CLI コマンドリファレンスの「ListDistributions」を参照してください。

次の例は、list-domain-conflicts を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションのドメイン競合を一覧表示するには

次の list-domain-conflicts の例では、CloudFront ディストリビューションのドメイン競合を一覧表示します。

aws cloudfront list-domain-conflicts \ --domain example.com \ --domain-control-validation-resource "DistributionTenantId=dt_2x9GhoK0TZRsohWzv1b9It8J1AB"

出力:

{ "DomainConflicts": [ { "Domain": "example.com", "ResourceType": "distribution-tenant", "ResourceId": "***************ohWzv1b9It8J1AB", "AccountId": "123456789012" } ] }

詳細については、「Amazon CloudFront デベロッパーガイド」の「代替ドメイン名を別のディストリビューションに移動する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListDomainConflicts」を参照してください。

次の例は、list-field-level-encryption-configs を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定を一覧表示するには

次の例では、AWS アカウントの CloudFront のフィールドレベル暗号化の設定のリストを取得しています。

aws cloudfront list-field-level-encryption-configs

出力:

{ "FieldLevelEncryptionList": { "MaxItems": 100, "Quantity": 1, "Items": [ { "Id": "C3KM2WVD605UAY", "LastModifiedTime": "2019-12-10T21:30:18.974Z", "Comment": "Example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0, "Items": [] } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } } ] } }

次の例は、list-field-level-encryption-profiles を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイルを一覧表示するには

次の例では、AWS アカウントの CloudFront のフィールドレベル暗号化のプロファイルのリストを取得しています。

aws cloudfront list-field-level-encryption-profiles

出力:

{ "FieldLevelEncryptionProfileList": { "MaxItems": 100, "Quantity": 2, "Items": [ { "Id": "P280MFCLSYOCVU", "LastModifiedTime": "2019-12-05T01:05:39.896Z", "Name": "ExampleFLEProfile", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField" ] } } ] }, "Comment": "FLE profile for AWS CLI example" }, { "Id": "PPK0UOSIF5WSV", "LastModifiedTime": "2019-12-10T01:03:16.537Z", "Name": "ExampleFLEProfile2", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2ABC10EXAMPLE", "ProviderId": "ExampleFLEProvider2", "FieldPatterns": { "Quantity": 1, "Items": [ "ExampleSensitiveField2" ] } } ] }, "Comment": "FLE profile #2 for AWS CLI example" } ] } }

次の例は、list-invalidations-for-distribution-tenant を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションテナントの無効化を一覧表示するには

次の list-invalidations-for-distribution-tenant の例では、CloudFront ディストリビューションテナントの無効化を一覧表示します。

aws cloudfront list-invalidations-for-distribution-tenant \ --id dt_2wjDZi3hD1ivOXf6rpZJOSNE1AB

出力:

{ "InvalidationList": { "Items": [ { "Id": "I4CU23QAPKMUDUU06F9OFGFABC", "CreateTime": "2025-05-06T15:46:12.824000+00:00", "Status": "Completed" } ] } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ファイルを無効化してコンテンツを削除する」を参照してください。

次の例は、list-invalidations を使用する方法を説明しています。

AWS CLI

CloudFront の無効化を一覧表示するには

次の例では、EDFDVBD6EXAMPLE という ID を持つ CloudFront ディストリビューションの無効化のリストを取得しています。

aws cloudfront list-invalidations --distribution-id EDFDVBD6EXAMPLE

出力:

{ "InvalidationList": { "Marker": "", "Items": [ { "Status": "Completed", "Id": "YNY2LI2BVJ4NJU", "CreateTime": "2019-08-31T21:15:52.042Z" } ], "IsTruncated": false, "MaxItems": 100, "Quantity": 1 } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListInvalidations」を参照してください。

次の例は、list-public-keys を使用する方法を説明しています。

AWS CLI

CloudFront パブリックキーを一覧表示するには

次の例では、AWS アカウントの CloudFront パブリックキーの一覧を取得しています。

aws cloudfront list-public-keys

出力:

{ "PublicKeyList": { "MaxItems": 100, "Quantity": 2, "Items": [ { "Id": "K2K8NC4HVFE3M0", "Name": "ExampleKey", "CreatedTime": "2019-12-05T01:04:28.818Z", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n", "Comment": "example public key" }, { "Id": "K1S0LWQ2L5HTBU", "Name": "ExampleKey2", "CreatedTime": "2019-12-09T23:28:11.110Z", "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCAg88A8+f4dujn9Izt\n26LxtgAkn2opGgo/NKpMiaisyw5qlg3f1gol7FV6pYNl78iJg3EO8JBbwtlH+cR9\nLGSf60NDeVhm76Oc39Np/vWgOdsGQcRbi9WmKZeSODqjQGzVZWqPmito3FzWVk6b\nfVY5N36U/RdbVAJm95Km+qaMYlbIdF40t72bi3IkKYV5hlB2XoDjlQ9F6ajQKyTB\nMHa3SN8q+3ZjQ4sJJ7D1V6r4wR8jDcFVD5NckWJmmgIVnkOQM37NYeoDnkaOuTpu\nha/+3b8tOb2z3LBVHPkp85zJRAOXacSwf5rZtPYKBNFsixTa2n55k2r218mOkMC4\nUwIDAQAB\n-----END PUBLIC KEY-----", "Comment": "example public key #2" } ] } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListPublicKeys」を参照してください。

次の例は、list-tags-for-resource を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションのタグを一覧表示するには

次の例は、CloudFront ディストリビューションのタグのリストを取得しています。

aws cloudfront list-tags-for-resource \ --resource arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE

出力:

{ "Tags": { "Items": [ { "Key": "DateCreated", "Value": "2019-12-04" }, { "Key": "Name", "Value": "Example name" }, { "Key": "Project", "Value": "Example project" } ] } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListTagsForResource」を参照してください。

次の例は、sign を使用する方法を説明しています。

AWS CLI

CloudFront URL に署名するには

次の例では、CloudFront URL に署名しています。URL に署名するには、キーペア ID (AWS マネジメントコンソールではアクセスキー ID と呼ばれます) と、信頼された署名者の CloudFront キーペアのプライベートキーが必要です。署名付き URL の詳細については、「Amazon CloudFront 開発者ガイド」の「署名付き URL と署名付き Cookie を使用してプライベートコンテンツを供給する」を参照してください。

aws cloudfront sign \ --url https://d111111abcdef8.cloudfront.net/private-content/private-file.html \ --key-pair-id APKAEIBAERJR2EXAMPLE \ --private-key file://cf-signer-priv-key.pem \ --date-less-than 2020-01-01

出力:

https://d111111abcdef8.cloudfront.net/private-content/private-file.html?Expires=1577836800&Signature=nEXK7Kby47XKeZQKVc6pwkif6oZc-JWSpDkH0UH7EBGGqvgurkecCbgL5VfUAXyLQuJxFwRQWscz-owcq9KpmewCXrXQbPaJZNi9XSNwf4YKurPDQYaRQawKoeenH0GFteRf9ELK-Bs3nljTLjtbgzIUt7QJNKXcWr8AuUYikzGdJ4-qzx6WnxXfH~fxg4-GGl6l2kgCpXUB6Jx6K~Y3kpVOdzUPOIqFLHAnJojbhxqrVejomZZ2XrquDvNUCCIbePGnR3d24UPaLXG4FKOqNEaWDIBXu7jUUPwOyQCvpt-GNvjRJxqWf93uMobeMOiVYahb-e0KItiQewGcm0eLZQ__&Key-Pair-Id=APKAEIBAERJR2EXAMPLE
  • API の詳細については、「AWS CLI コマンドリファレンス」の「Sign」を参照してください。

次の例は、tag-resource を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションにタグを追加するには

次の tag-resource の例では、指定された CloudFront ディストリビューションに 2 つのタグを追加しています。

aws cloudfront tag-resource \ --resource arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE \ --tags 'Items=[{Key=Name,Value="Example name"},{Key=Project,Value="Example project"}]'

次の例に示すように、コマンドライン引数を使用する代わりに、JSON ファイルでタグを指定できます。

aws cloudfront tag-resource \ --resource arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE \ --tags file://tags.json

tags.json の内容:

{ "Items": [ { "Key": "Name", "Value": "Example name" }, { "Key": "Project", "Value": "Example project" } ] }

このコマンドでは何も出力されません。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「TagResource」を参照してください。

次の例は、untag-resource を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションからタグを削除するには

次の例では、コマンドライン引数を使用して CloudFront ディストリビューションから 2 つのタグを削除しています。

aws cloudfront untag-resource \ --resource arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE \ --tag-keys Items=Name,Project

次の例に示すように、コマンドライン引数を使用する代わりに、JSON ファイルでタグキーを指定できます。

aws cloudfront untag-resource \ --resource arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE \ --tag-keys file://tag-keys.json

tag-keys.json ファイルは、以下を含む現在のフォルダ内にある JSON ドキュメントです。

{ "Items": [ "Name", "Project" ] }

成功した場合は、コマンドの出力はありません。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「UntagResource」を参照してください。

次の例は、update-cloud-front-origin-access-identity を使用する方法を説明しています。

AWS CLI

CloudFront オリジンアクセスアイデンティティを更新するには

次のリクエスト例では、E74FTE3AEXAMPLE という ID のオリジンアクセスアイデンティティ (OAI) を更新しています。更新できるフィールドは、OAI の Comment のみです。

OAI を更新するには、OAI の ID と ETag が必要です。OAI ID は、create-cloud-front-origin-access-identity コマンドと list-cloud-front-origin-access-identities コマンドの出力で返されます。ETag を取得するには、get-cloud-front-origin-access-identity コマンドまたは get-cloud-front-origin-access-identity-config コマンドを使用します。--if-match オプションを使用して、OAI の ETag を指定します。

aws cloudfront update-cloud-front-origin-access-identity \ --id E74FTE3AEXAMPLE \ --if-match E2QWRUHEXAMPLE \ --cloud-front-origin-access-identity-config \ CallerReference=cli-example,Comment="Example OAI Updated"

次の例に示すように、同じことは、JSON ファイルで OAI 設定を指定することでも実現できます。

aws cloudfront update-cloud-front-origin-access-identity \ --id E74FTE3AEXAMPLE \ --if-match E2QWRUHEXAMPLE \ --cloud-front-origin-access-identity-config file://OAI-config.json

OAI-config.json ファイルは、以下を含む現在のディレクトリ内にある JSON ドキュメントです。

{ "CallerReference": "cli-example", "Comment": "Example OAI Updated" }

OAI 設定をコマンドライン引数で指定する場合も、JSON ファイルで指定する場合も、出力は変わりません。

{ "ETag": "E9LHASXEXAMPLE", "CloudFrontOriginAccessIdentity": { "Id": "E74FTE3AEXAMPLE", "S3CanonicalUserId": "cd13868f797c227fbea2830611a26fe0a21ba1b826ab4bed9b7771c9aEXAMPLE", "CloudFrontOriginAccessIdentityConfig": { "CallerReference": "cli-example", "Comment": "Example OAI Updated" } } }

次の例は、update-connection-group を使用する方法を説明しています。

AWS CLI

CloudFront 接続グループを更新するには

次の update-connection-group の例では、CloudFront 接続グループを無効にし、IPv6 を無効にします。

aws cloudfront update-connection-group \ --id cg_2yHsDkcPKeUlVkk3aEgLKcjABC \ --no-ipv6-enabled \ --no-enabled \ --if-match E3UN6WX5RRO2ABC

出力:

{ "ETag": "E1F83G8C2ARABC", "ConnectionGroup": { "Id": "cg_2yHsDkcPKeUlVkk3aEgLKcjABC", "Name": "cg-example", "Arn": "arn:aws:cloudfront::123456789012:connection-group/cg_2yHsDkcPKeUlVkk3aEgLKcjABC", "CreatedTime": "2025-06-09T20:58:35.481000+00:00", "LastModifiedTime": "2025-06-11T16:25:54.280000+00:00", "Ipv6Enabled": false, "RoutingEndpoint": "du9xp1elo1abc.cloudfront.net", "Status": "InProgress", "Enabled": false, "IsDefault": false } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「カスタム接続グループの作成 (オプション)」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「UpdateConnectionGroup」を参照してください。

次の例は、update-distribution-tenant を使用する方法を説明しています。

AWS CLI

CloudFront ディストリビューションテナントを更新するには

次の update-distribution-tenant の例では、新しいパラメータ値で CloudFront ディストリビューションテナントを更新し、地域制限に国を追加します。

aws cloudfront update-distribution-tenant \ --cli-input-json file://update-tenant.json

update-tenant.json の内容:

{ "Id": "dt_2yMvQgam3QkJo2z54FDl91dk1AB", "IfMatch": "E1F83G8C2ARABC", "Parameters": [ { "Name": "testParam", "Value": "newParameterValue" } ], "Customizations": { "WebAcl": { "Action": "disable" }, "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "DE", "GB", "ES" ] } } }

出力:

{ "ETag": "E1PA6795UKMABC", "DistributionTenant": { "Id": "dt_2yMvQgam3QkJo2z54FDl91dk1AB", "DistributionId": "E1XNX8R2GOAABC", "Name": "new-tenant-customizations", "Arn": "arn:aws:cloudfront::123456789012:distribution-tenant/dt_2yMvQgam3QkJo2z54FDl91dk1AB", "Domains": [ { "Domain": "example.com", "Status": "active" } ], "Customizations": { "WebAcl": { "Action": "disable" }, "GeoRestrictions": { "RestrictionType": "whitelist", "Locations": [ "DE", "ES", "GB" ] } }, "Parameters": [ { "Name": "testParam", "Value": "newParameterValue" } ], "ConnectionGroupId": "cg_2whCJoXMYCjHcxaLGrkllvyABC", "CreatedTime": "2025-06-11T15:54:02.142000+00:00", "LastModifiedTime": "2025-06-11T16:42:45.531000+00:00", "Enabled": false, "Status": "InProgress" } }

詳細については、「Amazon CloudFront デベロッパーガイド」の「ディストリビューションテナントのカスタマイズ」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「UpdateDistributionTenant」を参照してください。

次の例は、update-distribution を使用する方法を説明しています。

AWS CLI

例 1: CloudFront ディストリビューションのデフォルトルートオブジェクトを更新するには

次の例では、ID が EDFDVBD6EXAMPLE の CloudFront ディストリビューションのデフォルトルートオブジェクトを index.html に更新します。

aws cloudfront update-distribution \ --id EDFDVBD6EXAMPLE \ --default-root-object index.html

出力:

{ "ETag": "E2QWRUHEXAMPLE", "Distribution": { "Id": "EDFDVBD6EXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE", "Status": "InProgress", "LastModifiedTime": "2019-12-06T18:55:39.870Z", "InProgressInvalidationBatches": 0, "DomainName": "d111111abcdef8.cloudfront.net", "ActiveTrustedSigners": { "Enabled": false, "Quantity": 0 }, "DistributionConfig": { "CallerReference": "6b10378d-49be-4c4b-a642-419ccaf8f3b5", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "example-website", "DomainName": "www.example.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "CustomOriginConfig": { "HTTPPort": 80, "HTTPSPort": 443, "OriginProtocolPolicy": "match-viewer", "OriginSslProtocols": { "Quantity": 2, "Items": [ "SSLv3", "TLSv1" ] }, "OriginReadTimeout": 30, "OriginKeepaliveTimeout": 5 } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "example-website", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 1, "Items": [ "*" ] }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": true, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http1.1", "IsIPV6Enabled": true } } }

例 2: CloudFront ディストリビューションを更新するには

次の例では、dist-config-disable.json という名前の JSON ファイルでディストリビューション設定を指定して、ID EMLARXS9EXAMPLE を持つ CloudFront ディストリビューションを無効にします。ディストリビューションを更新するには、--if-match オプションを使用してディストリビューションの ETag を指定する必要があります。ETag を取得するには、get-distribution コマンドまたは get-distribution-config コマンドを使用します。JSON ファイルでは Enabled フィールドが false に設定されていることに注意してください。

次の例を使用してディストリビューションを無効にした後は、delete-distribution コマンドを使用してディストリビューションを削除できます。

aws cloudfront update-distribution \ --id EMLARXS9EXAMPLE \ --if-match E2QWRUHEXAMPLE \ --distribution-config file://dist-config-disable.json

dist-config-disable.json の内容:

{ "CallerReference": "cli-1574382155-496510", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-1574382155-273939", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-1574382155-273939", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": false, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true }

出力:

{ "ETag": "E9LHASXEXAMPLE", "Distribution": { "Id": "EMLARXS9EXAMPLE", "ARN": "arn:aws:cloudfront::123456789012:distribution/EMLARXS9EXAMPLE", "Status": "InProgress", "LastModifiedTime": "2019-12-06T18:32:35.553Z", "InProgressInvalidationBatches": 0, "DomainName": "d111111abcdef8.cloudfront.net", "ActiveTrustedSigners": { "Enabled": false, "Quantity": 0 }, "DistributionConfig": { "CallerReference": "cli-1574382155-496510", "Aliases": { "Quantity": 0 }, "DefaultRootObject": "index.html", "Origins": { "Quantity": 1, "Items": [ { "Id": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-1574382155-273939", "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com", "OriginPath": "", "CustomHeaders": { "Quantity": 0 }, "S3OriginConfig": { "OriginAccessIdentity": "" } } ] }, "OriginGroups": { "Quantity": 0 }, "DefaultCacheBehavior": { "TargetOriginId": "amzn-s3-demo-bucket---s3.amazonaws.com.rproxy.govskope.ca-1574382155-273939", "ForwardedValues": { "QueryString": false, "Cookies": { "Forward": "none" }, "Headers": { "Quantity": 0 }, "QueryStringCacheKeys": { "Quantity": 0 } }, "TrustedSigners": { "Enabled": false, "Quantity": 0 }, "ViewerProtocolPolicy": "allow-all", "MinTTL": 0, "AllowedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ], "CachedMethods": { "Quantity": 2, "Items": [ "HEAD", "GET" ] } }, "SmoothStreaming": false, "DefaultTTL": 86400, "MaxTTL": 31536000, "Compress": false, "LambdaFunctionAssociations": { "Quantity": 0 }, "FieldLevelEncryptionId": "" }, "CacheBehaviors": { "Quantity": 0 }, "CustomErrorResponses": { "Quantity": 0 }, "Comment": "", "Logging": { "Enabled": false, "IncludeCookies": false, "Bucket": "", "Prefix": "" }, "PriceClass": "PriceClass_All", "Enabled": false, "ViewerCertificate": { "CloudFrontDefaultCertificate": true, "MinimumProtocolVersion": "TLSv1", "CertificateSource": "cloudfront" }, "Restrictions": { "GeoRestriction": { "RestrictionType": "none", "Quantity": 0 } }, "WebACLId": "", "HttpVersion": "http2", "IsIPV6Enabled": true } } }
  • API の詳細については、AWS CLI コマンドリファレンスの「UpdateDistribution」を参照してください。

次の例は、update-domain-association を使用する方法を説明しています。

AWS CLI

ドメインの関連付けを更新するには

次の update-domain-association の例では、ETag E23ZP02F085ABC を使用してディストリビューションテナントのドメインの関連付けを更新します。

aws cloudfront update-domain-association \ --domain example.com \ --target-resource DistributionTenantId=dt_2x9GhoK0TZRsohWzv1b9It8J1AB \ --if-match E23ZP02F085ABC

出力:

{ "ETag": "ETVPDKIKX0ABC", "Domain": "example.com", "ResourceId": "dt_2x9GhoK0TZRsohWzv1b9It8J1AB" }

詳細については、「Amazon CloudFront デベロッパーガイド」の「代替ドメイン名を別のディストリビューションに移動する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「UpdateDomainAssociation」を参照してください。

次の例は、update-field-level-encryption-config を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化の設定を更新するには

次の例では、JSON ファイルにパラメータを指定することで、C3KM2WVD605UAY という ID を持つフィールドレベル暗号化の設定の Comment フィールドを更新しています。

フィールドレベル暗号化の設定を更新するには、設定の ID と ETag が必要です。ID は create-field-level-encryption-config コマンドと list-field-level-encryption-configs コマンドの出力で返されます。ETag を取得するには、get-field-level-encryption コマンドまたは get-field-level-encryption-config コマンドを使用します。--if-match オプションを使用して、設定の ETag を指定します。

aws cloudfront update-field-level-encryption-config \ --id C3KM2WVD605UAY \ --if-match E2P4Z4VU7TY5SG \ --field-level-encryption-config file://fle-config.json

fle-config.json ファイルは、以下を含む現在のディレクトリ内にある JSON ドキュメントです。

{ "CallerReference": "cli-example", "Comment": "Updated example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0 } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } }

出力:

{ "ETag": "E26M4BIAV81ZF6", "FieldLevelEncryption": { "Id": "C3KM2WVD605UAY", "LastModifiedTime": "2019-12-10T22:26:26.170Z", "FieldLevelEncryptionConfig": { "CallerReference": "cli-example", "Comment": "Updated example FLE configuration", "QueryArgProfileConfig": { "ForwardWhenQueryArgProfileIsUnknown": true, "QueryArgProfiles": { "Quantity": 0, "Items": [] } }, "ContentTypeProfileConfig": { "ForwardWhenContentTypeIsUnknown": true, "ContentTypeProfiles": { "Quantity": 1, "Items": [ { "Format": "URLEncoded", "ProfileId": "P280MFCLSYOCVU", "ContentType": "application/x-www-form-urlencoded" } ] } } } } }

次の例は、update-field-level-encryption-profile を使用する方法を説明しています。

AWS CLI

CloudFront のフィールドレベル暗号化のプロファイルを更新するには

次の例では、PPK0UOSIF5WSV という ID を持つフィールドレベル暗号化のプロファイルを更新しています。この例では、JSON ファイルにパラメータを指定して、プロファイルの NameComment を更新し、2 番目の FieldPatterns 項目を追加します。

フィールドレベル暗号化のプロファイルを更新するには、プロファイルの ID と ETag が必要です。ID は create-field-level-encryption-profile コマンドと list-field-level-encryption-profiles コマンドの出力で返されます。ETag を取得するには、get-field-level-encryption-profile コマンドまたは get-field-level-encryption-profile-config コマンドを使用します。--if-match オプションを使用して、プロファイルの ETag を指定します。

aws cloudfront update-field-level-encryption-profile \ --id PPK0UOSIF5WSV \ --if-match E1QQG65FS2L2GC \ --field-level-encryption-profile-config file://fle-profile-config.json

fle-profile-config.json ファイルは、以下を含む現在のディレクトリ内にある JSON ドキュメントです。

{ "Name": "ExampleFLEProfileUpdated", "CallerReference": "cli-example", "Comment": "Updated FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 2, "Items": [ "ExampleSensitiveField", "SecondExampleSensitiveField" ] } } ] } }

出力:

{ "ETag": "EJETYFJ9CL66D", "FieldLevelEncryptionProfile": { "Id": "PPK0UOSIF5WSV", "LastModifiedTime": "2019-12-10T19:05:58.296Z", "FieldLevelEncryptionProfileConfig": { "Name": "ExampleFLEProfileUpdated", "CallerReference": "cli-example", "Comment": "Updated FLE profile for AWS CLI example", "EncryptionEntities": { "Quantity": 1, "Items": [ { "PublicKeyId": "K2K8NC4HVFE3M0", "ProviderId": "ExampleFLEProvider", "FieldPatterns": { "Quantity": 2, "Items": [ "ExampleSensitiveField", "SecondExampleSensitiveField" ] } } ] } } } }

次の例は、verify-dns-configuration を使用する方法を説明しています。

AWS CLI

ドメインの DNS 設定を確認するには

次の verify-dns-configuration の例では、ドメインの DNS 設定を確認します。

aws cloudfront verify-dns-configuration \ --domain example.com \ --identifier dt_2x9GhoK0TZRsohWzv1b9It8J1AB

出力:

{ "DnsConfigurationList": [ { "Domain": "example.com", "Status": "valid-configuration" } ] }

詳細については、「Amazon CloudFront デベロッパーガイド」の「代替ドメイン名を別のディストリビューションに移動する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「VerifyDnsConfiguration」を参照してください。