diff --git a/CHANGELOG.md b/CHANGELOG.md index 976279d68e..a4e8647b74 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +Release v1.44.155 (2022-12-07) +=== + +### Service Client Updates +* `service/ce`: Updates service API and documentation +* `service/cloudfront`: Updates service API and documentation + * Introducing UpdateDistributionWithStagingConfig that can be used to promote the staging configuration to the production. +* `service/eks`: Updates service API and documentation +* `service/kms`: Updates service documentation and examples + * Updated examples and exceptions for External Key Store (XKS). + Release v1.44.154 (2022-12-06) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 4e1fadd2a7..c8d9f61250 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -5732,6 +5732,9 @@ var awsPartition = partition{ endpointKey{ Region: "eu-north-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-1", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index 8513d8b82e..49aa99be98 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.154" +const SDKVersion = "1.44.155" diff --git a/models/apis/ce/2017-10-25/api-2.json b/models/apis/ce/2017-10-25/api-2.json index 0e6cc18534..a1b97a4e11 100644 --- a/models/apis/ce/2017-10-25/api-2.json +++ b/models/apis/ce/2017-10-25/api-2.json @@ -2374,7 +2374,8 @@ "Service":{"shape":"GenericString"}, "Region":{"shape":"GenericString"}, "LinkedAccount":{"shape":"GenericString"}, - "UsageType":{"shape":"GenericString"} + "UsageType":{"shape":"GenericString"}, + "LinkedAccountName":{"shape":"GenericString"} } }, "RootCauses":{ diff --git a/models/apis/ce/2017-10-25/docs-2.json b/models/apis/ce/2017-10-25/docs-2.json index f28a489ef3..0d4d0152eb 100644 --- a/models/apis/ce/2017-10-25/docs-2.json +++ b/models/apis/ce/2017-10-25/docs-2.json @@ -897,6 +897,7 @@ "RootCause$Region": "

The Amazon Web Services Region that's associated with the cost anomaly.

", "RootCause$LinkedAccount": "

The member account value that's associated with the cost anomaly.

", "RootCause$UsageType": "

The UsageType value that's associated with the cost anomaly.

", + "RootCause$LinkedAccountName": "

The member account name value that's associated with the cost anomaly.

", "SavingsPlansAmortizedCommitment$AmortizedRecurringCommitment": "

The amortized amount of your Savings Plans commitment that was purchased with either a Partial or a NoUpfront.

", "SavingsPlansAmortizedCommitment$AmortizedUpfrontCommitment": "

The amortized amount of your Savings Plans commitment that was purchased with an Upfront or PartialUpfront Savings Plans.

", "SavingsPlansAmortizedCommitment$TotalAmortizedCommitment": "

The total amortized amount of your Savings Plans commitment, regardless of your Savings Plans purchase method.

", @@ -1793,7 +1794,7 @@ } }, "RootCause": { - "base": "

The combination of Amazon Web Service, linked account, Region, and usage type where a cost anomaly is observed.

", + "base": "

The combination of Amazon Web Service, linked account, linked account name, Region, and usage type where a cost anomaly is observed. The linked account name will only be available when the account name can be identified.

