Sam Hulick
08/12/2021, 3:08 AMSam Hulick
08/12/2021, 3:10 AMlambda.LayerVersion in my CDK code, but I’d need to reference a zip on S3 in another AWS accountGuy Shechter
08/12/2021, 3:17 AMLAMBDA_LAYER_ARN=arn:aws:lambda:us-east-1:XXXXX:layer:XXXX:33
Then in your stack:
const myLambdaLayer = lambda.LayerVersion.fromLayerVersionArn(this,
'myLayer', <string>process.env.LAMBDA_LAYER_ARN);
Then in your Lambda definition
return new sst.Api(this, 'Api', {
defaultFunctionProps: {
layers: [myLambdaLayer]Sam Hulick
08/12/2021, 3:29 AMAshishkumar Pandey
08/12/2021, 3:54 AMAshishkumar Pandey
08/12/2021, 3:54 AMSam Hulick
08/12/2021, 4:00 AMAshishkumar Pandey
08/12/2021, 4:01 AMAshishkumar Pandey
08/12/2021, 4:01 AMSam Hulick
08/12/2021, 4:02 AMAshishkumar Pandey
08/12/2021, 4:03 AMSam Hulick
08/12/2021, 4:07 AMSam Hulick
08/12/2021, 4:07 AMAshishkumar Pandey
08/12/2021, 4:07 AMSam Hulick
08/12/2021, 4:07 AMSam Hulick
08/12/2021, 4:12 AMAshishkumar Pandey
08/12/2021, 4:13 AMSam Hulick
08/12/2021, 4:35 AMAshishkumar Pandey
08/12/2021, 4:36 AMSam Hulick
08/12/2021, 4:38 AMSam Hulick
08/12/2021, 4:38 AM'*' and organizationID with my organization ID (obviously)Sam Hulick
08/12/2021, 4:39 AMaddPermission('ARN of layer in Account A', layerVersionPermission)Ashishkumar Pandey
08/12/2021, 4:39 AMSam Hulick
08/12/2021, 4:41 AMAshishkumar Pandey
08/12/2021, 4:43 AMaddPermission works on the source layer and account and not on the target. Once you create the layer and add the permission everything from the source side should be done.
On the target side you’d use LayerVersion.fromLayerVersionArn or LayerVersion.fromLayerVersionAttributes to refer it.Sam Hulick
08/12/2021, 4:45 AMAshishkumar Pandey
08/12/2021, 4:46 AMSam Hulick
08/12/2021, 4:47 AMaddPermission to gain access to the primary account’s layers.. ? that would be a security flaw 😄Sam Hulick
08/12/2021, 4:48 AMAshishkumar Pandey
08/12/2021, 4:48 AMSam Hulick
08/12/2021, 4:48 AMyarn deploy, it’ll add that permissionAshishkumar Pandey
08/12/2021, 4:49 AMSam Hulick
08/12/2021, 4:49 AMAshishkumar Pandey
08/12/2021, 4:49 AMSam Hulick
08/12/2021, 4:50 AMAshishkumar Pandey
08/12/2021, 4:54 AMAshishkumar Pandey
08/12/2021, 4:59 AM{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "lambda:GetLayerVersion",
"Resource": "arn:aws:lambda:ap-south-1:xxx:layer:test:test",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "subaccount"
}
}
}
]
}Sam Hulick
08/12/2021, 5:01 AM{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "lambda:GetLayerVersion",
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalOrgID": "o-xxx"
}
}
}
]
}Ashishkumar Pandey
08/12/2021, 5:02 AMSam Hulick
08/12/2021, 5:02 AMSam Hulick
08/12/2021, 5:02 AMAshishkumar Pandey
08/12/2021, 5:03 AMAshishkumar Pandey
08/12/2021, 5:03 AMsudo though. 😅Sam Hulick
08/12/2021, 5:04 AMSam Hulick
08/12/2021, 5:04 AM{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "lambda:GetLayerVersion",
"Resource": "arn:aws:lambda:*:808557273244:layer:*:*",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "*",
"aws:PrincipalOrgID": "o-34kxmykfnr"
}
}
}
]
}Sam Hulick
08/12/2021, 5:04 AMAshishkumar Pandey
08/12/2021, 5:05 AMSam Hulick
08/12/2021, 5:06 AMAshishkumar Pandey
08/12/2021, 5:06 AMSam Hulick
08/12/2021, 5:07 AMResource handler returned message: "User: arn:aws:iam::<sub_account>:user/sammy is not authorized to perform: lambda:GetLayerVersion on resource: arn:aws:lambda:us-east-1:<main_account>:layer:audio-tools:4Ashishkumar Pandey
08/12/2021, 5:09 AMSam Hulick
08/12/2021, 5:09 AMSam Hulick
08/12/2021, 5:10 AM"Principal": {
"AWS": "arn:aws:iam::<sub_account>:root"
},Sam Hulick
08/12/2021, 5:11 AMSam Hulick
08/12/2021, 5:11 AMSam Hulick
08/12/2021, 5:12 AMAshishkumar Pandey
08/12/2021, 5:12 AM{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "lambda:GetLayerVersion",
"Resource": "arn:aws:lambda:ap-south-1:xxx:layer:test:test",
"Condition": {
"ArnEquals": {
"aws:PrincipalArn": "arn:aws:iam::xxx:user/ashish"
}
}
}
]
}Sam Hulick
08/12/2021, 5:16 AMSam Hulick
08/12/2021, 5:16 AMAshishkumar Pandey
08/12/2021, 5:16 AMAshishkumar Pandey
08/12/2021, 5:16 AMSam Hulick
08/12/2021, 5:16 AMAshishkumar Pandey
08/12/2021, 5:17 AMSam Hulick
08/12/2021, 5:18 AMSam Hulick
08/12/2021, 5:18 AMAshishkumar Pandey
08/12/2021, 5:18 AMSam Hulick
08/12/2021, 5:18 AM:root for the IAM userSam Hulick
08/12/2021, 5:19 AM:root is for STS & trusted accounts I believeAshishkumar Pandey
08/12/2021, 5:19 AMAshishkumar Pandey
08/12/2021, 5:20 AMSam Hulick
08/12/2021, 5:20 AM{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<sub_account>:root"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}Sam Hulick
08/12/2021, 5:21 AMAshishkumar Pandey
08/12/2021, 5:22 AMSam Hulick
08/12/2021, 5:22 AMAshishkumar Pandey
08/12/2021, 5:24 AM"Condition": {
"StringEquals": {
"aws:PrincipalType": "User"
}
}Sam Hulick
08/12/2021, 5:25 AMAshishkumar Pandey
08/12/2021, 5:25 AMSam Hulick
08/12/2021, 5:26 AMlambda:GetLayerVersion. ?Ashishkumar Pandey
08/12/2021, 5:26 AMSam Hulick
08/12/2021, 5:26 AMSam Hulick
08/12/2021, 5:27 AMAshishkumar Pandey
08/12/2021, 5:27 AMAshishkumar Pandey
08/12/2021, 5:29 AMaws lambda add-layer-version-permission --layer-name my-layer \
--statement-id engineering-org --version-number 3 --principal '*' \
--action lambda:GetLayerVersion --organization-id o-t194hfs8cz --output textSam Hulick
08/12/2021, 5:31 AMAshishkumar Pandey
08/12/2021, 5:32 AMSam Hulick
08/12/2021, 5:34 AMSam Hulick
08/12/2021, 5:34 AMSam Hulick
08/12/2021, 5:35 AMAshishkumar Pandey
08/12/2021, 5:36 AMSam Hulick
08/12/2021, 5:36 AMAshishkumar Pandey
08/12/2021, 5:37 AMSam Hulick
08/12/2021, 5:38 AMSam Hulick
08/12/2021, 5:39 AMAshishkumar Pandey
08/12/2021, 5:40 AMget-layer-version-policySam Hulick
08/12/2021, 5:40 AMSam Hulick
08/12/2021, 5:41 AMAshishkumar Pandey
08/12/2021, 5:41 AMAshishkumar Pandey
08/12/2021, 5:42 AMSam Hulick
08/12/2021, 5:42 AMAshishkumar Pandey
08/12/2021, 5:42 AMSam Hulick
08/12/2021, 5:44 AMJay
Ashishkumar Pandey
08/14/2021, 1:14 AM