📜  错误:更新 IAM 角色时出错 (lambda_exec) 假定角色策略:MalformedPolicyDocument:缺少必填字段 Principal (1)

📅  最后修改于: 2023-12-03 15:42:09.286000             🧑  作者: Mango

错误原因

更新 IAM 角色时出错 (lambda_exec) 假定角色策略,返回了 MalformedPolicyDocument 错误。具体地,角色策略缺少必填字段 Principal。

解决方法

需要找到这个 IAM 角色,检查其角色策略文档,确保其中主体部分(Principal)已填写正确。Principal 是指被授权的实体,可以是 AWS 账户、IAM 用户、IAM 角色等,所以在填写时需要注意选择正确的实体类型。

在填写策略文档时,可以参考 AWS 提供的官方文档,确保各字段填写正确和完整。

下面是一个示例策略文档,可以作为参考:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "lambda:*",
            "Resource": "arn:aws:lambda:us-east-1:123456789012:function:test",
            "Principal": {
                "Service": "glue.amazonaws.com"
            }
        }
    ]
}

在这个示例中,主体(Principal)是 AWS Glue 服务(glue.amazonaws.com),它被允许执行 Lambda 函数(arn:aws:lambda:us-east-1:123456789012:function:test)的所有操作。如果需要授权其他实体,可以相应地修改主体字段。