", "refs": { "RootCauses$member": null } diff --git a/models/apis/ce/2017-10-25/endpoint-tests-1.json b/models/apis/ce/2017-10-25/endpoint-tests-1.json index b3d03c0653..b733909b76 100644 --- a/models/apis/ce/2017-10-25/endpoint-tests-1.json +++ b/models/apis/ce/2017-10-25/endpoint-tests-1.json @@ -7,9 +7,9 @@ "properties": { "authSchemes": [ { + "signingRegion": "cn-northwest-1", "name": "sigv4", - "signingName": "ce", - "signingRegion": "cn-northwest-1" + "signingName": "ce" } ] }, @@ -29,9 +29,9 @@ "properties": { "authSchemes": [ { + "signingRegion": "us-east-1", "name": "sigv4", - "signingName": "ce", - "signingRegion": "us-east-1" + "signingName": "ce" } ] }, diff --git a/models/apis/cloudfront/2020-05-31/api-2.json b/models/apis/cloudfront/2020-05-31/api-2.json index a405ce7b14..d3709cb6e5 100644 --- a/models/apis/cloudfront/2020-05-31/api-2.json +++ b/models/apis/cloudfront/2020-05-31/api-2.json @@ -157,6 +157,8 @@ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"}, + {"shape":"ContinuousDeploymentPolicyAlreadyExists"}, + {"shape":"TooManyContinuousDeploymentPolicies"}, {"shape":"StagingDistributionInUse"} ] }, @@ -232,6 +234,8 @@ {"shape":"TrustedKeyGroupDoesNotExist"}, {"shape":"NoSuchRealtimeLogConfig"}, {"shape":"RealtimeLogConfigOwnerMismatch"}, + {"shape":"ContinuousDeploymentPolicyInUse"}, + {"shape":"NoSuchContinuousDeploymentPolicy"}, {"shape":"InvalidDomainNameForOriginAccessControl"} ] }, @@ -306,6 +310,8 @@ {"shape":"TrustedKeyGroupDoesNotExist"}, {"shape":"NoSuchRealtimeLogConfig"}, {"shape":"RealtimeLogConfigOwnerMismatch"}, + {"shape":"ContinuousDeploymentPolicyInUse"}, + {"shape":"NoSuchContinuousDeploymentPolicy"}, {"shape":"InvalidDomainNameForOriginAccessControl"} ] }, @@ -605,7 +611,9 @@ {"shape":"InvalidIfMatchVersion"}, {"shape":"InvalidArgument"}, {"shape":"AccessDenied"}, - {"shape":"PreconditionFailed"} + {"shape":"PreconditionFailed"}, + {"shape":"ContinuousDeploymentPolicyInUse"}, + {"shape":"NoSuchContinuousDeploymentPolicy"} ] }, "DeleteDistribution":{ @@ -877,7 +885,8 @@ "input":{"shape":"GetContinuousDeploymentPolicyRequest"}, "output":{"shape":"GetContinuousDeploymentPolicyResult"}, "errors":[ - {"shape":"AccessDenied"} + {"shape":"AccessDenied"}, + {"shape":"NoSuchContinuousDeploymentPolicy"} ] }, "GetContinuousDeploymentPolicyConfig":{ @@ -889,7 +898,8 @@ "input":{"shape":"GetContinuousDeploymentPolicyConfigRequest"}, "output":{"shape":"GetContinuousDeploymentPolicyConfigResult"}, "errors":[ - {"shape":"AccessDenied"} + {"shape":"AccessDenied"}, + {"shape":"NoSuchContinuousDeploymentPolicy"} ] }, "GetDistribution":{ @@ -1234,7 +1244,8 @@ "output":{"shape":"ListContinuousDeploymentPoliciesResult"}, "errors":[ {"shape":"InvalidArgument"}, - {"shape":"AccessDenied"} + {"shape":"AccessDenied"}, + {"shape":"NoSuchContinuousDeploymentPolicy"} ] }, "ListDistributions":{ @@ -1610,7 +1621,8 @@ {"shape":"AccessDenied"}, {"shape":"InconsistentQuantities"}, {"shape":"PreconditionFailed"}, - {"shape":"StagingDistributionInUse"} + {"shape":"StagingDistributionInUse"}, + {"shape":"NoSuchContinuousDeploymentPolicy"} ] }, "UpdateDistribution":{ @@ -1682,11 +1694,84 @@ {"shape":"TrustedKeyGroupDoesNotExist"}, {"shape":"NoSuchRealtimeLogConfig"}, {"shape":"RealtimeLogConfigOwnerMismatch"}, + {"shape":"ContinuousDeploymentPolicyInUse"}, + {"shape":"NoSuchContinuousDeploymentPolicy"}, {"shape":"StagingDistributionInUse"}, {"shape":"IllegalOriginAccessConfiguration"}, {"shape":"InvalidDomainNameForOriginAccessControl"} ] }, + "UpdateDistributionWithStagingConfig":{ + "name":"UpdateDistributionWithStagingConfig2020_05_31", + "http":{ + "method":"PUT", + "requestUri":"/2020-05-31/distribution/{Id}/promote-staging-config" + }, + "input":{"shape":"UpdateDistributionWithStagingConfigRequest"}, + "output":{"shape":"UpdateDistributionWithStagingConfigResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"CNAMEAlreadyExists"}, + {"shape":"IllegalUpdate"}, + {"shape":"InvalidIfMatchVersion"}, + {"shape":"MissingBody"}, + {"shape":"NoSuchDistribution"}, + {"shape":"PreconditionFailed"}, + {"shape":"TooManyDistributionCNAMEs"}, + {"shape":"InvalidDefaultRootObject"}, + {"shape":"InvalidRelativePath"}, + {"shape":"InvalidErrorCode"}, + {"shape":"InvalidResponseCode"}, + {"shape":"InvalidArgument"}, + {"shape":"InvalidOriginAccessIdentity"}, + {"shape":"InvalidOriginAccessControl"}, + {"shape":"TooManyTrustedSigners"}, + {"shape":"TrustedSignerDoesNotExist"}, + {"shape":"InvalidViewerCertificate"}, + {"shape":"InvalidMinimumProtocolVersion"}, + {"shape":"InvalidRequiredProtocol"}, + {"shape":"NoSuchOrigin"}, + {"shape":"TooManyOrigins"}, + {"shape":"TooManyOriginGroupsPerDistribution"}, + {"shape":"TooManyCacheBehaviors"}, + {"shape":"TooManyCookieNamesInWhiteList"}, + {"shape":"InvalidForwardCookies"}, + {"shape":"TooManyHeadersInForwardedValues"}, + {"shape":"InvalidHeadersForS3Origin"}, + {"shape":"InconsistentQuantities"}, + {"shape":"TooManyCertificates"}, + {"shape":"InvalidLocationCode"}, + {"shape":"InvalidGeoRestrictionParameter"}, + {"shape":"InvalidTTLOrder"}, + {"shape":"InvalidWebACLId"}, + {"shape":"TooManyOriginCustomHeaders"}, + {"shape":"TooManyQueryStringParameters"}, + {"shape":"InvalidQueryStringParameters"}, + {"shape":"TooManyDistributionsWithLambdaAssociations"}, + {"shape":"TooManyDistributionsWithSingleFunctionARN"}, + {"shape":"TooManyLambdaFunctionAssociations"}, + {"shape":"InvalidLambdaFunctionAssociation"}, + {"shape":"TooManyDistributionsWithFunctionAssociations"}, + {"shape":"TooManyFunctionAssociations"}, + {"shape":"InvalidFunctionAssociation"}, + {"shape":"InvalidOriginReadTimeout"}, + {"shape":"InvalidOriginKeepaliveTimeout"}, + {"shape":"NoSuchFieldLevelEncryptionConfig"}, + {"shape":"IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"}, + {"shape":"TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"}, + {"shape":"NoSuchCachePolicy"}, + {"shape":"TooManyDistributionsAssociatedToCachePolicy"}, + {"shape":"NoSuchResponseHeadersPolicy"}, + {"shape":"TooManyDistributionsAssociatedToResponseHeadersPolicy"}, + {"shape":"NoSuchOriginRequestPolicy"}, + {"shape":"TooManyDistributionsAssociatedToOriginRequestPolicy"}, + {"shape":"TooManyDistributionsAssociatedToKeyGroup"}, + {"shape":"TooManyKeyGroupsAssociatedToDistribution"}, + {"shape":"TrustedKeyGroupDoesNotExist"}, + {"shape":"NoSuchRealtimeLogConfig"}, + {"shape":"RealtimeLogConfigOwnerMismatch"} + ] + }, "UpdateFieldLevelEncryptionConfig":{ "name":"UpdateFieldLevelEncryptionConfig2020_05_31", "http":{ @@ -2403,6 +2488,14 @@ "ContinuousDeploymentPolicyConfig":{"shape":"ContinuousDeploymentPolicyConfig"} } }, + "ContinuousDeploymentPolicyAlreadyExists":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "ContinuousDeploymentPolicyConfig":{ "type":"structure", "required":[ @@ -2415,6 +2508,14 @@ "TrafficConfig":{"shape":"TrafficConfig"} } }, + "ContinuousDeploymentPolicyInUse":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "ContinuousDeploymentPolicyList":{ "type":"structure", "required":[ @@ -3457,7 +3558,9 @@ "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"}, - "IsIPV6Enabled":{"shape":"boolean"} + "IsIPV6Enabled":{"shape":"boolean"}, + "ContinuousDeploymentPolicyId":{"shape":"string"}, + "Staging":{"shape":"boolean"} } }, "DistributionConfigWithTags":{ @@ -3540,7 +3643,8 @@ "Restrictions", "WebACLId", "HttpVersion", - "IsIPV6Enabled" + "IsIPV6Enabled", + "Staging" ], "members":{ "Id":{"shape":"string"}, @@ -3562,7 +3666,8 @@ "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"}, "IsIPV6Enabled":{"shape":"boolean"}, - "AliasICPRecordals":{"shape":"AliasICPRecordals"} + "AliasICPRecordals":{"shape":"AliasICPRecordals"}, + "Staging":{"shape":"boolean"} } }, "DistributionSummaryList":{ @@ -5772,6 +5877,14 @@ "error":{"httpStatusCode":404}, "exception":true }, + "NoSuchContinuousDeploymentPolicy":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":404}, + "exception":true + }, "NoSuchDistribution":{ "type":"structure", "members":{ @@ -7268,6 +7381,14 @@ "error":{"httpStatusCode":400}, "exception":true }, + "TooManyContinuousDeploymentPolicies":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ @@ -7860,6 +7981,39 @@ }, "payload":"Distribution" }, + "UpdateDistributionWithStagingConfigRequest":{ + "type":"structure", + "required":["Id"], + "members":{ + "Id":{ + "shape":"string", + "location":"uri", + "locationName":"Id" + }, + "StagingDistributionId":{ + "shape":"string", + "location":"querystring", + "locationName":"StagingDistributionId" + }, + "IfMatch":{ + "shape":"string", + "location":"header", + "locationName":"If-Match" + } + } + }, + "UpdateDistributionWithStagingConfigResult":{ + "type":"structure", + "members":{ + "Distribution":{"shape":"Distribution"}, + "ETag":{ + "shape":"string", + "location":"header", + "locationName":"ETag" + } + }, + "payload":"Distribution" + }, "UpdateFieldLevelEncryptionConfigRequest":{ "type":"structure", "required":[ diff --git a/models/apis/cloudfront/2020-05-31/docs-2.json b/models/apis/cloudfront/2020-05-31/docs-2.json index cd5f558959..dfd8cfa896 100644 --- a/models/apis/cloudfront/2020-05-31/docs-2.json +++ b/models/apis/cloudfront/2020-05-31/docs-2.json @@ -97,6 +97,7 @@ "UpdateCloudFrontOriginAccessIdentity": "

Update an origin access identity.

", "UpdateContinuousDeploymentPolicy": "

Updates a continuous deployment policy. You can update a continuous deployment policy to enable or disable it, to change the percentage of traffic that it sends to the staging distribution, or to change the staging distribution that it sends traffic to.

When you update a continuous deployment policy configuration, all the fields are updated with the values that are provided in the request. You cannot update some fields independent of others. To update a continuous deployment policy configuration:

  1. Use GetContinuousDeploymentPolicyConfig to get the current configuration.

  2. Locally modify the fields in the continuous deployment policy configuration that you want to update.

  3. Use UpdateContinuousDeploymentPolicy, providing the entire continuous deployment policy configuration, including the fields that you modified and those that you didn’t.

", "UpdateDistribution": "

Updates the configuration for a CloudFront distribution.

The update process includes getting the current distribution configuration, updating it to make your changes, and then submitting an UpdateDistribution request to make the updates.

To update a web distribution using the CloudFront API

  1. Use GetDistributionConfig to get the current configuration, including the version identifier (ETag).

  2. Update the distribution configuration that was returned in the response. Note the following important requirements and restrictions:

  3. Submit an UpdateDistribution request, providing the distribution configuration. The new configuration replaces the existing configuration. The values that you specify in an UpdateDistribution request are not merged into your existing configuration. Make sure to include all fields: the ones that you modified and also the ones that you didn’t.

", + "UpdateDistributionWithStagingConfig": "

Copies the staging distribution's configuration to its corresponding primary distribution. The primary distribution retains its Aliases (also known as alternate domain names or CNAMEs) and ContinuousDeploymentPolicyId value, but otherwise its configuration is overwritten to match the staging distribution.

You can use this operation in a continuous deployment workflow after you have tested configuration changes on the staging distribution. After using a continuous deployment policy to move a portion of your domain name’s traffic to the staging distribution and verifying that it works as intended, you can use this operation to copy the staging distribution’s configuration to the primary distribution. This action will disable the continuous deployment policy and move your domain’s traffic back to the primary distribution.

", "UpdateFieldLevelEncryptionConfig": "

Update a field-level encryption configuration.

", "UpdateFieldLevelEncryptionProfile": "

Update a field-level encryption profile.

", "UpdateFunction": "

Updates a CloudFront function.

You can update a function’s code or the comment that describes the function. You cannot update a function’s name.

To update a function, you provide the function’s name and version (ETag value) along with the updated function code. To get the name and version, you can use ListFunctions and DescribeFunction.

", @@ -435,6 +436,11 @@ "UpdateContinuousDeploymentPolicyResult$ContinuousDeploymentPolicy": "

A continuous deployment policy.

" } }, + "ContinuousDeploymentPolicyAlreadyExists": { + "base": "

A continuous deployment policy with this configuration already exists.

", + "refs": { + } + }, "ContinuousDeploymentPolicyConfig": { "base": "

Contains the configuration for a continuous deployment policy.

", "refs": { @@ -444,6 +450,11 @@ "UpdateContinuousDeploymentPolicyRequest$ContinuousDeploymentPolicyConfig": "

The continuous deployment policy configuration.

" } }, + "ContinuousDeploymentPolicyInUse": { + "base": "

You cannot delete a continuous deployment policy that is associated with a primary distribution.

", + "refs": { + } + }, "ContinuousDeploymentPolicyList": { "base": "

Contains a list of continuous deployment policies.

", "refs": { @@ -475,7 +486,7 @@ } }, "ContinuousDeploymentSingleWeightConfig": { - "base": "

Contains the percentage of traffic to send to a staging distribution, expressed as a decimal number between 0 and 1.

", + "base": "

Contains the percentage of traffic to send to a staging distribution.

", "refs": { "TrafficConfig$SingleWeightConfig": "

Contains the percentage of traffic to send to the staging distribution.

" } @@ -825,7 +836,8 @@ "CreateDistributionResult$Distribution": "

The distribution's information.

", "CreateDistributionWithTagsResult$Distribution": "

The distribution's information.

", "GetDistributionResult$Distribution": "

The distribution's information.

", - "UpdateDistributionResult$Distribution": "

The distribution's information.

" + "UpdateDistributionResult$Distribution": "

The distribution's information.

", + "UpdateDistributionWithStagingConfigResult$Distribution": null } }, "DistributionAlreadyExists": { @@ -2081,6 +2093,11 @@ "refs": { } }, + "NoSuchContinuousDeploymentPolicy": { + "base": "

The continuous deployment policy doesn’t exist.

", + "refs": { + } + }, "NoSuchDistribution": { "base": "

The specified distribution does not exist.

", "refs": { @@ -3021,6 +3038,11 @@ "refs": { } }, + "TooManyContinuousDeploymentPolicies": { + "base": "

You have reached the maximum number of continuous deployment policies for this Amazon Web Services account.

", + "refs": { + } + }, "TooManyCookieNamesInWhiteList": { "base": "

Your request contains more cookie names in the whitelist than are allowed per cache behavior.

", "refs": { @@ -3334,6 +3356,16 @@ "refs": { } }, + "UpdateDistributionWithStagingConfigRequest": { + "base": null, + "refs": { + } + }, + "UpdateDistributionWithStagingConfigResult": { + "base": null, + "refs": { + } + }, "UpdateFieldLevelEncryptionConfigRequest": { "base": null, "refs": { @@ -3469,10 +3501,12 @@ "DefaultCacheBehavior$Compress": "

Whether you want CloudFront to automatically compress certain files for this cache behavior. If so, specify true; if not, specify false. For more information, see Serving Compressed Files in the Amazon CloudFront Developer Guide.

", "DistributionConfig$Enabled": "

From this field, you can enable or disable the selected distribution.

", "DistributionConfig$IsIPV6Enabled": "

If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify true. If you specify false, CloudFront responds to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.

In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the IpAddress parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see Creating a Signed URL Using a Custom Policy in the Amazon CloudFront Developer Guide.

If you're using an Route 53 Amazon Web Services Integration alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:

For more information, see Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name in the Route 53 Amazon Web Services Integration Developer Guide.

If you created a CNAME resource record set, either with Route 53 Amazon Web Services Integration or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request.

", + "DistributionConfig$Staging": "

A Boolean that indicates whether this is a staging distribution. When this value is true, this is a staging distribution. When this value is false, this is not a staging distribution.

", "DistributionIdList$IsTruncated": "

A flag that indicates whether more distribution IDs remain to be listed. If your results were truncated, you can make a subsequent request using the Marker request field to retrieve more distribution IDs in the list.

", "DistributionList$IsTruncated": "

A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.

", "DistributionSummary$Enabled": "

Whether the distribution is enabled to accept user requests for content.

", "DistributionSummary$IsIPV6Enabled": "

Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for your distribution.

", + "DistributionSummary$Staging": "

Whether the primary distribution has a staging distribution enabled.

", "ForwardedValues$QueryString": "

This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field.

If you want to include query strings in the cache key, use a cache policy. For more information, see Creating cache policies in the Amazon CloudFront Developer Guide.

If you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see Creating origin request policies in the Amazon CloudFront Developer Guide.

Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of QueryString and on the values that you specify for QueryStringCacheKeys, if any:

If you specify true for QueryString and you don't specify any values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.

If you specify true for QueryString and you specify one or more values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.

If you specify false for QueryString, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.

For more information, see Configuring CloudFront to Cache Based on Query String Parameters in the Amazon CloudFront Developer Guide.

", "InvalidationList$IsTruncated": "

A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.

", "LambdaFunctionAssociation$IncludeBody": "

A flag that allows a Lambda@Edge function to have read access to the body content. For more information, see Accessing the Request Body by Choosing the Include Body Option in the Amazon CloudFront Developer Guide.

", @@ -3516,7 +3550,7 @@ "float": { "base": null, "refs": { - "ContinuousDeploymentSingleWeightConfig$Weight": "

The percentage of traffic to send to the staging distribution, expressed as a decimal number between 0 and 1.

" + "ContinuousDeploymentSingleWeightConfig$Weight": "

The percentage of traffic to send to a staging distribution, expressed as a decimal number between 0 and .15.

" } }, "integer": { @@ -3682,6 +3716,8 @@ "ContentTypeProfile$ProfileId": "

The profile ID for a field-level encryption content type-profile mapping.

", "ContentTypeProfile$ContentType": "

The content type for a field-level encryption content type-profile mapping.

", "ContinuousDeploymentPolicy$Id": "

The identifier of the continuous deployment policy.

", + "ContinuousDeploymentPolicyAlreadyExists$Message": null, + "ContinuousDeploymentPolicyInUse$Message": null, "ContinuousDeploymentPolicyList$NextMarker": "

Indicates the next page of continuous deployment policies. To get the next page of the list, use this value in the Marker field of your request.

", "ContinuousDeploymentSingleHeaderConfig$Header": "

The request header name that you want CloudFront to send to your staging distribution.

", "ContinuousDeploymentSingleHeaderConfig$Value": "

The request header value.

", @@ -3772,6 +3808,7 @@ "DistributionConfig$CallerReference": "

A unique value (for example, a date-time stamp) that ensures that the request can't be replayed.

If the value of CallerReference is new (regardless of the content of the DistributionConfig object), CloudFront creates a new distribution.

If CallerReference is a value that you already sent in a previous request to create a distribution, CloudFront returns a DistributionAlreadyExists error.

", "DistributionConfig$DefaultRootObject": "

The object that you want CloudFront to request from your origin (for example, index.html) when a viewer requests the root URL for your distribution (https://www.example.com) instead of an object in your distribution (https://www.example.com/product-description.html). Specifying a default root object avoids exposing the contents of your distribution.

Specify only the object name, for example, index.html. Don't add a / before the object name.

If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element.

To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element.

To replace the default root object, update the distribution configuration and specify the new object.

For more information about the default root object, see Creating a Default Root Object in the Amazon CloudFront Developer Guide.

", "DistributionConfig$WebACLId": "

A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. To specify a web ACL created using WAF Classic, use the ACL ID, for example 473e64fd-f30b-4765-81a0-62ad96dd167a.

WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the WAF Developer Guide.

", + "DistributionConfig$ContinuousDeploymentPolicyId": "

The identifier of a continuous deployment policy. For more information, see CreateContinuousDeploymentPolicy.

", "DistributionIdList$Marker": "

The value provided in the Marker request field.

", "DistributionIdList$NextMarker": "

Contains the value that you should use in the Marker field of a subsequent request to continue listing distribution IDs where you left off.

", "DistributionIdListSummary$member": null, @@ -3978,6 +4015,7 @@ "MonitoringSubscriptionAlreadyExists$Message": null, "NoSuchCachePolicy$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, + "NoSuchContinuousDeploymentPolicy$Message": null, "NoSuchDistribution$Message": null, "NoSuchFieldLevelEncryptionConfig$Message": null, "NoSuchFieldLevelEncryptionProfile$Message": null, @@ -4087,6 +4125,7 @@ "TooManyCachePolicies$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, + "TooManyContinuousDeploymentPolicies$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyCookiesInCachePolicy$Message": null, "TooManyCookiesInOriginRequestPolicy$Message": null, @@ -4148,6 +4187,10 @@ "UpdateDistributionRequest$Id": "

The distribution's id.

", "UpdateDistributionRequest$IfMatch": "

The value of the ETag header that you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.

", "UpdateDistributionResult$ETag": "

The current version of the configuration. For example: E2QWRUHAPOMQZL.

", + "UpdateDistributionWithStagingConfigRequest$Id": "

The identifier of the primary distribution to which you are copying a staging distribution's configuration.

", + "UpdateDistributionWithStagingConfigRequest$StagingDistributionId": "

The identifier of the staging distribution whose configuration you are copying to the primary distribution.

", + "UpdateDistributionWithStagingConfigRequest$IfMatch": "

The current versions (ETag values) of both primary and staging distributions. Provide these in the following format:

<primary ETag>, <staging ETag>

", + "UpdateDistributionWithStagingConfigResult$ETag": "

The current version of the primary distribution (after it’s updated).

", "UpdateFieldLevelEncryptionConfigRequest$Id": "

The ID of the configuration you want to update.

", "UpdateFieldLevelEncryptionConfigRequest$IfMatch": "

The value of the ETag header that you received when retrieving the configuration identity to update. For example: E2QWRUHAPOMQZL.

", "UpdateFieldLevelEncryptionConfigResult$ETag": "

The value of the ETag header that you received when updating the configuration. For example: E2QWRUHAPOMQZL.

", diff --git a/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json b/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json index 6883977d41..b13d359bc0 100644 --- a/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json +++ b/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/cloudfront/2020-05-31/endpoint-tests-1.json b/models/apis/cloudfront/2020-05-31/endpoint-tests-1.json index aed61cfa0f..52299cc063 100644 --- a/models/apis/cloudfront/2020-05-31/endpoint-tests-1.json +++ b/models/apis/cloudfront/2020-05-31/endpoint-tests-1.json @@ -17,9 +17,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "aws-cn-global", - "UseFIPS": false + "Region": "aws-cn-global" } }, { @@ -39,9 +39,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, - "Region": "aws-global", - "UseFIPS": false + "Region": "aws-global" } }, { @@ -52,9 +52,9 @@ } }, "params": { + "UseFIPS": false, "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -64,9 +64,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "UseFIPS": true, "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": true, "Endpoint": "https://example.com" } }, @@ -76,9 +76,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "UseFIPS": false, "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": false, "Endpoint": "https://example.com" } } diff --git a/models/apis/eks/2017-11-01/api-2.json b/models/apis/eks/2017-11-01/api-2.json index 65fcd8c4d7..10754e73ee 100644 --- a/models/apis/eks/2017-11-01/api-2.json +++ b/models/apis/eks/2017-11-01/api-2.json @@ -214,6 +214,20 @@ {"shape":"ServerException"} ] }, + "DescribeAddonConfiguration":{ + "name":"DescribeAddonConfiguration", + "http":{ + "method":"GET", + "requestUri":"/addons/configuration-schemas" + }, + "input":{"shape":"DescribeAddonConfigurationRequest"}, + "output":{"shape":"DescribeAddonConfigurationResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterException"} + ] + }, "DescribeAddonVersions":{ "name":"DescribeAddonVersions", "http":{ @@ -596,7 +610,8 @@ "tags":{"shape":"TagMap"}, "publisher":{"shape":"String"}, "owner":{"shape":"String"}, - "marketplaceInformation":{"shape":"MarketplaceInformation"} + "marketplaceInformation":{"shape":"MarketplaceInformation"}, + "configurationValues":{"shape":"String"} } }, "AddonHealth":{ @@ -929,7 +944,8 @@ "shape":"String", "idempotencyToken":true }, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "configurationValues":{"shape":"String"} } }, "CreateAddonResponse":{ @@ -1153,6 +1169,33 @@ "cluster":{"shape":"Cluster"} } }, + "DescribeAddonConfigurationRequest":{ + "type":"structure", + "required":[ + "addonName", + "addonVersion" + ], + "members":{ + "addonName":{ + "shape":"String", + "location":"querystring", + "locationName":"addonName" + }, + "addonVersion":{ + "shape":"String", + "location":"querystring", + "locationName":"addonVersion" + } + } + }, + "DescribeAddonConfigurationResponse":{ + "type":"structure", + "members":{ + "addonName":{"shape":"String"}, + "addonVersion":{"shape":"String"}, + "configurationSchema":{"shape":"String"} + } + }, "DescribeAddonRequest":{ "type":"structure", "required":[ @@ -2248,7 +2291,8 @@ "clientRequestToken":{ "shape":"String", "idempotencyToken":true - } + }, + "configurationValues":{"shape":"String"} } }, "UpdateAddonResponse":{ diff --git a/models/apis/eks/2017-11-01/docs-2.json b/models/apis/eks/2017-11-01/docs-2.json index 376ab7ebd8..75a6697469 100644 --- a/models/apis/eks/2017-11-01/docs-2.json +++ b/models/apis/eks/2017-11-01/docs-2.json @@ -14,6 +14,7 @@ "DeleteNodegroup": "

Deletes an Amazon EKS node group for a cluster.

", "DeregisterCluster": "

Deregisters a connected cluster to remove it from the Amazon EKS control plane.

", "DescribeAddon": "

Describes an Amazon EKS add-on.

", + "DescribeAddonConfiguration": "

Returns configuration options.

", "DescribeAddonVersions": "

Describes the versions for an add-on. Information such as the Kubernetes versions that you can use the add-on with, the owner, publisher, and the type of the add-on are returned.

", "DescribeCluster": "

Returns descriptive information about an Amazon EKS cluster.

The API server endpoint and certificate authority data returned by this operation are required for kubelet and kubectl to communicate with your Kubernetes API server. For more information, see Create a kubeconfig for Amazon EKS.

The API server endpoint and certificate authority data aren't available until the cluster reaches the ACTIVE state.

", "DescribeFargateProfile": "

Returns descriptive information about an Fargate profile.

", @@ -384,6 +385,16 @@ "refs": { } }, + "DescribeAddonConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DescribeAddonConfigurationResponse": { + "base": null, + "refs": { + } + }, "DescribeAddonRequest": { "base": null, "refs": { @@ -933,6 +944,7 @@ "Addon$serviceAccountRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that is bound to the Kubernetes service account used by the add-on.

", "Addon$publisher": "

The publisher of the add-on.

", "Addon$owner": "

The owner of the add-on.

", + "Addon$configurationValues": "

The provided configuration values.

", "AddonInfo$addonName": "

The name of the add-on.

", "AddonInfo$type": "

The type of the add-on.

", "AddonInfo$publisher": "

The publisher of the add-on.

", @@ -970,6 +982,7 @@ "CreateAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by DescribeAddonVersions .

", "CreateAddonRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", "CreateAddonRequest$clientRequestToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateAddonRequest$configurationValues": "

The set of configuration values for the add-on being created. Whatever values provided here are validated against the schema from DescribeAddonConfiguration .

", "CreateClusterRequest$version": "

The desired Kubernetes version for your cluster. If you don't specify a value here, the default version available in Amazon EKS is used.

The default version might not be the latest version available.

", "CreateClusterRequest$roleArn": "

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to Amazon Web Services API operations on your behalf. For more information, see Amazon EKS Service IAM Role in the Amazon EKS User Guide .

", "CreateClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", @@ -990,6 +1003,11 @@ "DeleteNodegroupRequest$clusterName": "

The name of the Amazon EKS cluster that is associated with your node group.

", "DeleteNodegroupRequest$nodegroupName": "

The name of the node group to delete.

", "DeregisterClusterRequest$name": "

The name of the connected cluster to deregister.

", + "DescribeAddonConfigurationRequest$addonName": "

The name of the add-on. The name must match one of the names returned by DescribeAddonVersions .

", + "DescribeAddonConfigurationRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", + "DescribeAddonConfigurationResponse$addonName": "

The name of the add-on.

", + "DescribeAddonConfigurationResponse$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", + "DescribeAddonConfigurationResponse$configurationSchema": "

A JSON schema used to validate provided configuration values when creating or updating an addon.

", "DescribeAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "DescribeAddonVersionsRequest$kubernetesVersion": "

The Kubernetes versions that you can use the add-on with.

", "DescribeAddonVersionsRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeAddonVersionsRequest where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", @@ -1084,7 +1102,7 @@ "OutpostConfigResponse$controlPlaneInstanceType": "

The Amazon EC2 instance type used for the control plane. The instance type is the same for all control plane instances.

", "Provider$keyArn": "

Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key. For more information, see Allowing Users in Other Accounts to Use a KMS key in the Key Management Service Developer Guide.

", "RegisterClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "RemoteAccessConfig$ec2SshKey": "

The Amazon EC2 SSH key that provides access for SSH communication with the nodes in the managed node group. For more information, see Amazon EC2 key pairs and Linux instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances.

", + "RemoteAccessConfig$ec2SshKey": "

The Amazon EC2 SSH key name that provides access for SSH communication with the nodes in the managed node group. For more information, see Amazon EC2 key pairs and Linux instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances.

", "ResourceInUseException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ResourceInUseException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", "ResourceInUseException$addonName": null, @@ -1113,6 +1131,7 @@ "UpdateAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "UpdateAddonRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", "UpdateAddonRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "UpdateAddonRequest$configurationValues": "

The set of configuration values for the add-on being created. Whatever values provided here are validated against the schema from DescribeAddonConfiguration

", "UpdateClusterConfigRequest$name": "

The name of the Amazon EKS cluster to update.

", "UpdateClusterConfigRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "UpdateClusterVersionRequest$name": "

The name of the Amazon EKS cluster to update.

", @@ -1158,7 +1177,7 @@ "Nodegroup$subnets": "

The subnets that were specified for the Auto Scaling group that is associated with your node group.

", "OutpostConfigRequest$outpostArns": "

The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. Only a single Outpost ARN is supported.

", "OutpostConfigResponse$outpostArns": "

The ARN of the Outpost that you specified for use with your local Amazon EKS cluster on Outposts.

", - "RemoteAccessConfig$sourceSecurityGroups": "

The security groups that are allowed SSH access (port 22) to the nodes. If you specify an Amazon EC2 SSH key but do not specify a source security group when you create a managed node group, then port 22 on the nodes is opened to the internet (0.0.0.0/0). For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

", + "RemoteAccessConfig$sourceSecurityGroups": "

The security group ids that are allowed SSH access (port 22) to the nodes. If you specify an Amazon EC2 SSH key but do not specify a source security group when you create a managed node group, then port 22 on the nodes is opened to the internet (0.0.0.0/0). For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

", "UnsupportedAvailabilityZoneException$validZones": "

The supported Availability Zones for your account. Choose subnets in these Availability Zones for your cluster.

", "VpcConfigRequest$subnetIds": "

Specify subnets for your Amazon EKS nodes. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your nodes and the Kubernetes control plane.

", "VpcConfigRequest$securityGroupIds": "

Specify one or more security groups for the cross-account elastic network interfaces that Amazon EKS creates to use that allow communication between your nodes and the Kubernetes control plane. If you don't specify any security groups, then familiarize yourself with the difference between Amazon EKS defaults for clusters deployed with Kubernetes. For more information, see Amazon EKS security group considerations in the Amazon EKS User Guide .

", diff --git a/models/apis/eks/2017-11-01/endpoint-rule-set-1.json b/models/apis/eks/2017-11-01/endpoint-rule-set-1.json index a8f8885b3e..4b665084ed 100644 --- a/models/apis/eks/2017-11-01/endpoint-rule-set-1.json +++ b/models/apis/eks/2017-11-01/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/eks/2017-11-01/endpoint-tests-1.json b/models/apis/eks/2017-11-01/endpoint-tests-1.json index fe63f7d1ae..4b583d9f7e 100644 --- a/models/apis/eks/2017-11-01/endpoint-tests-1.json +++ b/models/apis/eks/2017-11-01/endpoint-tests-1.json @@ -8,8 +8,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -21,8 +21,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -34,8 +34,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -47,8 +47,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -99,8 +99,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -112,8 +112,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -125,8 +125,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -138,8 +138,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -151,8 +151,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -164,8 +164,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -177,8 +177,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -190,8 +190,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -203,8 +203,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -216,8 +216,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -229,8 +229,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -242,8 +242,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -255,8 +255,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -268,8 +268,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -281,8 +281,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -294,8 +294,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -307,8 +307,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -320,8 +320,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -333,8 +333,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -346,8 +346,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -359,8 +359,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -372,8 +372,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -385,8 +385,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -398,8 +398,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -411,8 +411,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -424,8 +424,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -437,8 +437,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -450,8 +450,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -463,8 +463,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -476,8 +476,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -489,8 +489,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -502,8 +502,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -515,8 +515,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -528,8 +528,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -541,8 +541,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -554,8 +554,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -567,8 +567,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -580,8 +580,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -593,8 +593,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -606,8 +606,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -619,8 +619,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -632,8 +632,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -645,8 +645,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -658,8 +658,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -671,8 +671,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -684,8 +684,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -697,8 +697,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -710,8 +710,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -723,8 +723,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -736,8 +736,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -749,8 +749,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -762,8 +762,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -775,8 +775,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -788,8 +788,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -801,8 +801,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -814,8 +814,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -827,8 +827,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -840,8 +840,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -853,8 +853,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -866,8 +866,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -879,8 +879,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -892,8 +892,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -905,8 +905,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -918,8 +918,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -931,8 +931,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -944,8 +944,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -957,8 +957,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -970,8 +970,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -983,8 +983,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -996,8 +996,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1009,8 +1009,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1022,8 +1022,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1035,8 +1035,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1048,8 +1048,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1061,8 +1061,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1074,8 +1074,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1087,8 +1087,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1100,8 +1100,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1113,8 +1113,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1126,8 +1126,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1139,8 +1139,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1152,8 +1152,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1165,8 +1165,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1178,8 +1178,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1191,8 +1191,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1204,8 +1204,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1217,8 +1217,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1230,8 +1230,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1243,8 +1243,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1256,8 +1256,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1269,8 +1269,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1282,8 +1282,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1295,8 +1295,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1308,8 +1308,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1321,8 +1321,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1334,8 +1334,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1347,8 +1347,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1358,8 +1358,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1371,8 +1371,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1382,8 +1382,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1395,8 +1395,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1408,8 +1408,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1421,8 +1421,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1434,8 +1434,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1447,8 +1447,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1460,8 +1460,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1473,8 +1473,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1486,8 +1486,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1499,8 +1499,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1512,8 +1512,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1525,8 +1525,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1538,8 +1538,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1551,8 +1551,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1564,8 +1564,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1577,8 +1577,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1590,8 +1590,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1603,8 +1603,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1616,8 +1616,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1629,8 +1629,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1642,8 +1642,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1655,8 +1655,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1666,8 +1666,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1679,8 +1679,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1690,8 +1690,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1703,8 +1703,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1716,8 +1716,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1728,8 +1728,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1740,8 +1740,8 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1", "Endpoint": "https://example.com" } diff --git a/models/apis/kms/2014-11-01/docs-2.json b/models/apis/kms/2014-11-01/docs-2.json index 5d36590f3f..9c2666a216 100644 --- a/models/apis/kms/2014-11-01/docs-2.json +++ b/models/apis/kms/2014-11-01/docs-2.json @@ -13,7 +13,7 @@ "DeleteCustomKeyStore": "

