【发布时间】:2021-01-26 17:16:18
【问题描述】:
现在 Terraform 可以 import lambda permissions(在创建 this post 时这是不可能的)我如何找到 aws_lambda_permission 资源的 import 参数的 function_name/statement_id 部分?
我想这可以改写为:当权限对象由控制台等创建时,我在哪里可以找到权限对象的 SID?
在 Lambda 函数的 permissions 选项卡中,我有以下策略:
{
"Version": "2012-10-17",
"Id": "default",
"Statement": [
{
"Sid": "11111111-1234-1234-1234-1234567891234",
"Effect": "Allow",
"Principal": {
"Service": "apigateway.amazonaws.com"
},
"Action": "lambda:InvokeFunction",
"Resource": "arn:aws:lambda:eu-west-2:123456789012:function:MyLizardApp",
"Condition": {
"ArnLike": {
"AWS:SourceArn": "arn:aws:execute-api:eu-west-2:123456789012:hfqy1l9g3m/*/*/*"
}
}
},
{
"Sid": "22222222-1234-1234-1234-1234567891234",
"Effect": "Allow",
"Principal": {
"Service": "apigateway.amazonaws.com"
},
"Action": "lambda:InvokeFunction",
"Resource": "arn:aws:lambda:eu-west-2:123456789012:function:MyLizardApp",
"Condition": {
"ArnLike": {
"AWS:SourceArn": "arn:aws:execute-api:eu-west-2:123456789012:hfqy1l9g3m/*/*/"
}
}
}
]
}
我尝试使用的导入命令是这样的:
terraform import aws_lambda_permission.apigw_lambda_proxy MyLizardApp/InvokeFunction
我这样做是为了尝试填充 terraform 资源(这被描述为在 this post 中导入 terraform 的一种方法):
resource "aws_lambda_permission" "apigw_lambda_proxy" {
}
resource "aws_lambda_permission" "apigw_lambda_root" {
}
【问题讨论】:
标签: amazon-web-services terraform terraform-provider-aws