вот мой шаблон
{
"AWSTemplateFormatVersion":"2010-09-09",
"Resources":{
"lambdafunction":{
"Type":"AWS::Lambda::Function",
"Properties":{
"Handler":"index.handler",
"Role":{
"Fn::GetAtt":[
"RootRole",
"Arn"
]
},
"Code":{
"S3Bucket":"{s3_bucket_name}",
"S3Key":"lambda-zip"
},
"Runtime":"java8",
"Timeout":"25"
}
},
"RootRole":{
"Type":"AWS::IAM::Role",
"Properties":{
"AssumeRolePolicyDocument":{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Principal":{
"Service":[
"ec2.amazonaws.com"
]
},
"Action":[
"sts:AssumeRole"
]
}
]
},
"Path":"/",
"Policies":[
{
"PolicyName":"root",
"PolicyDocument":{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":"*",
"Resource":"*"
}
]
}
}
]
}
}
}
}
Имя лямбда-функции после создания стека - lambda-lambdafunction-18SJKJ5Q40AKZ Имя роли IAM - lambda-RootRole-12S8E9CA0EOVM
Похоже, что в шаблоне нет способа определить имя лямбда-функции http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html. И я не уверен, почему в конце добавляются случайные символы.