如何使用Terraform数据源引用托管前缀列表



我正在尝试更新地形模块以添加一个新的安全组,该组将有一个由两个托管前缀列表填充的入站规则。前缀列表是使用AWS资源访问管理器从另一个帐户共享给我的AWS帐户的,但我尝试引用在我自己的AWS帐户中创建的前缀列表,但看到了相同的错误。

以下是我正在使用的地形:

resource "aws_security_group" "akamai_sg" {
name                   = "akamai-pl-sg"
description            = "Manage access from Akamai to ${var.environment} alb"
vpc_id                 = var.vpc_id
tags                   = merge(var.common_tags, tomap({ "Name" = "akamai-pl-sg" }))
revoke_rules_on_delete = true
}
resource "aws_security_group_rule" "akamai_to_internal_alb" {
for_each = toset(var.domains_inc_akamai)
type                     = "ingress"
description              = "Allow Akamai into ${var.environment}${var.domain_name_suffix}-alb"
from_port                = var.alb_listener_port
to_port                  = var.alb_listener_port
protocol                 = "tcp"
security_group_id        = aws_security_group.akamai_sg.id
prefix_list_ids          = [data.aws_prefix_list.akamai-site-shield.id, data.aws_prefix_list.akamai-staging.id]
}
data "aws_prefix_list" "akamai-site-shield" {
filter {
name   = "prefix-list-id"
values = ["pl-xxxxxxxxxx"]
}
}
data "aws_prefix_list" "akamai-staging" {
filter {
name   = "prefix-list-id"
values = ["pl-xxxxxxxxxx"]
}
}

我正在恢复的地形错误如下:"错误:找不到匹配的前缀列表;前缀列表ID或名称可能无效或不存在于当前区域中">

有人能帮忙吗,或者看看我哪里出了问题?

提前谢谢。

以下不可能吗?

data "aws_vpc_endpoint" "s3" {
vpc_id       = aws_vpc.foo.id
service_name = "com.amazonaws.us-west-2.s3"
}
data "aws_prefix_list" "s3" {
prefix_list_id = aws_vpc_endpoint.s3.prefix_list_id
}

似乎解决方案是使用:

data "aws_ec2_managed_prefix_list" "example" {
filter {
name   = "prefix-list-name"
values = ["my-prefix-list"]
}
} 

相关内容

  • 没有找到相关文章

最新更新