Amazon S3 错误响应的账单计费 - Amazon Simple Storage Service

Amazon S3 错误响应的账单计费

通常,S3 存储桶拥有者需要为获得 HTTP 200 OK 成功响应和 HTTP 4XX 客户端错误响应的请求付费。存储桶拥有者无需为 HTTP 5XX 服务器错误响应(例如 HTTP 503 Slow Down 错误)付费。有关在存储桶配置为申请方付款存储桶时的账单费用的更多信息,请参阅申请方付款的费用支付方式

下表列出了不予计费的 HTTP 3XX4XX 状态码下的特定错误代码。对于配置了网站托管的存储桶,当 S3 返回自定义错误文档或进行自定义重定向时,仍将收取适用的请求和其它费用。

注意

对于 AccessDenied(HTTP 403 Forbidden),如果请求是在存储桶拥有者的个人 AWS 账户或 AWS 组织外部发起,则 S3 不会向存储桶拥有者收费。

HTTP 状态代码 错误代码 错误代码说明
301 永久移动 PermanentRedirect 必须使用指定的端点来寻址您正在尝试访问的存储桶。请将未来的所有请求发送到此端点。
PermanentRedirectControlError 必须使用指定的端点来寻址您正在尝试访问的 API 操作。请将未来的所有请求发送到此端点。
307 临时重新导向 TemporaryRedirect 域名系统(DNS)服务器更新时您会被重定向至存储桶。
400 错误请求 AuthorizationHeaderMalformed 您提供的授权标头无效。
AuthorizationQueryParametersError 您提供的授权查询参数无效。
ConnectionClosedByRequester 如果在读取 WriteGetObjectResponse 正文时遇到错误,则返回给原始调用方。
DeviceNotActiveError 设备当前处于不活动状态。
EndpointNotFound 将请求定向到正确的端点。
ExpiredToken 提供的令牌过期。
IllegalLocationConstraintException 您正在尝试从存储桶所在区域以外的区域访问存储桶。要避免此错误,请使用 --region 选项。例如:aws s3 cp awsexample.txt s3://amzn-s3-demo-bucket/ --region ap-east-1
InvalidArgument

出现此错误可能的原因如下:

  • 指定的参数无效。

  • 请求缺少必需的标头。

  • 指定的参数不完整或格式有误。

  • 指定的参数长度必须大于或等于 3。

InvalidBucketOwnerAWSAccountID 预期的存储桶拥有者参数的值必须为 AWS 账户 ID。
InvalidDigest 指定的 Content-MD5 或校验和值无效。
InvalidEncryptionAlgorithmError 指定的加密请求无效。有效值为 AES256
InvalidHostHeader 请求中提供的主机标头使用了不正确的样式寻址。
InvalidHttpMethod 请求是使用意外的 HTTP 方法发出的。
InvalidRequest

出现此错误可能的原因如下:

  • 请求使用了错误的签名版本。请使用 AWS4-HMAC-SHA256(签名版本 4)。

  • 只能为现有存储桶创建接入点。

  • 接入点未处于可以删除的状态。

  • 只能列出现有存储桶的接入点。

  • 下一个令牌无效。

  • 生命周期规则中必须至少指定一个操作。

  • 必须至少指定一个生命周期规则。

  • 生命周期规则的数量不得超过所允许的 1000 条规则的限制。

  • MaxResults 参数的范围无效。

  • SOAP 请求必须通过 HTTPS 连接发出。

  • 名称不符合 DNS 的存储桶不支持 Amazon S3 Transfer Acceleration。

  • 名称中包含点(.)的存储桶不支持 Amazon S3 Transfer Acceleration。

  • Amazon S3 Transfer Acceleration 端点仅支持虚拟样式的请求。

  • 此存储桶上未配置 Amazon S3 Transfer Acceleration。

  • 此存储桶上已禁用 Amazon S3 Transfer Acceleration。

  • 该存储桶上不支持 Amazon S3 Transfer Acceleration。如需帮助,请联系 AWS Support

  • 此存储桶上不能启用 Amazon S3 Transfer Acceleration。如需帮助,请联系 AWS Support

  • HTTP 标头和查询参数中提供的值相互冲突。

  • HTTP 标头和 POST 表单字段中提供的值相互冲突。

  • 在大于 5GB 的对象上发出 CopyObject 请求。

