簡體   English   中英

無法通過 terraform AWS 提供商訪問 AWS 帳戶——無效的 AMI

[英]Unable to access AWS account through terraform AWS provider -- invalid AMI

AWS 菜鳥在這里。 我無法在管理控制台的哪個位置找到訪問令牌。 我可以訪問秘密密鑰和訪問密鑰,但顯然 API 訪問 AWS 也需要訪問令牌,我在門戶網站上的任何地方都找不到

附加信息:我正在尋找的是一種通過 AWS 提供的管理控制台創建和銷毀令牌的方法。 我實際上正在了解 terraform AWS 提供商,它需要訪問密鑰、密鑰和令牌。

在 inte.net 上搜索答案,很明顯可以使用 SDK 創建和銷毀這些令牌。我正在尋找一種通過管理控制台本身創建此令牌的簡單快捷的方法。 這可能嗎?

在沒有令牌的情況下訪問 AWS 資源會出現以下錯誤:

aws_instance.sl-ec2-01: Creating...
╷
│ Error: creating EC2 Instance: InvalidAMIID.NotFound: The image id '[ami-07ffb2f4d65357b42]' does not exist
│       status code: 400, request id: 53057722-210e-46fa-89e3-2484f35ab263
│
│   with aws_instance.sl-ec2-01,
│   on ec2-instance.tf line 1, in resource "aws_instance" "sl-ec2-01":
│    1: resource "aws_instance" "sl-ec2-01" {

這是我從門戶網站檢索到的確切 ami。 我的 terraform 代碼片段用於在 ap-south-1 區域配置新虛擬機:

resource "aws_instance" "sl-ec2-01" {
    instance_type = "t2.micro"
    ami = "ami-07ffb2f4d65357b42"
}

更新 2:原來我沒有更改區域信息,這就是 AMI 不匹配的原因。 它現在已經正確地旋轉了一個圖像。

IAM User 只有一個Access Key和一個Secret Key

但是,如果您使用 AWS Security Token Service (STS) 創建臨時憑證,那么還會提供一個令牌

例如,使用您的 IAM 用戶憑證調用AssumeRole()以從 IAM 角色獲得特權,您將獲得:

  • 訪問密鑰
  • 密鑰
  • 訪問令牌

顯然,對應於特定操作系統風格的 AMI(機器映像)因地區而異。 雖然我更改了我的區域,但我沒有更改 AMI。 這就是我犯的錯誤。

將操作系統的 AMI 更改為我的新區域的 AMI 后,它起作用了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM