我已经创建了一个CloudFormation模板,该模板部署了一个AWS Lambda函数,该函数由AWS Transfer调用以对sftp用户进行身份验证。 Lambda函数返回一个策略,AWS Transfer会选择该策略并将其用于锁定sftp用户权限。
此政策包括以下变量:
listener.concurrency=3
transfer:HomeFolder
transfer:HomeBucket
有关这些变量的作用的文档,请参见:Editing User Configuration - AWS Transfer for SFTP
当我尝试部署CloudFormation模板时,出现以下错误:
在调用CreateChangeSet操作时发生错误(ValidationError):模板格式错误:模板的资源块中未解决的资源依赖性[transfer:HomeFolder,transfer:HomeBucket,transfer:HomeDirectory]。
是否可以为策略变量transfer:HomeDirectory
,transfer:HomeFolder
,transfer:HomeBucket
覆盖CloudFormation参数?
这是我CloudFormation模板的Lambda部分:
transfer:HomeDirectory
答案 0 :(得分:0)
我怀疑CloudFormation可能对${xx}
块感到困惑,这些块在CloudFormation模板中具有特殊含义。
我认为您仅希望将这些值作为文本传递,然后在IAM政策中进行解释。
您应该能够通过在Python中拆分文本字符串来避免这种行为,例如:
"arn:aws:s3:::$""{transfer:HomeBucket}"