InvalidSessionException 如果会话因超时或过期而不再存在,则返回。
InvalidSignature 服务器计算出的请求签名与您提供的签名不匹配。请检查您的 AWS 秘密访问密钥和签名方法。有关更多信息,请参阅签署和对 REST 请求进行身份验证
InvalidSOAPRequest SOAP 请求正文无效。
InvalidStorageClass 指定的存储类无效。
InvalidTag 您的请求包含无效的标签输入。例如,您的请求可能包含重复的键、过长的键或值,或包含系统标签。
InvalidToken 提供的令牌格式不正确或者无效。
InvalidURI 无法解析指定的 URI。
KeyTooLongError 键过长。
KMS.DisabledException 由于指定的 KMS 密钥未启用,请求被拒绝。
KMS.InvalidKeyUsageException 由于以下原因之一,请求被拒绝:
  • KMS 密钥的 KeyUsage 值与 API 操作不兼容。

  • 为操作指定的加密算法或签名算法与 KMS 密钥(KeySpec)中的密钥材料类型不兼容。

要加密、解密、重新加密和生成数据密钥,KeyUsage 必须为 ENCRYPT_DECRYPT。要对消息进行签名和验证,KeyUsage 必须为 SIGN_VERIFY。要生成和验证消息身份验证代码(MAC),KeyUsage 必须为 GENERATE_VERIFY_MAC。要获取密钥协议密钥,KeyUsage 必须为 KEY_AGREEMENT。要查找 KMS 密钥的 KeyUsage,请使用 DescribeKey 操作。

要查找特定 KMS 密钥支持的加密或签名算法,请使用 DescribeKey 操作。
KMS.KMSInvalidStateException 由于指定资源的状态对此请求无效,请求被拒绝。此异常意味着以下情况之一:
  • KMS 密钥的密钥状态与操作不兼容。

    要查找密钥状态,请使用 DescribeKey 操作。有关哪些密钥状态与每个 KMS 操作兼容的更多信息,请参阅《AWS Key Management Service 开发人员指南》中的 Key states of AWS KMS keys

  • 对于自定义密钥存储中 KMS 密钥的加密操作,此异常表示存在一般性故障,原因可能有很多。要确定原因,请参阅随异常显示的错误消息。

