Resource pulls latest AMI images without a filter. このページは日本語には対応しておりません。随時翻訳に取り組んでいます。
翻訳に関してご質問やご意見ございましたら、
お気軽にご連絡ください 。
このルールを試す ID: terraform-aws/ami-missing-owners
Language: Terraform
Severity: Error
Category: Security
Description This error is caused when most_recent
is set to true
and there is no owner attribute set or no owner or image filters. With this configuration, a third party may introduce a new image which will be returned by this data source, leading to unexpected changes.
Consider adding a owner
attribute, or filtering by owner-alias
, owner-id
, or image-id
to avoid this possibility.
Non-Compliant Code Examples # non-compliant
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
}
# compliant
data "aws_ami" "ubuntu" {
most_recent = true
owners = [ "099720109477" ] // Canonical
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
}
# compliant
data "aws_ami" "ubuntu" {
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-1234" ]
}
}
# compliant
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "image-id"
values = [ "ami-12345" ]
}
}
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
}
Compliant Code Examples data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
filter {
name = "owner-id"
values = [ "099720109477" ]
}
}
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
filter {
name = "owner-alias"
values = [ "amazon" ]
}
}
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
owners = [ "099720109477" ] // Canonical
}
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "image-id"
values = [ "ami-12345" ]
}
}
data "aws_ami" "ubuntu" {
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-1234" ]
}
}
data "aws_ami" "ubuntu" {
most_recent = true
owners = [ "099720109477" ] // Canonical
filter {
name = "name"
values = [ "ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*" ]
}
}
Seamless integrations. Try Datadog Code Analysis