我缺少 AWS Glue 和 Development Endpoint 的哪些权限?

What permission am I missing for AWS Glue and Development Endpoint?

我在尝试为 AWS Glue 创建开发终端节点时遇到以下错误。

{ "service":"AWSGlue",
"statusCode":400,
"errorCode":"ValidationException",
"requestId":"<here goes an UUID>",
"errorMessage":"Role arn:aws:iam::<IAM ID>:role/AWSGlueServiceRole-DefaultRole 
      should be given assume role permissions for Glue Service.\n",
"type":"AwsServiceError" }

并且我的角色具有以下权限。

关于我遗漏了什么的任何线索?

在你们的信任关系中,应该与glue.amazonaws.com建立信任。您的角色 (AWSGlueServiceRole-DefaultRole) 可能没有这个。要确认,请转到 IAM 角色控制台,select IAM 角色:AWSGlueServiceRole-DefaultRole,然后单击 Trust Relationship 选项卡。

此 json 应如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "glue.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

信任关系的示例屏幕截图:

这个问题在某种程度上与我已经搞砸的旧角色有关。在 this link and this link 之后创建了一个全新的开发角色,效果非常好。

我也被这个绊倒了;问题是,当您使用控制台创建默认粘合服务角色时,它最终会像这样创建 IAM 角色:

arn:aws:iam:::role/service-role/AWSGlueServiceRole-DefaultRole

记下路径中的 "service-role"。

But then when choosing that role as the role you want to use in the console wizard for setting up a new dev endpoint it doesn't include the "service-role" in the path and looks for a role named like这个:

arn:aws:iam:::role/AWSGlueServiceRole-DefaultRole

我认为这只是用于创建开发端点的控制台向导中的一个错误。我通过创建一个路径中没有 "service-role" 的新角色来解决这个问题,然后在控制台向导中选择该角色并能够成功创建一个开发端点。