View a markdown version of this page

使用 CLI AWS 的主控台登入資料進行登入故障診斷 - AWS Command Line Interface

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

使用 CLI AWS 的主控台登入資料進行登入故障診斷

以下針對使用 CLI AWS 的主控台登入資料登入 AWS 本機開發時可能遇到的錯誤和問題,提供疑難排解建議。這不包括您在使用 CLI AWS 時可能遇到的問題。如需詳細資訊,請參閱故障診斷 的錯誤 AWS CLI。

問題:執行「aws login」時,防火牆會封鎖網路存取

執行時aws login,您可能會遇到來自防火牆軟體的快顯視窗或訊息,以防止 CLI AWS 存取您的網路。

可能原因:您的防火牆或安全軟體阻止 AWS CLI 開啟用於處理 OAuth 回呼的連接埠。

若要避免此問題,請改用 --remote選項。這將提示您複製並貼上授權碼,而不是使用 OAuth 回呼。

$ aws login --remote

問題:我們無法完成您的請求

執行 時aws login,您可能會成功開啟新的瀏覽器來存取 AWS,但新頁面不允許您選擇工作階段。反之,頁面顯示您無法完成請求。這可能是因為下列原因而發生:

  • 如果您正在使用我們的新 AWS 體驗,您可能會使用錯誤的 AWS 區域。使用 aws configure list 檢視與您的 CLI AWS 命令相關聯的預設區域。如果您不知道需要使用哪個 AWS 區域,請參閱AWS 專案的區域。

  • 如果您正在使用我們的新 AWS 體驗,且有人已與您共用專案,則您可能無法存取該專案。如需詳細資訊,請聯絡專案擁有者。

  • 您對特定 AWS 區域的存取可能會遭到封鎖。如需詳細資訊,請聯絡您的系統管理員。

  • 您對 的存取 AWS 可能會遭到封鎖。如需詳細資訊,請聯絡您的系統管理員。

問題:使用 "aws login" 後發生 ExpiredToken 或 AccessDeniedException 錯誤

在aws login為指定設定檔執行 之後執行 AWS CLI 命令時,您可能會遇到過期或無效的登入資料錯誤。

$ aws s3 ls An error occurred (ExpiredToken) when calling the ListBuckets operation: The provided token has expired.

可能原因:您可能在該設定檔中混合了現有的登入資料和新的登入資料。

執行 aws configure list或 aws configure list --profile <profile-name>以列印 CLI 從 解析預設或指定設定檔憑證的位置。

如果 TYPE 資料欄不是登入,這表示目標設定檔中仍有不同類型的登入資料。

在此範例中,憑證會從主目錄中的共用憑證檔案解析,其優先順序高於登入憑證。

$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : shared-credentials-file : secret_key : ****************EKEY : shared-credentials-file : region : us-east-1 : config-file : ~/.aws/config

若要解決此問題,請從您的組態和目標設定檔的登入資料檔案手動移除任何現有的登入資料。執行後,您應該會在aws configure list再次執行時看到登入憑證。

$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : login : secret_key : ****************EKEY : login : region : us-east-1 : config-file : ~/.aws/config

或者,使用 --debug選項會顯示 CLI 從何處解析登入資料。