我在 AWS 中创建了一个 lambda 函数,用于基于查找访问资源。
例如:我想通过 API 网关查询客户 FOO 的 dynamoDB 表 FOO_BAR。
收到请求后,我确定了其所需的表 FOO,并且我希望能够将策略应用于我当前的 lambda 函数/ session ,以授予对 FOO_BAR 表的访问权限。
我的问题是:对于能够查询表 FOO_BAR 的 lambda 函数,创建 lambda 函数时配置的执行角色需要具有读取权限,我不想向该角色授予任何通配符访问权限。
所使用的 API 通过自定义授权器,我在这里应用了访问 API 的策略;我还希望我的 lambda 函数也能继承自定义授权器生成的策略。
您能否动态授予 lambda 函数访问资源的权限?
谢谢!
最佳答案
您的 Lambda 函数无法从您的自定义授权方继承权限。
您可以在 Lambda 函数内授予权限或生成新的 IAM 凭证,并通过单独的客户端实例将它们用于 DynamoDB 调用。
我不确定您的方法是否比通配符提供任何安全优势。向自身授予权限的函数具有完全相同的安全级别。
关于amazon-web-services - 您如何动态授予 AWS Lambda 函数访问资源的权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39095943/