Deletes a custom key store. This operation does not affect any backing elements of the custom key store. It does not delete the CloudHSM cluster that is associated with an CloudHSM key store, or affect any users or keys in the cluster. For an external key store, it does not affect the external key store proxy, external key manager, or any external keys.

This operation is part of the custom key stores feature in KMS, which combines the convenience and extensive integration of KMS with the isolation and control of a key store that you own and manage.

The custom key store that you delete cannot contain any KMS keys. Before deleting the key store, verify that you will never need to use any of the KMS keys in the key store for any cryptographic operations. Then, use ScheduleKeyDeletion to delete the KMS keys from the key store. After the required waiting period expires and all KMS keys are deleted from the custom key store, use DisconnectCustomKeyStore to disconnect the key store from KMS. Then, you can delete the custom key store.

For keys in an CloudHSM key store, the ScheduleKeyDeletion operation makes a best effort to delete the key material from the associated cluster. However, you might need to manually delete the orphaned key material from the cluster and its backups. KMS never creates, manages, or deletes cryptographic keys in the external key manager associated with an external key store. You must manage them using your external key manager tools.

Instead of deleting the custom key store, consider using the DisconnectCustomKeyStore operation to disconnect the custom key store from its backing key store. While the key store is disconnected, you cannot create or use the KMS keys in the key store. But, you do not need to delete KMS keys and you can reconnect a disconnected custom key store at any time.

