Amazon S3 错误响应的账单计费
通常,S3 存储桶拥有者需要为获得 HTTP 200 OK 成功响应和 HTTP 4XX 客户端错误响应的请求付费。存储桶拥有者无需为 HTTP 5XX 服务器错误响应(例如 HTTP 503 Slow Down 错误)付费。有关在存储桶配置为申请方付款存储桶时的账单费用的更多信息,请参阅申请方付款的费用支付方式。
下表列出了不予计费的 HTTP 3XX 和 4XX 状态码下的特定错误代码。对于配置了网站托管的存储桶,当 S3 返回自定义错误文档或进行自定义重定向时,仍将收取适用的请求和其它费用。
注意
对于 AccessDenied(HTTP 403 Forbidden),如果请求是在存储桶拥有者的个人 Amazon 账户或 Amazon 组织外部发起,则 S3 不会向存储桶拥有者收费。
| HTTP 状态代码 | 错误代码 | 错误代码说明 |
|---|---|---|
| 301 永久移动 | PermanentRedirect | 必须使用指定的端点来寻址您正在尝试访问的存储桶。请将未来的所有请求发送到此端点。 |
| PermanentRedirectControlError | 必须使用指定的端点来寻址您正在尝试访问的 API 操作。请将未来的所有请求发送到此端点。 | |
| 307 临时重新导向 | TemporaryRedirect | 域名系统(DNS)服务器更新时您会被重定向至存储桶。 |
| 400 错误请求 | AuthorizationHeaderMalformed | 您提供的授权标头无效。 |
| AuthorizationQueryParametersError | 您提供的授权查询参数无效。 | |
| ConnectionClosedByRequester | 如果在读取 WriteGetObjectResponse 正文时遇到错误,则返回给原始调用方。 | |
| DeviceNotActiveError | 设备当前处于不活动状态。 | |
| EndpointNotFound | 将请求定向到正确的端点。 | |
| ExpiredToken | 提供的令牌过期。 | |
| IllegalLocationConstraintException | 您正在尝试从存储桶所在区域以外的区域访问存储桶。要避免此错误,请使用 --region 选项。例如:aws s3 cp 。 |
|
| InvalidArgument |
出现此错误可能的原因如下:
|
|
| InvalidBucketOwnerAWSAccountID | 预期的存储桶拥有者参数的值必须为 Amazon Web Services 账户 ID。 | |
| InvalidDigest | 指定的 Content-MD5 或校验和值无效。 | |
| InvalidEncryptionAlgorithmError | 指定的加密请求无效。有效值为 AES256。 |
|
| InvalidHostHeader | 请求中提供的主机标头使用了不正确的样式寻址。 | |
| InvalidHttpMethod | 请求是使用意外的 HTTP 方法发出的。 | |
| InvalidRequest |
出现此错误可能的原因如下:
|
|
| InvalidSessionException | 如果会话因超时或过期而不再存在,则返回。 | |
| InvalidSignature | 服务器计算出的请求签名与您提供的签名不匹配。请检查您的 Amazon 秘密访问密钥和签名方法。有关更多信息,请参阅签署和对 REST 请求进行身份验证。 | |
| InvalidSOAPRequest | SOAP 请求正文无效。 | |
| InvalidStorageClass | 指定的存储类无效。 | |
| InvalidTag | 您的请求包含无效的标签输入。例如,您的请求可能包含重复的键、过长的键或值,或包含系统标签。 | |
| InvalidToken | 提供的令牌格式不正确或者无效。 | |
| InvalidURI | 无法解析指定的 URI。 | |
| KeyTooLongError | 键过长。 | |
| KMS.DisabledException | 由于指定的 KMS 密钥未启用,请求被拒绝。 | |
| KMS.InvalidKeyUsageException | 由于以下原因之一,请求被拒绝:
要加密、解密、重新加密和生成数据密钥,KeyUsage 必须为 ENCRYPT_DECRYPT。要对消息进行签名和验证,KeyUsage 必须为 SIGN_VERIFY。要生成和验证消息身份验证代码(MAC),KeyUsage 必须为 GENERATE_VERIFY_MAC。要获取密钥协议密钥,KeyUsage 必须为 KEY_AGREEMENT。要查找 KMS 密钥的 KeyUsage,请使用 DescribeKey 操作。 要查找特定 KMS 密钥支持的加密或签名算法,请使用 DescribeKey 操作。 |
|
| KMS.KMSInvalidStateException | 由于指定资源的状态对此请求无效,请求被拒绝。此异常意味着以下情况之一:
|
|
| KMS.NotFoundException | 由于找不到指定的实体或资源,请求被拒绝。 | |
| LambdaInvalidResponse | 当 WriteGetObjectResponse 向 Amazon Lambda 响应 ValidationError 时,返回给原始调用方。有关更多详细信息,请参阅 ValidationError 消息。并非所有 ValidationError 情况都会导致 LambdaInvalidResponse 错误。 | |
| LambdaInvocationFailed | Lambda 函数调用失败。当 S3 对象 Lambda 无法成功调用已配置的 Lambda 函数时,调用方可能会收到以下错误。错误消息可能包含有关在调用函数时 Amazon 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 | 服务器计算出的请求签名与您提供的签名不匹配。请检查您的 Amazon 秘密访问密钥和签名方法。有关更多信息,请参阅 REST 身份验证和 SOAP 身份验证。 | |
| NotSignedUp | 您的账户未注册 Amazon S3 服务。您必须先注册,然后才能使用 Amazon S3。您可以通过以下 URL 注册:https://aws.amazon.com/s3 |
|
| InvalidSecurity | 提供的安全凭证无效。 | |
| InvalidPayer | 已禁用针对此对象的所有访问权限。如需更多帮助,请参阅联系我们 |
|
| InvalidAccessKeyId | 您提供的 Amazon 访问密钥 ID 在记录中不存在。 | |
| AccountProblem | 您的 Amazon Web Services 账户存在问题,导致无法成功完成操作。如需更多帮助,请参阅联系我们 |
|
| UnauthorizedAccessError | 仅适用于中国区域。在向没有 ICP 许可证的存储桶发出请求时返回。有关更多信息,请参阅 ICP Recordal |
|
| UnexpectedIPError | 仅适用于中国区域。由于 IP 不符合预期,请求被拒绝。 | |
| MissingAuthenticationToken | 未对请求进行签名。 | |
| LambdaPermissionError | 调用方未获授权,无法调用 Lambda 函数。调用方必须具有调用 Lambda 函数的权限。检查附加到调用方的策略,并确保这些策略已获准将 lambda:Invoke 用于所配置的函数。错误消息可能包含有关在调用函数时 Lambda 服务返回的最终错误的详细信息(例如,状态代码、错误代码、错误消息和请求 ID)。 |
|
| 404 未找到 | LambdaNotFound | 找不到 Amazon Lambda 函数。尝试调用配置的 Lambda 函数、版本或别名时找不到它。确保 S3 对象 Lambda 接入点配置指向正确的 Lambda 函数 ARN。错误消息可能包含有关在调用函数时 Amazon 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 | 请求的范围对请求无效。尝试其它范围。 |