1+ locals {
2+ lambda_code_signing_profile_name = replace (random_pet. this . id , " -" , " " )
3+ }
14provider "aws" {
25 region = " eu-west-1"
36
@@ -14,21 +17,23 @@ provider "aws" {
1417module "lambda" {
1518 source = " ../../"
1619
17- function_name = random_pet. this . id
18- handler = " index.lambda_handler"
19- runtime = " python3.12"
20- code_signing_config_arn = aws_lambda_code_signing_config. this . arn
21- create_package = false
20+ function_name = random_pet. this . id
21+ handler = " index.lambda_handler"
22+ runtime = " python3.12"
23+ create_package = false
24+ enable_code_signing = true
25+ code_signing_config_arn = aws_lambda_code_signing_config. this . arn
26+ lambda_code_signing_profile_name = local. lambda_code_signing_profile_name
27+ s3_signing_prefix = " signed/"
2228
29+ store_on_s3 = true
2330 s3_existing_package = {
24- bucket = aws_signer_signing_job.this.signed_object[0 ].s3[0 ].bucket
25- key = aws_signer_signing_job.this.signed_object[0 ].s3[0 ].key
31+ bucket = module.s3_bucket.s3_bucket_id
32+ key = aws_s3_object.unsigned.key
33+ version_id = aws_s3_object.unsigned.version_id
2634 }
27- }
2835
29- # ###############################################################################
30- # Lambda Code Signing
31- # ###############################################################################
36+ }
3237
3338resource "aws_s3_object" "unsigned" {
3439 bucket = module. s3_bucket . s3_bucket_id
@@ -41,38 +46,21 @@ resource "aws_s3_object" "unsigned" {
4146 ]
4247}
4348
49+ # ################################################################################
50+ # # Lambda Code Signing
51+ # ################################################################################
52+
4453resource "aws_signer_signing_profile" "this" {
4554 platform_id = " AWSLambda-SHA384-ECDSA"
4655 # invalid value for name (must be alphanumeric with max length of 64 characters)
47- name = replace (random_pet . this . id , " - " , " " )
56+ name = local . lambda_code_signing_profile_name
4857
4958 signature_validity_period {
5059 value = 3
5160 type = " MONTHS"
5261 }
5362}
5463
55- resource "aws_signer_signing_job" "this" {
56- profile_name = aws_signer_signing_profile. this . name
57-
58- source {
59- s3 {
60- bucket = module. s3_bucket . s3_bucket_id
61- key = aws_s3_object. unsigned . id
62- version = aws_s3_object. unsigned . version_id
63- }
64- }
65-
66- destination {
67- s3 {
68- bucket = module. s3_bucket . s3_bucket_id
69- prefix = " signed/"
70- }
71- }
72-
73- ignore_signing_job_failure = true
74- }
75-
7664resource "aws_lambda_code_signing_config" "this" {
7765 allowed_publishers {
7866 signing_profile_version_arns = [aws_signer_signing_profile . this . version_arn ]
0 commit comments