If the operation succeeds, it returns a JSON object with no properties.

Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

Required permissions: kms:DeleteCustomKeyStore (IAM policy)

Related operations:

", "DeleteImportedKeyMaterial": "

Deletes key material that you previously imported. This operation makes the specified KMS key unusable. For more information about importing key material into KMS, see Importing Key Material in the Key Management Service Developer Guide.

When the specified KMS key is in the PendingDeletion state, this operation does not change the KMS key's state. Otherwise, it changes the KMS key's state to PendingImport.

After you delete key material, you can use ImportKeyMaterial to reimport the same key material into the KMS key.

The KMS key that you use for this operation must be in a compatible key state. For details, see Key states of KMS keys in the Key Management Service Developer Guide.

Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

Required permissions: kms:DeleteImportedKeyMaterial (key policy)

Related operations:

", "DescribeCustomKeyStores": "

Gets information about custom key stores in the account and Region.

This operation is part of the custom key stores feature in KMS, which combines the convenience and extensive integration of KMS with the isolation and control of a key store that you own and manage.

By default, this operation returns information about all custom key stores in the account and Region. To get only information about a particular custom key store, use either the CustomKeyStoreName or CustomKeyStoreId parameter (but not both).

To determine whether the custom key store is connected to its CloudHSM cluster or external key store proxy, use the ConnectionState element in the response. If an attempt to connect the custom key store failed, the ConnectionState value is FAILED and the ConnectionErrorCode element in the response indicates the cause of the failure. For help interpreting the ConnectionErrorCode, see CustomKeyStoresListEntry.

Custom key stores have a DISCONNECTED connection state if the key store has never been connected or you used the DisconnectCustomKeyStore operation to disconnect it. Otherwise, the connection state is CONNECTED. If your custom key store connection state is CONNECTED but you are having trouble using it, verify that the backing store is active and available. For an CloudHSM key store, verify that the associated CloudHSM cluster is active and contains the minimum number of HSMs required for the operation, if any. For an external key store, verify that the external key store proxy and its associated external key manager are reachable and enabled.

For help repairing your CloudHSM key store, see the Troubleshooting CloudHSM key stores. For help repairing your external key store, see the Troubleshooting external key stores. Both topics are in the Key Management Service Developer Guide.

Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

Required permissions: kms:DescribeCustomKeyStores (IAM policy)

Related operations:

", - "DescribeKey": "

Provides detailed information about a KMS key. You can run DescribeKey on a customer managed key or an Amazon Web Services managed key.

This detailed information includes the key ARN, creation date (and deletion date, if applicable), the key state, and the origin and expiration date (if any) of the key material. It includes fields, like KeySpec, that help you distinguish different types of KMS keys. It also displays the key usage (encryption, signing, or generating and verifying MACs) and the algorithms that the KMS key supports. For multi-Region keys, it displays the primary key and all related replica keys. For KMS keys in CloudHSM key stores, it includes information about the custom key store, such as the key store ID and the CloudHSM cluster ID. For KMS key in external key stores, it includes the custom key store ID and the ID and status of the associated external key.

DescribeKey does not return the following information:

In general, DescribeKey is a non-mutating operation. It returns data about KMS keys, but doesn't change them. However, Amazon Web Services services use DescribeKey to create Amazon Web Services managed keys from a predefined Amazon Web Services alias with no key ID.

Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN in the value of the KeyId parameter.

Required permissions: kms:DescribeKey (key policy)

Related operations:

", + "DescribeKey": "

Provides detailed information about a KMS key. You can run DescribeKey on a customer managed key or an Amazon Web Services managed key.

This detailed information includes the key ARN, creation date (and deletion date, if applicable), the key state, and the origin and expiration date (if any) of the key material. It includes fields, like KeySpec, that help you distinguish different types of KMS keys. It also displays the key usage (encryption, signing, or generating and verifying MACs) and the algorithms that the KMS key supports.

For multi-Region keys, DescribeKey displays the primary key and all related replica keys. For KMS keys in CloudHSM key stores, it includes information about the key store, such as the key store ID and the CloudHSM cluster ID. For KMS keys in external key stores, it includes the custom key store ID and the ID of the external key.

DescribeKey does not return the following information:

In general, DescribeKey is a non-mutating operation. It returns data about KMS keys, but doesn't change them. However, Amazon Web Services services use DescribeKey to create Amazon Web Services managed keys from a predefined Amazon Web Services alias with no key ID.

Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN in the value of the KeyId parameter.

Required permissions: kms:DescribeKey (key policy)

Related operations:

", "DisableKey": "

Sets the state of a KMS key to disabled. This change temporarily prevents use of the KMS key for cryptographic operations.

For more information about how key state affects the use of a KMS key, see Key states of KMS keys in the Key Management Service Developer Guide .

The KMS key that you use for this operation must be in a compatible key state. For details, see Key states of KMS keys in the Key Management Service Developer Guide.

Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

Required permissions: kms:DisableKey (key policy)

Related operations: EnableKey

", "DisableKeyRotation": "

Disables automatic rotation of the key material of the specified symmetric encryption KMS key.

Automatic key rotation is supported only on symmetric encryption KMS keys. You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

You can enable (EnableKeyRotation) and disable automatic rotation of the key material in customer managed KMS keys. Key material rotation of Amazon Web Services managed KMS keys is not configurable. KMS always rotates the key material for every year. Rotation of Amazon Web Services owned KMS keys varies.

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three years to every year. For details, see EnableKeyRotation.

The KMS key that you use for this operation must be in a compatible key state. For details, see Key states of KMS keys in the Key Management Service Developer Guide.

Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

Required permissions: kms:DisableKeyRotation (key policy)

Related operations:

", "DisconnectCustomKeyStore": "

Disconnects the custom key store from its backing key store. This operation disconnects an CloudHSM key store from its associated CloudHSM cluster or disconnects an external key store from the external key store proxy that communicates with your external key manager.

This operation is part of the custom key stores feature in KMS, which combines the convenience and extensive integration of KMS with the isolation and control of a key store that you own and manage.

While a custom key store is disconnected, you can manage the custom key store and its KMS keys, but you cannot create or use its KMS keys. You can reconnect the custom key store at any time.

While a custom key store is disconnected, all attempts to create KMS keys in the custom key store or to use existing KMS keys in cryptographic operations will fail. This action can prevent users from storing and accessing sensitive data.

When you disconnect a custom key store, its ConnectionState changes to Disconnected. To find the connection state of a custom key store, use the DescribeCustomKeyStores operation. To reconnect a custom key store, use the ConnectCustomKeyStore operation.

If the operation succeeds, it returns a JSON object with no properties.

Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

Required permissions: kms:DisconnectCustomKeyStore (IAM policy)

Related operations:

", @@ -1314,7 +1314,7 @@ "TrustAnchorCertificateType": { "base": null, "refs": { - "CreateCustomKeyStoreRequest$TrustAnchorCertificate": "

* CreateCustom

Specifies the certificate for an CloudHSM key store. This parameter is required for custom key stores with a CustomKeyStoreType of AWS_CLOUDHSM.

Enter the content of the trust anchor certificate for the CloudHSM cluster. This is the content of the customerCA.crt file that you created when you initialized the cluster.

", + "CreateCustomKeyStoreRequest$TrustAnchorCertificate": "

Specifies the certificate for an CloudHSM key store. This parameter is required for custom key stores with a CustomKeyStoreType of AWS_CLOUDHSM.

Enter the content of the trust anchor certificate for the CloudHSM cluster. This is the content of the customerCA.crt file that you created when you initialized the cluster.

", "CustomKeyStoresListEntry$TrustAnchorCertificate": "

The trust anchor certificate of the CloudHSM cluster associated with an CloudHSM key store. When you initialize the cluster, you create this certificate and save it in the customerCA.crt file.

This field appears only when the CustomKeyStoreType is AWS_CLOUDHSM.

" } }, @@ -1385,7 +1385,7 @@ } }, "XksKeyConfigurationType": { - "base": "

Information about the external key that is associated with a KMS key in an external key store.

These fields appear in a CreateKey or DescribeKey response only for a KMS key in an external key store.

The external key is a symmetric encryption key that is hosted by an external key manager outside of Amazon Web Services. When you use the KMS key in an external key store in a cryptographic operation, the cryptographic operation is performed in the external key manager using the specified external key. For more information, see External key in the Key Management Service Developer Guide.

", + "base": "

Information about the external key that is associated with a KMS key in an external key store.

This element appears in a CreateKey or DescribeKey response only for a KMS key in an external key store.

The external key is a symmetric encryption key that is hosted by an external key manager outside of Amazon Web Services. When you use the KMS key in an external key store in a cryptographic operation, the cryptographic operation is performed in the external key manager using the specified external key. For more information, see External key in the Key Management Service Developer Guide.

", "refs": { "KeyMetadata$XksKeyConfiguration": "

Information about the external key that is associated with a KMS key in an external key store.

For more information, see External key in the Key Management Service Developer Guide.

