middy-ssm 没有接受对 lambda 执行角色的更改

middy-ssm not picking up changes to the lambda's execution role

我们正在使用 middy-ssm 在 lambda 初始化期间获取和缓存 SSM 参数值。我们 运行 遇到这样一种情况,即 lambda 的执行角色无权在它试图获取的路径上执行 SSM::GetParameters。我们更新了关于角色的策略以允许访问,但看起来 lambda 函数似乎从未接受对权限的更改,而是由于缺少权限而一直失败,直到生命周期结束(接近 1 小时,因为请求不断到来到它)。

然后我做了一个测试,我直接使用 aws-lambda SDK 和 middy-ssm 获取参数。最初 lambda 角色没有权限,两种方法都失败了。我们更新了策略,几分钟后,使用 SDK 的代码能够检索到参数,但是 middy 中间件一直失败。

我试图解释 middy-ssm 的实现,以确定错误结果是否以某种方式被缓存或那里发生了什么,但无法真正查明问题所在。欢迎任何有识之士 and/or 提出如何克服这个问题的建议!谢谢!

所以正如 Will 在评论中指出的那样,这是一个错误。