You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AdministratorAccess用户在eu-central-2获取Lambda CodeSigningConfig遇AccessDeniedException

Terraform在eu-central-2区域调用Lambda GetFunctionCodeSigningConfig报403 AccessDeniedException的排查方案

问题场景

  • 一套用于创建IAM Policy和Lambda的入门级Terraform代码,在eu-central-1区域运行完全正常,切换到eu-central-2(苏黎世)区域后出现异常
  • Policy与Lambda资源均创建成功,但Terraform执行阶段调用GetFunctionCodeSigningConfig接口时返回403权限拒绝错误
  • 操作账号已加入拥有AdministratorAccess权限的用户组,额外添加了AWSLambda_FullAccess权限,甚至显式配置了lambda:GetFunctionCodeSigningConfig等相关权限,问题仍未解决

报错核心信息:

error getting Lambda Function (test_lambda) code signing config AccessDeniedException:
    status code: 403, request id: xxx

排查与解决思路

1. 检查区域服务特性差异

eu-central-2属于较新的AWS区域,部分Lambda特性的权限控制逻辑可能存在区域级别的特殊配置或服务启用延迟。确认该区域是否对Lambda Code Signing Config相关API有额外的权限限制,比如需要提前启用特定服务或存在区域专属的权限策略。

2. 升级Terraform AWS Provider版本

旧版本的AWS Provider可能对新区域的API支持不完善,导致权限校验逻辑异常。建议升级到最新稳定版的AWS Provider:

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = ">= 4.0.0" # 推荐使用官方最新稳定版本
    }
  }
}

3. 排查IAM权限边界与组织SCP

即使账号拥有AdministratorAccess,若存在以下情况仍可能被限制:

  • 账号/用户组配置了权限边界,需确认边界策略是否包含lambda:GetFunctionCodeSigningConfig权限
  • AWS组织层面配置了服务控制策略(SCP),需检查SCP是否允许Lambda Code Signing相关操作

4. 显式指定资源区域

确保Terraform配置中Lambda资源明确绑定eu-central-2区域,避免跨区域权限校验问题:

resource "aws_lambda_function" "hello_world" {
  function_name = "test_lambda"
  role          = aws_iam_role.lambda_role.arn
  handler       = "index.handler"
  runtime       = "nodejs16.x"
  filename      = "lambda_function_payload.zip"
  region        = "eu-central-2"
}

5. 临时跳过Code Signing Config读取(应急方案)

若暂不依赖Code Signing Config功能,可通过Terraform生命周期配置跳过该属性的读取:

resource "aws_lambda_function" "hello_world" {
  # 其他资源配置...

  lifecycle {
    ignore_changes = [code_signing_config_arn]
  }
}

内容的提问来源于stack exchange,提问作者Michal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:45:41