" } diff --git a/models/apis/kms/2014-11-01/endpoint-rule-set-1.json b/models/apis/kms/2014-11-01/endpoint-rule-set-1.json index 4586854bd9..7e3838f633 100644 --- a/models/apis/kms/2014-11-01/endpoint-rule-set-1.json +++ b/models/apis/kms/2014-11-01/endpoint-rule-set-1.json @@ -52,15 +52,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", diff --git a/models/apis/kms/2014-11-01/endpoint-tests-1.json b/models/apis/kms/2014-11-01/endpoint-tests-1.json index 26c6afdc81..f45c01f0c1 100644 --- a/models/apis/kms/2014-11-01/endpoint-tests-1.json +++ b/models/apis/kms/2014-11-01/endpoint-tests-1.json @@ -8,8 +8,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -21,8 +21,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -34,8 +34,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-2" } }, @@ -47,8 +47,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-2" } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-south-1" } }, @@ -99,8 +99,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-south-1" } }, @@ -112,8 +112,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -125,8 +125,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -138,8 +138,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-1" } }, @@ -151,8 +151,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-1" } }, @@ -164,8 +164,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -177,8 +177,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -190,8 +190,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-south-2" } }, @@ -203,8 +203,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-south-2" } }, @@ -216,8 +216,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -229,8 +229,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -242,8 +242,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-east-1" } }, @@ -255,8 +255,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-east-1" } }, @@ -268,8 +268,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -281,8 +281,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -294,8 +294,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-central-1" } }, @@ -307,8 +307,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-central-1" } }, @@ -320,8 +320,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -333,8 +333,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -346,8 +346,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ca-central-1" } }, @@ -359,8 +359,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ca-central-1" } }, @@ -372,8 +372,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -385,8 +385,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -398,8 +398,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-1" } }, @@ -411,8 +411,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-1" } }, @@ -422,8 +422,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-iso-west-1" } }, @@ -435,8 +435,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-iso-west-1" } }, @@ -446,8 +446,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-iso-west-1" } }, @@ -459,8 +459,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-iso-west-1" } }, @@ -472,8 +472,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -485,8 +485,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -498,8 +498,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-central-2" } }, @@ -511,8 +511,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-central-2" } }, @@ -524,8 +524,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -537,8 +537,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -550,8 +550,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-1" } }, @@ -563,8 +563,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-1" } }, @@ -576,8 +576,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -589,8 +589,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -602,8 +602,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-west-2" } }, @@ -615,8 +615,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-west-2" } }, @@ -628,8 +628,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -641,8 +641,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -654,8 +654,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "af-south-1" } }, @@ -667,8 +667,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "af-south-1" } }, @@ -680,8 +680,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -693,8 +693,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -706,8 +706,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-north-1" } }, @@ -719,8 +719,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-north-1" } }, @@ -732,8 +732,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -745,8 +745,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -758,8 +758,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-3" } }, @@ -771,8 +771,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-3" } }, @@ -784,8 +784,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -797,8 +797,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -810,8 +810,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-2" } }, @@ -823,8 +823,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-2" } }, @@ -836,8 +836,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -849,8 +849,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -862,8 +862,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "eu-west-1" } }, @@ -875,8 +875,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "eu-west-1" } }, @@ -888,8 +888,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -901,8 +901,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -914,8 +914,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-3" } }, @@ -927,8 +927,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-3" } }, @@ -940,8 +940,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -953,8 +953,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -966,8 +966,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-2" } }, @@ -979,8 +979,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-2" } }, @@ -992,8 +992,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -1005,8 +1005,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -1018,8 +1018,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-northeast-1" } }, @@ -1031,8 +1031,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-northeast-1" } }, @@ -1044,8 +1044,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1057,8 +1057,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1070,8 +1070,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "me-south-1" } }, @@ -1083,8 +1083,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "me-south-1" } }, @@ -1096,8 +1096,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1109,8 +1109,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1122,8 +1122,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "sa-east-1" } }, @@ -1135,8 +1135,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "sa-east-1" } }, @@ -1148,8 +1148,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1161,8 +1161,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1174,8 +1174,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-east-1" } }, @@ -1187,8 +1187,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-east-1" } }, @@ -1200,8 +1200,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1213,8 +1213,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1226,8 +1226,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-north-1" } }, @@ -1239,8 +1239,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-north-1" } }, @@ -1252,8 +1252,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1265,8 +1265,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1278,8 +1278,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-gov-west-1" } }, @@ -1291,8 +1291,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-gov-west-1" } }, @@ -1304,8 +1304,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1317,8 +1317,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1330,8 +1330,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-1" } }, @@ -1343,8 +1343,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-1" } }, @@ -1356,8 +1356,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1369,8 +1369,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1382,8 +1382,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-2" } }, @@ -1395,8 +1395,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-2" } }, @@ -1406,8 +1406,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1419,8 +1419,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1430,8 +1430,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-iso-east-1" } }, @@ -1443,8 +1443,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-iso-east-1" } }, @@ -1456,8 +1456,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1469,8 +1469,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1482,8 +1482,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-3" } }, @@ -1495,8 +1495,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-3" } }, @@ -1508,8 +1508,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1521,8 +1521,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1534,8 +1534,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "ap-southeast-4" } }, @@ -1547,8 +1547,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "ap-southeast-4" } }, @@ -1560,8 +1560,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1573,8 +1573,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1586,8 +1586,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1" } }, @@ -1599,8 +1599,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1" } }, @@ -1612,8 +1612,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1625,8 +1625,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1638,8 +1638,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-2" } }, @@ -1651,8 +1651,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-2" } }, @@ -1664,8 +1664,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1677,8 +1677,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1690,8 +1690,8 @@ } }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "cn-northwest-1" } }, @@ -1703,8 +1703,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "cn-northwest-1" } }, @@ -1714,8 +1714,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "UseFIPS": true, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1727,8 +1727,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1738,8 +1738,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-isob-east-1" } }, @@ -1751,8 +1751,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-isob-east-1" } }, @@ -1764,8 +1764,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1776,8 +1776,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Region": "us-east-1", "Endpoint": "https://example.com" } @@ -1788,8 +1788,8 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Region": "us-east-1", "Endpoint": "https://example.com" } diff --git a/models/apis/kms/2014-11-01/examples-1.json b/models/apis/kms/2014-11-01/examples-1.json index 23bc7f9496..21b01579b5 100644 --- a/models/apis/kms/2014-11-01/examples-1.json +++ b/models/apis/kms/2014-11-01/examples-1.json @@ -90,7 +90,7 @@ "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyAuthenticationCredential": { "AccessKeyId": "ABCDE12345670EXAMPLE", - "RawSecretAccessKey": "file://SecretAccessKey" + "RawSecretAccessKey": "DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo=" }, "XksProxyConnectivity": "VPC_ENDPOINT_SERVICE", "XksProxyUriEndpoint": "https://myproxy-private.xks.example.com", @@ -124,7 +124,7 @@ "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyAuthenticationCredential": { "AccessKeyId": "ABCDE12345670EXAMPLE", - "RawSecretAccessKey": "file://SecretAccessKey" + "RawSecretAccessKey": "DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo=" }, "XksProxyConnectivity": "PUBLIC_ENDPOINT", "XksProxyUriEndpoint": "https://myproxy.xks.example.com", @@ -1866,40 +1866,40 @@ { "input": { "CustomKeyStoreId": "cks-1234567890abcdef0", - "KeyStorePassword": "ExamplePassword" + "NewCustomKeyStoreName": "DevelopmentKeys" }, "output": { }, "comments": { "input": { "CustomKeyStoreId": "The ID of the custom key store that you are updating.", - "KeyStorePassword": "The password for the kmsuser crypto user in the CloudHSM cluster." + "NewCustomKeyStoreName": "A new friendly name for the custom key store." }, "output": { } }, - "description": "This example tells AWS KMS the password for the kmsuser crypto user in the AWS CloudHSM cluster that is associated with the AWS KMS custom key store. (It does not change the password in the CloudHSM cluster.) This operation does not return any data.", - "id": "to-edit-the-properties-of-a-custom-key-store-1", - "title": "To edit the password of an AWS CloudHSM key store" + "description": "This example changes the friendly name of the AWS KMS custom key store to the name that you specify. This operation does not return any data. To verify that the operation worked, use the DescribeCustomKeyStores operation.", + "id": "to-edit-the-friendly-name-of-a-custom-key-store-1", + "title": "To edit the friendly name of a custom key store" }, { "input": { "CustomKeyStoreId": "cks-1234567890abcdef0", - "NewCustomKeyStoreName": "DevelopmentKeys" + "KeyStorePassword": "ExamplePassword" }, "output": { }, "comments": { "input": { "CustomKeyStoreId": "The ID of the custom key store that you are updating.", - "NewCustomKeyStoreName": "A new friendly name for the custom key store." + "KeyStorePassword": "The password for the kmsuser crypto user in the CloudHSM cluster." }, "output": { } }, - "description": "This example changes the friendly name of the AWS KMS custom key store to the name that you specify. This operation does not return any data. To verify that the operation worked, use the DescribeCustomKeyStores operation.", - "id": "to-edit-the-friendly-name-of-a-custom-key-store-2", - "title": "To edit the friendly name of a custom key store" + "description": "This example tells AWS KMS the password for the kmsuser crypto user in the AWS CloudHSM cluster that is associated with the AWS KMS custom key store. (It does not change the password in the CloudHSM cluster.) This operation does not return any data.", + "id": "to-edit-the-properties-of-an-aws-cloudhsm-key-store-2", + "title": "To edit the password of an AWS CloudHSM key store" }, { "input": { @@ -1920,6 +1920,28 @@ "id": "to-associate-the-custom-key-store-with-a-different-but-related-aws-cloudhsm-cluster-3", "title": "To associate the custom key store with a different, but related, AWS CloudHSM cluster." }, + { + "input": { + "CustomKeyStoreId": "cks-1234567890abcdef0", + "XksProxyAuthenticationCredential": { + "AccessKeyId": "ABCDE12345670EXAMPLE", + "RawSecretAccessKey": "DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo=" + } + }, + "output": { + }, + "comments": { + "input": { + "CustomKeyStoreId": "Identifies the custom key store", + "XksProxyAuthenticationCredential": "Specifies the values in the proxy authentication credential" + }, + "output": { + } + }, + "description": "To update the proxy authentication credential for your external key store, specify both the RawSecretAccessKey and the AccessKeyId, even if you are changing only one of the values. You can use this feature to fix an invalid credential or to change the credential when the external key store proxy rotates it.", + "id": "to-update-the-proxy-authentication-credential-of-an-external-key-store-4", + "title": "To update the proxy authentication credential of an external key store" + }, { "input": { "CustomKeyStoreId": "cks-1234567890abcdef0", @@ -1936,7 +1958,7 @@ } }, "description": "This example updates the proxy URI path for an external key store", - "id": "to-update-the-xks-proxy-api-path-of-an-external-custom-key-store-4", + "id": "to-update-the-xks-proxy-api-path-of-an-external-key-store-5", "title": "To edit the proxy URI path of an external key store." }, { @@ -1959,7 +1981,7 @@ } }, "description": "To change the external key store proxy connectivity option from public endpoint connectivity to VPC endpoint service connectivity, in addition to changing the XksProxyConnectivity value, you must change the XksProxyUriEndpoint value to reflect the private DNS name associated with the VPC endpoint service. You must also add an XksProxyVpcEndpointServiceName value.", - "id": "to-update-the-proxy-connectivity-of-an-external-key-store-to-vpc_endpoint_service-5", + "id": "to-update-the-proxy-connectivity-of-an-external-key-store-to-vpc_endpoint_service-6", "title": "To update the proxy connectivity of an external key store to VPC_ENDPOINT_SERVICE" } ], diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 499c780f20..1b42d09a69 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -3145,6 +3145,7 @@ "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, diff --git a/service/cloudfront/api.go b/service/cloudfront/api.go index 470fb7f412..d25b5d389c 100644 --- a/service/cloudfront/api.go +++ b/service/cloudfront/api.go @@ -733,6 +733,13 @@ func (c *CloudFront) CreateContinuousDeploymentPolicyRequest(input *CreateContin // - ErrCodeInconsistentQuantities "InconsistentQuantities" // The value of Quantity and the size of Items don't match. // +// - ErrCodeContinuousDeploymentPolicyAlreadyExists "ContinuousDeploymentPolicyAlreadyExists" +// A continuous deployment policy with this configuration already exists. +// +// - ErrCodeTooManyContinuousDeploymentPolicies "TooManyContinuousDeploymentPolicies" +// You have reached the maximum number of continuous deployment policies for +// this Amazon Web Services account. +// // - ErrCodeStagingDistributionInUse "StagingDistributionInUse" // A continuous deployment policy for this staging distribution already exists. // @@ -1041,6 +1048,13 @@ func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) ( // The specified real-time log configuration belongs to a different Amazon Web // Services account. // +// - ErrCodeContinuousDeploymentPolicyInUse "ContinuousDeploymentPolicyInUse" +// You cannot delete a continuous deployment policy that is associated with +// a primary distribution. +// +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // - ErrCodeInvalidDomainNameForOriginAccessControl "InvalidDomainNameForOriginAccessControl" // An origin access control is associated with an origin whose domain name is // not supported. @@ -1342,6 +1356,13 @@ func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistribution // The specified real-time log configuration belongs to a different Amazon Web // Services account. // +// - ErrCodeContinuousDeploymentPolicyInUse "ContinuousDeploymentPolicyInUse" +// You cannot delete a continuous deployment policy that is associated with +// a primary distribution. +// +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // - ErrCodeInvalidDomainNameForOriginAccessControl "InvalidDomainNameForOriginAccessControl" // An origin access control is associated with an origin whose domain name is // not supported. @@ -3029,6 +3050,13 @@ func (c *CloudFront) DeleteContinuousDeploymentPolicyRequest(input *DeleteContin // - ErrCodePreconditionFailed "PreconditionFailed" // The precondition in one or more of the request fields evaluated to false. // +// - ErrCodeContinuousDeploymentPolicyInUse "ContinuousDeploymentPolicyInUse" +// You cannot delete a continuous deployment policy that is associated with +// a primary distribution. +// +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteContinuousDeploymentPolicy func (c *CloudFront) DeleteContinuousDeploymentPolicy(input *DeleteContinuousDeploymentPolicyInput) (*DeleteContinuousDeploymentPolicyOutput, error) { req, out := c.DeleteContinuousDeploymentPolicyRequest(input) @@ -4722,9 +4750,13 @@ func (c *CloudFront) GetContinuousDeploymentPolicyRequest(input *GetContinuousDe // API operation GetContinuousDeploymentPolicy for usage and error information. // // Returned Error Codes: +// // - ErrCodeAccessDenied "AccessDenied" // Access denied. // +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetContinuousDeploymentPolicy func (c *CloudFront) GetContinuousDeploymentPolicy(input *GetContinuousDeploymentPolicyInput) (*GetContinuousDeploymentPolicyOutput, error) { req, out := c.GetContinuousDeploymentPolicyRequest(input) @@ -4800,9 +4832,13 @@ func (c *CloudFront) GetContinuousDeploymentPolicyConfigRequest(input *GetContin // API operation GetContinuousDeploymentPolicyConfig for usage and error information. // // Returned Error Codes: +// // - ErrCodeAccessDenied "AccessDenied" // Access denied. // +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetContinuousDeploymentPolicyConfig func (c *CloudFront) GetContinuousDeploymentPolicyConfig(input *GetContinuousDeploymentPolicyConfigInput) (*GetContinuousDeploymentPolicyConfigOutput, error) { req, out := c.GetContinuousDeploymentPolicyConfigRequest(input) @@ -7091,6 +7127,9 @@ func (c *CloudFront) ListContinuousDeploymentPoliciesRequest(input *ListContinuo // - ErrCodeAccessDenied "AccessDenied" // Access denied. // +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListContinuousDeploymentPolicies func (c *CloudFront) ListContinuousDeploymentPolicies(input *ListContinuousDeploymentPoliciesInput) (*ListContinuousDeploymentPoliciesOutput, error) { req, out := c.ListContinuousDeploymentPoliciesRequest(input) @@ -9629,6 +9668,9 @@ func (c *CloudFront) UpdateContinuousDeploymentPolicyRequest(input *UpdateContin // - ErrCodeStagingDistributionInUse "StagingDistributionInUse" // A continuous deployment policy for this staging distribution already exists. // +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateContinuousDeploymentPolicy func (c *CloudFront) UpdateContinuousDeploymentPolicy(input *UpdateContinuousDeploymentPolicyInput) (*UpdateContinuousDeploymentPolicyOutput, error) { req, out := c.UpdateContinuousDeploymentPolicyRequest(input) @@ -9942,6 +9984,13 @@ func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) ( // The specified real-time log configuration belongs to a different Amazon Web // Services account. // +// - ErrCodeContinuousDeploymentPolicyInUse "ContinuousDeploymentPolicyInUse" +// You cannot delete a continuous deployment policy that is associated with +// a primary distribution. +// +// - ErrCodeNoSuchContinuousDeploymentPolicy "NoSuchContinuousDeploymentPolicy" +// The continuous deployment policy doesn’t exist. +// // - ErrCodeStagingDistributionInUse "StagingDistributionInUse" // A continuous deployment policy for this staging distribution already exists. // @@ -9975,6 +10024,307 @@ func (c *CloudFront) UpdateDistributionWithContext(ctx aws.Context, input *Updat return out, req.Send() } +const opUpdateDistributionWithStagingConfig = "UpdateDistributionWithStagingConfig2020_05_31" + +// UpdateDistributionWithStagingConfigRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDistributionWithStagingConfig operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateDistributionWithStagingConfig for more information on using the UpdateDistributionWithStagingConfig +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateDistributionWithStagingConfigRequest method. +// req, resp := client.UpdateDistributionWithStagingConfigRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateDistributionWithStagingConfig +func (c *CloudFront) UpdateDistributionWithStagingConfigRequest(input *UpdateDistributionWithStagingConfigInput) (req *request.Request, output *UpdateDistributionWithStagingConfigOutput) { + op := &request.Operation{ + Name: opUpdateDistributionWithStagingConfig, + HTTPMethod: "PUT", + HTTPPath: "/2020-05-31/distribution/{Id}/promote-staging-config", + } + + if input == nil { + input = &UpdateDistributionWithStagingConfigInput{} + } + + output = &UpdateDistributionWithStagingConfigOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDistributionWithStagingConfig API operation for Amazon CloudFront. +// +// Copies the staging distribution's configuration to its corresponding primary +// distribution. The primary distribution retains its Aliases (also known as +// alternate domain names or CNAMEs) and ContinuousDeploymentPolicyId value, +// but otherwise its configuration is overwritten to match the staging distribution. +// +// You can use this operation in a continuous deployment workflow after you +// have tested configuration changes on the staging distribution. After using +// a continuous deployment policy to move a portion of your domain name’s +// traffic to the staging distribution and verifying that it works as intended, +// you can use this operation to copy the staging distribution’s configuration +// to the primary distribution. This action will disable the continuous deployment +// policy and move your domain’s traffic back to the primary distribution. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation UpdateDistributionWithStagingConfig for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists" +// The CNAME specified is already defined for CloudFront. +// +// - ErrCodeIllegalUpdate "IllegalUpdate" +// The update contains modifications that are not allowed. +// +// - ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion" +// The If-Match version is missing or not valid. +// +// - ErrCodeMissingBody "MissingBody" +// This operation requires a body. Ensure that the body is present and the Content-Type +// header is set. +// +// - ErrCodeNoSuchDistribution "NoSuchDistribution" +// The specified distribution does not exist. +// +// - ErrCodePreconditionFailed "PreconditionFailed" +// The precondition in one or more of the request fields evaluated to false. +// +// - ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs" +// Your request contains more CNAMEs than are allowed per distribution. +// +// - ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject" +// The default root object file name is too big or contains an invalid character. +// +// - ErrCodeInvalidRelativePath "InvalidRelativePath" +// The relative path is too big, is not URL-encoded, or does not begin with +// a slash (/). +// +// - ErrCodeInvalidErrorCode "InvalidErrorCode" +// An invalid error code was specified. +// +// - ErrCodeInvalidResponseCode "InvalidResponseCode" +// A response code is not valid. +// +// - ErrCodeInvalidArgument "InvalidArgument" +// An argument is invalid. +// +// - ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity" +// The origin access identity is not valid or doesn't exist. +// +// - ErrCodeInvalidOriginAccessControl "InvalidOriginAccessControl" +// The origin access control is not valid. +// +// - ErrCodeTooManyTrustedSigners "TooManyTrustedSigners" +// Your request contains more trusted signers than are allowed per distribution. +// +// - ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist" +// One or more of your trusted signers don't exist. +// +// - ErrCodeInvalidViewerCertificate "InvalidViewerCertificate" +// A viewer certificate specified is not valid. +// +// - ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion" +// The minimum protocol version specified is not valid. +// +// - ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol" +// This operation requires the HTTPS protocol. Ensure that you specify the HTTPS +// protocol in your request, or omit the RequiredProtocols element from your +// distribution configuration. +// +// - ErrCodeNoSuchOrigin "NoSuchOrigin" +// No origin exists with the specified Origin Id. +// +// - ErrCodeTooManyOrigins "TooManyOrigins" +// You cannot create more origins for the distribution. +// +// - ErrCodeTooManyOriginGroupsPerDistribution "TooManyOriginGroupsPerDistribution" +// Processing your request would cause you to exceed the maximum number of origin +// groups allowed. +// +// - ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors" +// You cannot create more cache behaviors for the distribution. +// +// - ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList" +// Your request contains more cookie names in the whitelist than are allowed +// per cache behavior. +// +// - ErrCodeInvalidForwardCookies "InvalidForwardCookies" +// Your request contains forward cookies option which doesn't match with the +// expectation for the whitelisted list of cookie names. Either list of cookie +// names has been specified when not allowed or list of cookie names is missing +// when expected. +// +// - ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues" +// Your request contains too many headers in forwarded values. +// +// - ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin" +// The headers specified are not valid for an Amazon S3 origin. +// +// - ErrCodeInconsistentQuantities "InconsistentQuantities" +// The value of Quantity and the size of Items don't match. +// +// - ErrCodeTooManyCertificates "TooManyCertificates" +// You cannot create anymore custom SSL/TLS certificates. +// +// - ErrCodeInvalidLocationCode "InvalidLocationCode" +// The location code specified is not valid. +// +// - ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter" +// The specified geo restriction parameter is not valid. +// +// - ErrCodeInvalidTTLOrder "InvalidTTLOrder" +// The TTL order specified is not valid. +// +// - ErrCodeInvalidWebACLId "InvalidWebACLId" +// A web ACL ID specified is not valid. To specify a web ACL created using the +// latest version of WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. +// To specify a web ACL created using WAF Classic, use the ACL ID, for example +// 473e64fd-f30b-4765-81a0-62ad96dd167a. +// +// - ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders" +// Your request contains too many origin custom headers. +// +// - ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters" +// Your request contains too many query string parameters. +// +// - ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters" +// The query string parameters specified are not valid. +// +// - ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations" +// Processing your request would cause the maximum number of distributions with +// Lambda@Edge function associations per owner to be exceeded. +// +// - ErrCodeTooManyDistributionsWithSingleFunctionARN "TooManyDistributionsWithSingleFunctionARN" +// The maximum number of distributions have been associated with the specified +// Lambda@Edge function. +// +// - ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations" +// Your request contains more Lambda@Edge function associations than are allowed +// per distribution. +// +// - ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation" +// The specified Lambda@Edge function association is invalid. +// +// - ErrCodeTooManyDistributionsWithFunctionAssociations "TooManyDistributionsWithFunctionAssociations" +// You have reached the maximum number of distributions that are associated +// with a CloudFront function. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeTooManyFunctionAssociations "TooManyFunctionAssociations" +// You have reached the maximum number of CloudFront function associations for +// this distribution. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeInvalidFunctionAssociation "InvalidFunctionAssociation" +// A CloudFront function association is invalid. +// +// - ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout" +// The read timeout specified for the origin is not valid. +// +// - ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout" +// The keep alive timeout specified for the origin is not valid. +// +// - ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig" +// The specified configuration for field-level encryption doesn't exist. +// +// - ErrCodeIllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior" +// The specified configuration for field-level encryption can't be associated +// with the specified cache behavior. +// +// - ErrCodeTooManyDistributionsAssociatedToFieldLevelEncryptionConfig "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig" +// The maximum number of distributions have been associated with the specified +// configuration for field-level encryption. +// +// - ErrCodeNoSuchCachePolicy "NoSuchCachePolicy" +// The cache policy does not exist. +// +// - ErrCodeTooManyDistributionsAssociatedToCachePolicy "TooManyDistributionsAssociatedToCachePolicy" +// The maximum number of distributions have been associated with the specified +// cache policy. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeNoSuchResponseHeadersPolicy "NoSuchResponseHeadersPolicy" +// The response headers policy does not exist. +// +// - ErrCodeTooManyDistributionsAssociatedToResponseHeadersPolicy "TooManyDistributionsAssociatedToResponseHeadersPolicy" +// The maximum number of distributions have been associated with the specified +// response headers policy. +// +// For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeNoSuchOriginRequestPolicy "NoSuchOriginRequestPolicy" +// The origin request policy does not exist. +// +// - ErrCodeTooManyDistributionsAssociatedToOriginRequestPolicy "TooManyDistributionsAssociatedToOriginRequestPolicy" +// The maximum number of distributions have been associated with the specified +// origin request policy. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeTooManyDistributionsAssociatedToKeyGroup "TooManyDistributionsAssociatedToKeyGroup" +// The number of distributions that reference this key group is more than the +// maximum allowed. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeTooManyKeyGroupsAssociatedToDistribution "TooManyKeyGroupsAssociatedToDistribution" +// The number of key groups referenced by this distribution is more than the +// maximum allowed. For more information, see Quotas (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) +// (formerly known as limits) in the Amazon CloudFront Developer Guide. +// +// - ErrCodeTrustedKeyGroupDoesNotExist "TrustedKeyGroupDoesNotExist" +// The specified key group does not exist. +// +// - ErrCodeNoSuchRealtimeLogConfig "NoSuchRealtimeLogConfig" +// The real-time log configuration does not exist. +// +// - ErrCodeRealtimeLogConfigOwnerMismatch "RealtimeLogConfigOwnerMismatch" +// The specified real-time log configuration belongs to a different Amazon Web +// Services account. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateDistributionWithStagingConfig +func (c *CloudFront) UpdateDistributionWithStagingConfig(input *UpdateDistributionWithStagingConfigInput) (*UpdateDistributionWithStagingConfigOutput, error) { + req, out := c.UpdateDistributionWithStagingConfigRequest(input) + return out, req.Send() +} + +// UpdateDistributionWithStagingConfigWithContext is the same as UpdateDistributionWithStagingConfig with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDistributionWithStagingConfig for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *CloudFront) UpdateDistributionWithStagingConfigWithContext(ctx aws.Context, input *UpdateDistributionWithStagingConfigInput, opts ...request.Option) (*UpdateDistributionWithStagingConfigOutput, error) { + req, out := c.UpdateDistributionWithStagingConfigRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateFieldLevelEncryptionConfig = "UpdateFieldLevelEncryptionConfig2020_05_31" // UpdateFieldLevelEncryptionConfigRequest generates a "aws/request.Request" representing the @@ -13290,8 +13640,7 @@ func (s *ContinuousDeploymentSingleHeaderConfig) SetValue(v string) *ContinuousD return s } -// Contains the percentage of traffic to send to a staging distribution, expressed -// as a decimal number between 0 and 1. +// Contains the percentage of traffic to send to a staging distribution. type ContinuousDeploymentSingleWeightConfig struct { _ struct{} `type:"structure"` @@ -13302,8 +13651,8 @@ type ContinuousDeploymentSingleWeightConfig struct { // using TTL values. SessionStickinessConfig *SessionStickinessConfig `type:"structure"` - // The percentage of traffic to send to the staging distribution, expressed - // as a decimal number between 0 and 1. + // The percentage of traffic to send to a staging distribution, expressed as + // a decimal number between 0 and .15. // // Weight is a required field Weight *float64 `type:"float" required:"true"` @@ -17892,6 +18241,10 @@ type DistributionConfig struct { // Comment is a required field Comment *string `type:"string" required:"true" sensitive:"true"` + // The identifier of a continuous deployment policy. For more information, see + // CreateContinuousDeploymentPolicy. + ContinuousDeploymentPolicyId *string `type:"string"` + // A complex type that controls the following: // // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range @@ -18024,6 +18377,11 @@ type DistributionConfig struct { // of your content. Restrictions *Restrictions `type:"structure"` + // A Boolean that indicates whether this is a staging distribution. When this + // value is true, this is a staging distribution. When this value is false, + // this is not a staging distribution. + Staging *bool `type:"boolean"` + // A complex type that determines the distribution’s SSL/TLS configuration // for communicating with viewers. ViewerCertificate *ViewerCertificate `type:"structure"` @@ -18152,6 +18510,12 @@ func (s *DistributionConfig) SetComment(v string) *DistributionConfig { return s } +// SetContinuousDeploymentPolicyId sets the ContinuousDeploymentPolicyId field's value. +func (s *DistributionConfig) SetContinuousDeploymentPolicyId(v string) *DistributionConfig { + s.ContinuousDeploymentPolicyId = &v + return s +} + // SetCustomErrorResponses sets the CustomErrorResponses field's value. func (s *DistributionConfig) SetCustomErrorResponses(v *CustomErrorResponses) *DistributionConfig { s.CustomErrorResponses = v @@ -18218,6 +18582,12 @@ func (s *DistributionConfig) SetRestrictions(v *Restrictions) *DistributionConfi return s } +// SetStaging sets the Staging field's value. +func (s *DistributionConfig) SetStaging(v bool) *DistributionConfig { + s.Staging = &v + return s +} + // SetViewerCertificate sets the ViewerCertificate field's value. func (s *DistributionConfig) SetViewerCertificate(v *ViewerCertificate) *DistributionConfig { s.ViewerCertificate = v @@ -18584,6 +18954,11 @@ type DistributionSummary struct { // Restrictions is a required field Restrictions *Restrictions `type:"structure" required:"true"` + // Whether the primary distribution has a staging distribution enabled. + // + // Staging is a required field + Staging *bool `type:"boolean" required:"true"` + // The current status of the distribution. When the status is Deployed, the // distribution's information is propagated to all CloudFront edge locations. // @@ -18722,6 +19097,12 @@ func (s *DistributionSummary) SetRestrictions(v *Restrictions) *DistributionSumm return s } +// SetStaging sets the Staging field's value. +func (s *DistributionSummary) SetStaging(v bool) *DistributionSummary { + s.Staging = &v + return s +} + // SetStatus sets the Status field's value. func (s *DistributionSummary) SetStatus(v string) *DistributionSummary { s.Status = &v @@ -33081,6 +33462,119 @@ func (s *UpdateDistributionOutput) SetETag(v string) *UpdateDistributionOutput { return s } +type UpdateDistributionWithStagingConfigInput struct { + _ struct{} `locationName:"UpdateDistributionWithStagingConfigRequest" type:"structure"` + + // The identifier of the primary distribution to which you are copying a staging + // distribution's configuration. + // + // Id is a required field + Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` + + // The current versions (ETag values) of both primary and staging distributions. + // Provide these in the following format: + // + // , + IfMatch *string `location:"header" locationName:"If-Match" type:"string"` + + // The identifier of the staging distribution whose configuration you are copying + // to the primary distribution. + StagingDistributionId *string `location:"querystring" locationName:"StagingDistributionId" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDistributionWithStagingConfigInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDistributionWithStagingConfigInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDistributionWithStagingConfigInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDistributionWithStagingConfigInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *UpdateDistributionWithStagingConfigInput) SetId(v string) *UpdateDistributionWithStagingConfigInput { + s.Id = &v + return s +} + +// SetIfMatch sets the IfMatch field's value. +func (s *UpdateDistributionWithStagingConfigInput) SetIfMatch(v string) *UpdateDistributionWithStagingConfigInput { + s.IfMatch = &v + return s +} + +// SetStagingDistributionId sets the StagingDistributionId field's value. +func (s *UpdateDistributionWithStagingConfigInput) SetStagingDistributionId(v string) *UpdateDistributionWithStagingConfigInput { + s.StagingDistributionId = &v + return s +} + +type UpdateDistributionWithStagingConfigOutput struct { + _ struct{} `type:"structure" payload:"Distribution"` + + // A distribution tells CloudFront where you want content to be delivered from, + // and the details about how to track and manage content delivery. + Distribution *Distribution `type:"structure"` + + // The current version of the primary distribution (after it’s updated). + ETag *string `location:"header" locationName:"ETag" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDistributionWithStagingConfigOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDistributionWithStagingConfigOutput) GoString() string { + return s.String() +} + +// SetDistribution sets the Distribution field's value. +func (s *UpdateDistributionWithStagingConfigOutput) SetDistribution(v *Distribution) *UpdateDistributionWithStagingConfigOutput { + s.Distribution = v + return s +} + +// SetETag sets the ETag field's value. +func (s *UpdateDistributionWithStagingConfigOutput) SetETag(v string) *UpdateDistributionWithStagingConfigOutput { + s.ETag = &v + return s +} + type UpdateFieldLevelEncryptionConfigInput struct { _ struct{} `locationName:"UpdateFieldLevelEncryptionConfigRequest" type:"structure" payload:"FieldLevelEncryptionConfig"` diff --git a/service/cloudfront/cloudfrontiface/interface.go b/service/cloudfront/cloudfrontiface/interface.go index dd30e06861..e47ad929a8 100644 --- a/service/cloudfront/cloudfrontiface/interface.go +++ b/service/cloudfront/cloudfrontiface/interface.go @@ -452,6 +452,10 @@ type CloudFrontAPI interface { UpdateDistributionWithContext(aws.Context, *cloudfront.UpdateDistributionInput, ...request.Option) (*cloudfront.UpdateDistributionOutput, error) UpdateDistributionRequest(*cloudfront.UpdateDistributionInput) (*request.Request, *cloudfront.UpdateDistributionOutput) + UpdateDistributionWithStagingConfig(*cloudfront.UpdateDistributionWithStagingConfigInput) (*cloudfront.UpdateDistributionWithStagingConfigOutput, error) + UpdateDistributionWithStagingConfigWithContext(aws.Context, *cloudfront.UpdateDistributionWithStagingConfigInput, ...request.Option) (*cloudfront.UpdateDistributionWithStagingConfigOutput, error) + UpdateDistributionWithStagingConfigRequest(*cloudfront.UpdateDistributionWithStagingConfigInput) (*request.Request, *cloudfront.UpdateDistributionWithStagingConfigOutput) + UpdateFieldLevelEncryptionConfig(*cloudfront.UpdateFieldLevelEncryptionConfigInput) (*cloudfront.UpdateFieldLevelEncryptionConfigOutput, error) UpdateFieldLevelEncryptionConfigWithContext(aws.Context, *cloudfront.UpdateFieldLevelEncryptionConfigInput, ...request.Option) (*cloudfront.UpdateFieldLevelEncryptionConfigOutput, error) UpdateFieldLevelEncryptionConfigRequest(*cloudfront.UpdateFieldLevelEncryptionConfigInput) (*request.Request, *cloudfront.UpdateFieldLevelEncryptionConfigOutput) diff --git a/service/cloudfront/errors.go b/service/cloudfront/errors.go index b9c403342f..207d09aa49 100644 --- a/service/cloudfront/errors.go +++ b/service/cloudfront/errors.go @@ -42,6 +42,19 @@ const ( // You can't change the value of a public key. ErrCodeCannotChangeImmutablePublicKeyFields = "CannotChangeImmutablePublicKeyFields" + // ErrCodeContinuousDeploymentPolicyAlreadyExists for service response error code + // "ContinuousDeploymentPolicyAlreadyExists". + // + // A continuous deployment policy with this configuration already exists. + ErrCodeContinuousDeploymentPolicyAlreadyExists = "ContinuousDeploymentPolicyAlreadyExists" + + // ErrCodeContinuousDeploymentPolicyInUse for service response error code + // "ContinuousDeploymentPolicyInUse". + // + // You cannot delete a continuous deployment policy that is associated with + // a primary distribution. + ErrCodeContinuousDeploymentPolicyInUse = "ContinuousDeploymentPolicyInUse" + // ErrCodeDistributionAlreadyExists for service response error code // "DistributionAlreadyExists". // @@ -339,6 +352,12 @@ const ( // The specified origin access identity does not exist. ErrCodeNoSuchCloudFrontOriginAccessIdentity = "NoSuchCloudFrontOriginAccessIdentity" + // ErrCodeNoSuchContinuousDeploymentPolicy for service response error code + // "NoSuchContinuousDeploymentPolicy". + // + // The continuous deployment policy doesn’t exist. + ErrCodeNoSuchContinuousDeploymentPolicy = "NoSuchContinuousDeploymentPolicy" + // ErrCodeNoSuchDistribution for service response error code // "NoSuchDistribution". // @@ -593,6 +612,13 @@ const ( // access identities allowed. ErrCodeTooManyCloudFrontOriginAccessIdentities = "TooManyCloudFrontOriginAccessIdentities" + // ErrCodeTooManyContinuousDeploymentPolicies for service response error code + // "TooManyContinuousDeploymentPolicies". + // + // You have reached the maximum number of continuous deployment policies for + // this Amazon Web Services account. + ErrCodeTooManyContinuousDeploymentPolicies = "TooManyContinuousDeploymentPolicies" + // ErrCodeTooManyCookieNamesInWhiteList for service response error code // "TooManyCookieNamesInWhiteList". // diff --git a/service/costexplorer/api.go b/service/costexplorer/api.go index 3c9b4e28e0..ddfd2609b9 100644 --- a/service/costexplorer/api.go +++ b/service/costexplorer/api.go @@ -13586,14 +13586,18 @@ func (s *RightsizingRecommendationSummary) SetTotalRecommendationCount(v string) return s } -// The combination of Amazon Web Service, linked account, Region, and usage -// type where a cost anomaly is observed. +// The combination of Amazon Web Service, linked account, linked account name, +// Region, and usage type where a cost anomaly is observed. The linked account +// name will only be available when the account name can be identified. type RootCause struct { _ struct{} `type:"structure"` // The member account value that's associated with the cost anomaly. LinkedAccount *string `type:"string"` + // The member account name value that's associated with the cost anomaly. + LinkedAccountName *string `type:"string"` + // The Amazon Web Services Region that's associated with the cost anomaly. Region *string `type:"string"` @@ -13628,6 +13632,12 @@ func (s *RootCause) SetLinkedAccount(v string) *RootCause { return s } +// SetLinkedAccountName sets the LinkedAccountName field's value. +func (s *RootCause) SetLinkedAccountName(v string) *RootCause { + s.LinkedAccountName = &v + return s +} + // SetRegion sets the Region field's value. func (s *RootCause) SetRegion(v string) *RootCause { s.Region = &v diff --git a/service/eks/api.go b/service/eks/api.go index 85849391ac..6ef179c631 100644 --- a/service/eks/api.go +++ b/service/eks/api.go @@ -1309,6 +1309,94 @@ func (c *EKS) DescribeAddonWithContext(ctx aws.Context, input *DescribeAddonInpu return out, req.Send() } +const opDescribeAddonConfiguration = "DescribeAddonConfiguration" + +// DescribeAddonConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAddonConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeAddonConfiguration for more information on using the DescribeAddonConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DescribeAddonConfigurationRequest method. +// req, resp := client.DescribeAddonConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonConfiguration +func (c *EKS) DescribeAddonConfigurationRequest(input *DescribeAddonConfigurationInput) (req *request.Request, output *DescribeAddonConfigurationOutput) { + op := &request.Operation{ + Name: opDescribeAddonConfiguration, + HTTPMethod: "GET", + HTTPPath: "/addons/configuration-schemas", + } + + if input == nil { + input = &DescribeAddonConfigurationInput{} + } + + output = &DescribeAddonConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeAddonConfiguration API operation for Amazon Elastic Kubernetes Service. +// +// Returns configuration options. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DescribeAddonConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonConfiguration +func (c *EKS) DescribeAddonConfiguration(input *DescribeAddonConfigurationInput) (*DescribeAddonConfigurationOutput, error) { + req, out := c.DescribeAddonConfigurationRequest(input) + return out, req.Send() +} + +// DescribeAddonConfigurationWithContext is the same as DescribeAddonConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAddonConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) DescribeAddonConfigurationWithContext(ctx aws.Context, input *DescribeAddonConfigurationInput, opts ...request.Option) (*DescribeAddonConfigurationOutput, error) { + req, out := c.DescribeAddonConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAddonVersions = "DescribeAddonVersions" // DescribeAddonVersionsRequest generates a "aws/request.Request" representing the @@ -3989,6 +4077,9 @@ type Addon struct { // The name of the cluster. ClusterName *string `locationName:"clusterName" min:"1" type:"string"` + // The provided configuration values. + ConfigurationValues *string `locationName:"configurationValues" type:"string"` + // The date and time that the add-on was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` @@ -4063,6 +4154,12 @@ func (s *Addon) SetClusterName(v string) *Addon { return s } +// SetConfigurationValues sets the ConfigurationValues field's value. +func (s *Addon) SetConfigurationValues(v string) *Addon { + s.ConfigurationValues = &v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *Addon) SetCreatedAt(v time.Time) *Addon { s.CreatedAt = &v @@ -5361,6 +5458,11 @@ type CreateAddonInput struct { // ClusterName is a required field ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + // The set of configuration values for the add-on being created. Whatever values + // provided here are validated against the schema from DescribeAddonConfiguration + // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html). + ConfigurationValues *string `locationName:"configurationValues" type:"string"` + // How to resolve field value conflicts for an Amazon EKS add-on. Conflicts // are handled based on the value you choose: // @@ -5466,6 +5568,12 @@ func (s *CreateAddonInput) SetClusterName(v string) *CreateAddonInput { return s } +// SetConfigurationValues sets the ConfigurationValues field's value. +func (s *CreateAddonInput) SetConfigurationValues(v string) *CreateAddonInput { + s.ConfigurationValues = &v + return s +} + // SetResolveConflicts sets the ResolveConflicts field's value. func (s *CreateAddonInput) SetResolveConflicts(v string) *CreateAddonInput { s.ResolveConflicts = &v @@ -6685,6 +6793,119 @@ func (s *DeregisterClusterOutput) SetCluster(v *Cluster) *DeregisterClusterOutpu return s } +type DescribeAddonConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the add-on. The name must match one of the names returned by + // DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + // + // AddonName is a required field + AddonName *string `location:"querystring" locationName:"addonName" type:"string" required:"true"` + + // The version of the add-on. The version must match one of the versions returned + // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + // + // AddonVersion is a required field + AddonVersion *string `location:"querystring" locationName:"addonVersion" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAddonConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAddonConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAddonConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAddonConfigurationInput"} + if s.AddonName == nil { + invalidParams.Add(request.NewErrParamRequired("AddonName")) + } + if s.AddonVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AddonVersion")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *DescribeAddonConfigurationInput) SetAddonName(v string) *DescribeAddonConfigurationInput { + s.AddonName = &v + return s +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *DescribeAddonConfigurationInput) SetAddonVersion(v string) *DescribeAddonConfigurationInput { + s.AddonVersion = &v + return s +} + +type DescribeAddonConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. + AddonName *string `locationName:"addonName" type:"string"` + + // The version of the add-on. The version must match one of the versions returned + // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + AddonVersion *string `locationName:"addonVersion" type:"string"` + + // A JSON schema used to validate provided configuration values when creating + // or updating an addon. + ConfigurationSchema *string `locationName:"configurationSchema" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAddonConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAddonConfigurationOutput) GoString() string { + return s.String() +} + +// SetAddonName sets the AddonName field's value. +func (s *DescribeAddonConfigurationOutput) SetAddonName(v string) *DescribeAddonConfigurationOutput { + s.AddonName = &v + return s +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *DescribeAddonConfigurationOutput) SetAddonVersion(v string) *DescribeAddonConfigurationOutput { + s.AddonVersion = &v + return s +} + +// SetConfigurationSchema sets the ConfigurationSchema field's value. +func (s *DescribeAddonConfigurationOutput) SetConfigurationSchema(v string) *DescribeAddonConfigurationOutput { + s.ConfigurationSchema = &v + return s +} + type DescribeAddonInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10528,17 +10749,17 @@ func (s *RegisterClusterOutput) SetCluster(v *Cluster) *RegisterClusterOutput { type RemoteAccessConfig struct { _ struct{} `type:"structure"` - // The Amazon EC2 SSH key that provides access for SSH communication with the - // nodes in the managed node group. For more information, see Amazon EC2 key - // pairs and Linux instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) + // The Amazon EC2 SSH key name that provides access for SSH communication with + // the nodes in the managed node group. For more information, see Amazon EC2 + // key pairs and Linux instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. Ec2SshKey *string `locationName:"ec2SshKey" type:"string"` - // The security groups that are allowed SSH access (port 22) to the nodes. If - // you specify an Amazon EC2 SSH key but do not specify a source security group - // when you create a managed node group, then port 22 on the nodes is opened - // to the internet (0.0.0.0/0). For more information, see Security Groups for - // Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) + // The security group ids that are allowed SSH access (port 22) to the nodes. + // If you specify an Amazon EC2 SSH key but do not specify a source security + // group when you create a managed node group, then port 22 on the nodes is + // opened to the internet (0.0.0.0/0). For more information, see Security Groups + // for Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. SourceSecurityGroups []*string `locationName:"sourceSecurityGroups" type:"list"` } @@ -11412,6 +11633,11 @@ type UpdateAddonInput struct { // ClusterName is a required field ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + // The set of configuration values for the add-on being created. Whatever values + // provided here are validated against the schema from DescribeAddonConfiguration + // (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html) + ConfigurationValues *string `locationName:"configurationValues" type:"string"` + // How to resolve field value conflicts for an Amazon EKS add-on if you've changed // a value from the Amazon EKS default value. Conflicts are handled based on // the option you choose: @@ -11507,6 +11733,12 @@ func (s *UpdateAddonInput) SetClusterName(v string) *UpdateAddonInput { return s } +// SetConfigurationValues sets the ConfigurationValues field's value. +func (s *UpdateAddonInput) SetConfigurationValues(v string) *UpdateAddonInput { + s.ConfigurationValues = &v + return s +} + // SetResolveConflicts sets the ResolveConflicts field's value. func (s *UpdateAddonInput) SetResolveConflicts(v string) *UpdateAddonInput { s.ResolveConflicts = &v diff --git a/service/eks/eksiface/interface.go b/service/eks/eksiface/interface.go index 099ba3bc25..eb7063eb34 100644 --- a/service/eks/eksiface/interface.go +++ b/service/eks/eksiface/interface.go @@ -108,6 +108,10 @@ type EKSAPI interface { DescribeAddonWithContext(aws.Context, *eks.DescribeAddonInput, ...request.Option) (*eks.DescribeAddonOutput, error) DescribeAddonRequest(*eks.DescribeAddonInput) (*request.Request, *eks.DescribeAddonOutput) + DescribeAddonConfiguration(*eks.DescribeAddonConfigurationInput) (*eks.DescribeAddonConfigurationOutput, error) + DescribeAddonConfigurationWithContext(aws.Context, *eks.DescribeAddonConfigurationInput, ...request.Option) (*eks.DescribeAddonConfigurationOutput, error) + DescribeAddonConfigurationRequest(*eks.DescribeAddonConfigurationInput) (*request.Request, *eks.DescribeAddonConfigurationOutput) + DescribeAddonVersions(*eks.DescribeAddonVersionsInput) (*eks.DescribeAddonVersionsOutput, error) DescribeAddonVersionsWithContext(aws.Context, *eks.DescribeAddonVersionsInput, ...request.Option) (*eks.DescribeAddonVersionsOutput, error) DescribeAddonVersionsRequest(*eks.DescribeAddonVersionsInput) (*request.Request, *eks.DescribeAddonVersionsOutput) diff --git a/service/kms/api.go b/service/kms/api.go index 33a8b05d44..dc0252cd08 100644 --- a/service/kms/api.go +++ b/service/kms/api.go @@ -2282,13 +2282,14 @@ func (c *KMS) DescribeKeyRequest(input *DescribeKeyInput) (req *request.Request, // any) of the key material. It includes fields, like KeySpec, that help you // distinguish different types of KMS keys. It also displays the key usage (encryption, // signing, or generating and verifying MACs) and the algorithms that the KMS -// key supports. For multi-Region keys (kms/latest/developerguide/multi-region-keys-overview.html), -// it displays the primary key and all related replica keys. For KMS keys in -// CloudHSM key stores (kms/latest/developerguide/keystore-cloudhsm.html), it -// includes information about the custom key store, such as the key store ID -// and the CloudHSM cluster ID. For KMS key in external key stores (kms/latest/developerguide/keystore-external.html), -// it includes the custom key store ID and the ID and status of the associated -// external key. +// key supports. +// +// For multi-Region keys (kms/latest/developerguide/multi-region-keys-overview.html), +// DescribeKey displays the primary key and all related replica keys. For KMS +// keys in CloudHSM key stores (kms/latest/developerguide/keystore-cloudhsm.html), +// it includes information about the key store, such as the key store ID and +// the CloudHSM cluster ID. For KMS keys in external key stores (kms/latest/developerguide/keystore-external.html), +// it includes the custom key store ID and the ID of the external key. // // DescribeKey does not return the following information: // @@ -9766,8 +9767,6 @@ type CreateCustomKeyStoreInput struct { // String and GoString methods. KeyStorePassword *string `min:"7" type:"string" sensitive:"true"` - // * CreateCustom - // // Specifies the certificate for an CloudHSM key store. This parameter is required // for custom key stores with a CustomKeyStoreType of AWS_CLOUDHSM. // @@ -19923,7 +19922,7 @@ func (s *XksKeyAlreadyInUseException) RequestID() string { // Information about the external key (https://docs.aws.amazon.com/kms/latest/developerguide/keystore-external.html#concept-external-key)that // is associated with a KMS key in an external key store. // -// These fields appear in a CreateKey or DescribeKey response only for a KMS +// This element appears in a CreateKey or DescribeKey response only for a KMS // key in an external key store. // // The external key is a symmetric encryption key that is hosted by an external diff --git a/service/kms/examples_test.go b/service/kms/examples_test.go index 6c6caf544d..b9c8f54ada 100644 --- a/service/kms/examples_test.go +++ b/service/kms/examples_test.go @@ -216,7 +216,7 @@ func ExampleKMS_CreateCustomKeyStore_shared01() { CustomKeyStoreType: aws.String("EXTERNAL_KEY_STORE"), XksProxyAuthenticationCredential: &kms.XksProxyAuthenticationCredentialType{ AccessKeyId: aws.String("ABCDE12345670EXAMPLE"), - RawSecretAccessKey: aws.String("file://SecretAccessKey"), + RawSecretAccessKey: aws.String("DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="), }, XksProxyConnectivity: aws.String("VPC_ENDPOINT_SERVICE"), XksProxyUriEndpoint: aws.String("https://myproxy-private.xks.example.com"), @@ -285,7 +285,7 @@ func ExampleKMS_CreateCustomKeyStore_shared02() { CustomKeyStoreType: aws.String("EXTERNAL_KEY_STORE"), XksProxyAuthenticationCredential: &kms.XksProxyAuthenticationCredentialType{ AccessKeyId: aws.String("ABCDE12345670EXAMPLE"), - RawSecretAccessKey: aws.String("file://SecretAccessKey"), + RawSecretAccessKey: aws.String("DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="), }, XksProxyConnectivity: aws.String("PUBLIC_ENDPOINT"), XksProxyUriEndpoint: aws.String("https://myproxy.xks.example.com"), @@ -2678,15 +2678,15 @@ func ExampleKMS_UpdateAlias_shared00() { fmt.Println(result) } -// To edit the password of an AWS CloudHSM key store -// This example tells AWS KMS the password for the kmsuser crypto user in the AWS CloudHSM -// cluster that is associated with the AWS KMS custom key store. (It does not change -// the password in the CloudHSM cluster.) This operation does not return any data. +// To edit the friendly name of a custom key store +// This example changes the friendly name of the AWS KMS custom key store to the name +// that you specify. This operation does not return any data. To verify that the operation +// worked, use the DescribeCustomKeyStores operation. func ExampleKMS_UpdateCustomKeyStore_shared00() { svc := kms.New(session.New()) input := &kms.UpdateCustomKeyStoreInput{ - CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), - KeyStorePassword: aws.String("ExamplePassword"), + CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), + NewCustomKeyStoreName: aws.String("DevelopmentKeys"), } result, err := svc.UpdateCustomKeyStore(input) @@ -2741,15 +2741,15 @@ func ExampleKMS_UpdateCustomKeyStore_shared00() { fmt.Println(result) } -// To edit the friendly name of a custom key store -// This example changes the friendly name of the AWS KMS custom key store to the name -// that you specify. This operation does not return any data. To verify that the operation -// worked, use the DescribeCustomKeyStores operation. +// To edit the password of an AWS CloudHSM key store +// This example tells AWS KMS the password for the kmsuser crypto user in the AWS CloudHSM +// cluster that is associated with the AWS KMS custom key store. (It does not change +// the password in the CloudHSM cluster.) This operation does not return any data. func ExampleKMS_UpdateCustomKeyStore_shared01() { svc := kms.New(session.New()) input := &kms.UpdateCustomKeyStoreInput{ - CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), - NewCustomKeyStoreName: aws.String("DevelopmentKeys"), + CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), + KeyStorePassword: aws.String("ExamplePassword"), } result, err := svc.UpdateCustomKeyStore(input) @@ -2868,9 +2868,77 @@ func ExampleKMS_UpdateCustomKeyStore_shared02() { fmt.Println(result) } +// To update the proxy authentication credential of an external key store +// To update the proxy authentication credential for your external key store, specify +// both the RawSecretAccessKey and the AccessKeyId, even if +// you are changing only one of the values. You can use this feature to fix an invalid +// credential or to change the credential when the external key store proxy rotates +// it. +func ExampleKMS_UpdateCustomKeyStore_shared03() { + svc := kms.New(session.New()) + input := &kms.UpdateCustomKeyStoreInput{ + CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), + XksProxyAuthenticationCredential: &kms.XksProxyAuthenticationCredentialType{ + AccessKeyId: aws.String("ABCDE12345670EXAMPLE"), + RawSecretAccessKey: aws.String("DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="), + }, + } + + result, err := svc.UpdateCustomKeyStore(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case kms.ErrCodeCustomKeyStoreNotFoundException: + fmt.Println(kms.ErrCodeCustomKeyStoreNotFoundException, aerr.Error()) + case kms.ErrCodeCustomKeyStoreNameInUseException: + fmt.Println(kms.ErrCodeCustomKeyStoreNameInUseException, aerr.Error()) + case kms.ErrCodeCloudHsmClusterNotFoundException: + fmt.Println(kms.ErrCodeCloudHsmClusterNotFoundException, aerr.Error()) + case kms.ErrCodeCloudHsmClusterNotRelatedException: + fmt.Println(kms.ErrCodeCloudHsmClusterNotRelatedException, aerr.Error()) + case kms.ErrCodeCustomKeyStoreInvalidStateException: + fmt.Println(kms.ErrCodeCustomKeyStoreInvalidStateException, aerr.Error()) + case kms.ErrCodeInternalException: + fmt.Println(kms.ErrCodeInternalException, aerr.Error()) + case kms.ErrCodeCloudHsmClusterNotActiveException: + fmt.Println(kms.ErrCodeCloudHsmClusterNotActiveException, aerr.Error()) + case kms.ErrCodeCloudHsmClusterInvalidConfigurationException: + fmt.Println(kms.ErrCodeCloudHsmClusterInvalidConfigurationException, aerr.Error()) + case kms.ErrCodeXksProxyUriInUseException: + fmt.Println(kms.ErrCodeXksProxyUriInUseException, aerr.Error()) + case kms.ErrCodeXksProxyUriEndpointInUseException: + fmt.Println(kms.ErrCodeXksProxyUriEndpointInUseException, aerr.Error()) + case kms.ErrCodeXksProxyUriUnreachableException: + fmt.Println(kms.ErrCodeXksProxyUriUnreachableException, aerr.Error()) + case kms.ErrCodeXksProxyIncorrectAuthenticationCredentialException: + fmt.Println(kms.ErrCodeXksProxyIncorrectAuthenticationCredentialException, aerr.Error()) + case kms.ErrCodeXksProxyVpcEndpointServiceInUseException: + fmt.Println(kms.ErrCodeXksProxyVpcEndpointServiceInUseException, aerr.Error()) + case kms.ErrCodeXksProxyVpcEndpointServiceNotFoundException: + fmt.Println(kms.ErrCodeXksProxyVpcEndpointServiceNotFoundException, aerr.Error()) + case kms.ErrCodeXksProxyVpcEndpointServiceInvalidConfigurationException: + fmt.Println(kms.ErrCodeXksProxyVpcEndpointServiceInvalidConfigurationException, aerr.Error()) + case kms.ErrCodeXksProxyInvalidResponseException: + fmt.Println(kms.ErrCodeXksProxyInvalidResponseException, aerr.Error()) + case kms.ErrCodeXksProxyInvalidConfigurationException: + fmt.Println(kms.ErrCodeXksProxyInvalidConfigurationException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To edit the proxy URI path of an external key store. // This example updates the proxy URI path for an external key store -func ExampleKMS_UpdateCustomKeyStore_shared03() { +func ExampleKMS_UpdateCustomKeyStore_shared04() { svc := kms.New(session.New()) input := &kms.UpdateCustomKeyStoreInput{ CustomKeyStoreId: aws.String("cks-1234567890abcdef0"), @@ -2935,7 +3003,7 @@ func ExampleKMS_UpdateCustomKeyStore_shared03() { // value, you must change the XksProxyUriEndpoint value to reflect the // private DNS name associated with the VPC endpoint service. You must also add an XksProxyVpcEndpointServiceName // value. -func ExampleKMS_UpdateCustomKeyStore_shared04() { +func ExampleKMS_UpdateCustomKeyStore_shared05() { svc := kms.New(session.New()) input := &kms.UpdateCustomKeyStoreInput{ CustomKeyStoreId: aws.String("cks-1234567890abcdef0"),