我缺少 AWS Glue 和开发终端节点的哪些权限?

jon*_*ima 7 amazon-web-services amazon-iam aws-glue

当我尝试为 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" }
Run Code Online (Sandbox Code Playgroud)

我的角色具有以下权限。

  • AmazonS3完全访问
  • AWSGlueServiceNotebookRole
  • 亚马逊AthenaFullAccess
  • AWSGlueService角色
  • CloudWatchLogs只读访问
  • AWSGlueConsoleFullAccess
  • AWSCloudFormationReadOnlyAccess

关于我缺少什么的任何线索吗?

kri*_*004 10

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

其 json 应该如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "glue.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

信任关系的屏幕截图示例: 在此输入图像描述


小智 9

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

arn:aws:iam:::角色/服务角色/AWSGlueServiceRole-DefaultRole

记下路径中的“服务角色”。

但是,当选择该角色作为您想要在控制台向导中用于设置新的开发端点的角色时,它不会在路径中包含“服务角色”,而是会查找名为如下的角色:

arn:aws:iam:::角色/AWSGlueServiceRole-DefaultRole

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