KMS.NotFoundException 由于找不到指定的实体或资源,请求被拒绝。
LambdaInvalidResponse 当 WriteGetObjectResponse 向 AWS Lambda 响应 ValidationError 时,返回给原始调用方。有关更多详细信息,请参阅 ValidationError 消息。并非所有 ValidationError 情况都会导致 LambdaInvalidResponse 错误。
LambdaInvocationFailed Lambda 函数调用失败。当 S3 对象 Lambda 无法成功调用已配置的 Lambda 函数时,调用方可能会收到以下错误。错误消息可能包含有关在调用函数时 AWS Lambda 服务返回的最终错误的详细信息(例如,状态代码、错误代码、错误消息和请求 ID)。
MalformedACLError 您提供的 ACL 格式有误,或者没有根据我们发布的架构进行验证。
MalformedPOSTRequest 您的 POST 请求正文的分段/表单数据格式不正确。
MalformedXML 您提供的 XML 格式不正确,或者没有根据我们发布的架构进行验证。
MaxPostPreDataLengthExceededError 上传文件前的 POST 请求字段太大。
MetadataTooLarge 您的元数据标头超过了允许的最大元数据大小。
MissingAttachment 预计会有 SOAP 附件,但未找到任何附件。
MissingRequestBodyError 您发送了一个空的 XML 文档作为请求。
MissingSecurityHeader 请求缺少必需的标头。
NoLoggingStatusForKey 不存在针对某个键的日志记录状态子资源之类的内容。
NotDeviceOwnerError 生成令牌的设备不归经过身份验证的用户拥有。
ResponseInterrupted 如果在读取 WriteGetObjectResponse 正文时遇到错误,则返回给原始调用方。
RequestHeaderSectionTooLarge 用于发出请求的请求标头和查询参数超出允许的最大大小
TokenCodeInvalidError 您提供的序列号和/或令牌代码无效。
UnexpectedContent 此请求包含不支持的内容。
UnsupportedArgument 该请求包含不支持的参数。
UnsupportedSignature 所提供的请求使用不受支持的 STS 令牌版本进行签名,或者签名版本不受支持。
UserKeyMustBeSpecified 存储桶 POST 请求必须包含指定的字段名称。如果已指定,请检查字段的顺序。
IncorrectEndpoint 指定的存储桶存在于其它区域中。将请求定向到正确的端点。
ValidationError 验证错误可能从 WriteGetObjectResponse API 操作中返回,并且可能由于多种原因而发生。有关更多详细信息,请参阅错误消息。
403 禁止访问 RequestTimeTooSkewed 请求时间和服务器时间之间的差异太大。
SignatureDoesNotMatch 服务器计算出的请求签名与您提供的签名不匹配。请检查您的 AWS 秘密访问密钥和签名方法。有关更多信息,请参阅 REST 身份验证SOAP 身份验证
NotSignedUp 您的账户未注册 Amazon S3 服务。您必须先注册,然后才能使用 Amazon S3。您可以通过以下 URL 注册:https://aws.amazon.com/s3
InvalidSecurity 提供的安全凭证无效。
InvalidPayer 已禁用针对此对象的所有访问权限。如需更多帮助,请参阅联系我们
InvalidAccessKeyId 您提供的 AWS 访问密钥 ID 在记录中不存在。
AccountProblem 您的 AWS 账户存在问题,导致无法成功完成操作。如需更多帮助,请参阅联系我们
UnauthorizedAccessError 仅适用于中国区域。在向没有 ICP 许可证的存储桶发出请求时返回。有关更多信息,请参阅 ICP Recordal
UnexpectedIPError 仅适用于中国区域。由于 IP 不符合预期,请求被拒绝。
MissingAuthenticationToken 未对请求进行签名。 
LambdaPermissionError 调用方未获授权,无法调用 Lambda 函数。调用方必须具有调用 Lambda 函数的权限。检查附加到调用方的策略,并确保这些策略已获准将 lambda:Invoke 用于所配置的函数。错误消息可能包含有关在调用函数时 Lambda 服务返回的最终错误的详细信息(例如,状态代码、错误代码、错误消息和请求 ID)。
404 未找到 LambdaNotFound 找不到 AWS Lambda 函数。尝试调用配置的 Lambda 函数、版本或别名时找不到它。确保 S3 对象 Lambda 接入点配置指向正确的 Lambda 函数 ARN。错误消息可能包含有关在调用函数时 AWS Lambda 服务返回的最终错误的详细信息(例如,状态代码、错误代码、错误消息和请求 ID)。
NoSuchAsyncRequest 找不到指定的请求。
NoSuchObjectLockConfiguration 指定的对象没有 ObjectLock 配置。
NoSuchUpload 指定的分段上传不存在。上传 ID 可能无效,或者分段上传可能已中止或已完成。
NoSuchWebsiteConfiguration 指定的存储桶没有网站配置。
NoTransformationDefined 找不到此对象 Lambda 接入点的转换。
ObjectLockConfigurationNotFoundError 此存储桶不存在对象锁定配置。
405 不允许的方法 MethodNotAllowed 不允许对此资源使用指定的方法。
409 冲突 BucketAlreadyExists 请求的存储桶名称不可用。存储桶命名空间由系统的所有用户共享。请指定其它名称,然后重试。
InvalidBucketState 请求对于存储桶的当前状态无效。
OperationAborted 当前正在对此资源执行冲突的条件操作。请重试。
411 需要长度 MissingContentLength 您必须提供 Content-Length HTTP 标头。
412 前提条件失败 RequestIsNotMultiPartContent 存储桶 POST 请求必须是附件类型的分段/表单数据。
416 请求的范围无法满足 InvalidRange 请求的范围对请求无效。尝试其它范围。