S3ServiceException 錯誤 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

S3ServiceException 錯誤

常見的 s3ServiceException 錯誤是由不正確的格式或不正確的登入資料字串、您的叢集和您的儲存貯體位在不同的AWS區域,並且 Amazon S3 權限不足。

本節提供每個類型的錯誤的故障診斷資訊。

無效的登入資料字串

如果您的登入資料字串的格式不正確,您會收到下列錯誤訊息:

ERROR: Invalid credentials. Must be of the format: credentials 'aws_access_key_id=<access-key-id>;aws_secret_access_key=<secret-access-key> [;token=<temporary-session-token>]'

驗證登入資料字串不包含任何空格或分行符號,並且以單引號括住。

無效的存取金鑰 ID

如果您的存取金鑰 ID 不存在,您會收到下列錯誤訊息:

[Amazon](500310) Invalid operation: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.

這通常是複製和貼上錯誤。驗證已正確輸入存取金鑰 ID。另外,如果您使用的是暫時工作階段金鑰,請檢查 token 的值是否已經設定。

無效的私密存取金鑰

如果您的私密存取金鑰不正確,您會收到下列錯誤訊息:

[Amazon](500310) Invalid operation: S3ServiceException:The request signature we calculated does not match the signature you provided. Check your key and signing method.,Status 403,Error SignatureDoesNotMatch

這通常是複製和貼上錯誤。驗證已正確輸入私密存取金鑰,並且它是存取金鑰 ID 的正確金鑰。

儲存貯體位於不同區域

COPY 命令中指定的 Amazon S3 儲存貯體必須位於同一AWS區域作為集羣。如果您的 Amazon S3 儲存貯體和您的叢集位於不同的區域,您會收到類似以下的錯誤:

ERROR: S3ServiceException:The bucket you are attempting to access must be addressed using the specified endpoint.

透過在建立儲存貯體時使用 Amazon S3 管理主控台選取區域,或是在建立儲存貯體時使用 Amazon S3 API 或 CLI 來指定端點,即可以在特定區域中建立 Amazon S3 S3 儲存貯體。如需詳細資訊,請參閱 將檔案上傳至 Amazon S3

如需 Amazon S3 區域的詳細資訊,請參存取儲存貯體中的Amazon Storage Service 使用者指南

或者,您可以使用 REGION 選項搭配 COPY 命令來指定區域。

存取遭拒

登入資料識別的使用者帳户必須具備對 Amazon S3 儲存貯體的 LIST 和 GET 存取。如果使用者沒有足夠的權限,您會收到下列錯誤訊息:

ERROR: S3ServiceException:Access Denied,Status 403,Error AccessDenied

如需管理儲存段用户存取的詳細資訊,請參存取控制中的Amazon S3 開發人員指南