想學習 AWS 并找到了教程Build a Serverless Web Application。在我的研究中,我能為我的問題找到的最接近的問答是Unable to locate credentials aws cli。
我的程序是:
- 在 Github 中創建了一個 repo
- 導航到 IAM 并創建了一個用戶
trainer。教程沒有指定策略,所以選擇AdministratorAccess. 按照說明進行了Security credentialsand Create access key。在本地下載檔案。 - 轉到配置基礎并使用以下命令通過 .CSV 檔案匯入密鑰對:
aws configure import --csv file:///Users/path/to/file/aws-training.csv
引數:
User name: trainer
Access key ID: ****57
Secret access key: *****1b
但后來發現該檔案不包含region或不包含format:
aws configure --profile trainer
并根據 CSV(快速設定)重新執行所有值:
AWS Access Key ID: ****57
AWS Secret Access Key: *****1b
Default region name: us-east-1
Default output format: json
確保重新啟動我的終端并在本地目錄中運行命令:
aws s3 cp s3://wildrydes-us-east-1/WebApplication/1_StaticWebHosting/website ./ --recursive
終端有延遲然后拋出:
fatal error: Unable to locate credentials
研究
問與答我已通讀以嘗試查看是否可以診斷問題:
- 帶有 shell 腳本的 aws cli:上傳失敗:無法找到憑據
- 使用 AWS CLI 進行 Bash - 無法找到憑證
- 無法找到憑證 aws cli
- 無法在 boto3 AWS 中找到憑證
- 使用 aws cli 將檔案從 S3 復制到 EC2 時出現“致命錯誤:無法找到憑據”
- 嘗試將檔案從 s3-bucket 復制到我的 ec2-instance 時找不到憑據
我該如何解決我的錯誤Unable to locate credentials以及我做錯了什么或誤解?
根據評論:
檢查內容
~/.aws/credentials和~/.aws/config
證書
命令:
nano ~/.aws/credentials
呈現:
[training]
aws_access_key_id = *****57
aws_secret_access_key = ***1b
[trainer]
aws_access_key_id = *****57
aws_secret_access_key = ***1b
配置
命令:
nano ~/.aws/config
呈現:
[profile training]
region = us-east-1
output = json
[profile trainer]
region = us-east-1
output = json
uj5u.com熱心網友回復:
您已經使用名稱配置了組態檔trainer。您沒有創建默認組態檔,而是創建了一個命名組態檔。您收到當前錯誤是因為 CLI 工具正在尋找默認組態檔,而您沒有配置。
為了使用trainer組態檔,您必須添加--profile trainer到aws您在命令列中運行的每個命令,或者您需要AWS_PROFILE在命令列環境中設定環境變數:
export AWS_PROFILE=trainer
看起來你也用 標記了它nodejs,所以我建議使用環境變數路由,它也適用于 nodeJS AWS SDK。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/520796.html
