首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >这个AWS EFS策略有什么问题?

这个AWS EFS策略有什么问题?
EN

Stack Overflow用户
提问于 2020-08-08 17:23:09
回答 1查看 2K关注 0票数 1

我对AWS非常陌生,我只是在尝试和尝试学习。因此,我有一个带有IAM角色的EC2实例。我还有一个EFS文件系统,其策略如下。我的目的是限制将访问点挂载到带有IAM角色的EC2实例。

但是,当我试图从EC2实例挂载时,访问被拒绝了。

mount.nfs4:服务器在挂载127.0.0.1时拒绝访问:

如果我将主体更改为"AWS“:"*”,则可以挂载访问点。根据文档,我可以将EC2实例使用的IAM角色指定为主体,但它似乎不起作用。

我怀疑我的问题在某种程度上是我附加到EC2实例的角色。该角色具有EFS客户端操作,但是当我查看IAM控制台中的角色并检查访问顾问时,它说该角色从未被访问过。所以我可能做了些根本错误的事。

代码语言:javascript
运行
复制
{
    "Version": "2020-08-08",
    "Id": "access-point-www",
    "Statement": [
        {
            "Sid": "access-point-webstorage",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::12345678:role/wwwservers"
            },
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite"
            ],
            "Resource": "arn:aws:elasticfilesystem:us-east-1:12345678:file-system/fs-987654da",
            "Condition": {
                "StringEquals": {
                    "elasticfilesystem:AccessPointArn": "arn:aws:elasticfilesystem:us-east-1:12345678:access-point/fsap-01ffffbfb38217bcd"
                }
            }
        }
    ]
}
EN

回答 1

Stack Overflow用户

发布于 2021-05-12 15:04:58

你允许我安装吗?否则,AWS试图将EFS卷挂载为匿名原则。

对于EC2,就像您的情况一样,您可能只是在调用挂载时提供了-o iam选项。

请参阅:https://docs.amazonaws.cn/en_us/efs/latest/ug/efs-mount-helper.html#mounting-IAM-option

对于ECS/任务定义,可以这样做:

就像这里:aws_ecs_task_definition.volume.efs_volume_configuration.authorization_config

代码语言:javascript
运行
复制
resource "aws_ecs_task_definition" "service" {
  family = "something"
  container_definitions = file("something.json")

  volume {
    name = "service-storage"
    
    efs_volume_configuration {
      file_system_id     = aws_efs_file_system.efs[0].id
      root_directory     = "/"
      transit_encryption = "ENABLED"
      authorization_config {
        iam = "ENABLED"
      }
    }
  }
}

iam -(可选)在挂载Amazon文件系统时是否使用在任务定义中定义的Amazon任务IAM角色。如果启用,则必须在EFSVolumeConfiguration中启用传输加密。有效值:已启用、禁用。如果省略此参数,则使用禁用的默认值。

如果您的CloudTrail中存在匿名主体试图挂载EFS的错误,这将对您有所帮助。那么,错误应该是这样的:

代码语言:javascript
运行
复制
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSAccount",
        "principalId": "",
        "accountId": "ANONYMOUS_PRINCIPAL"
    },
    "eventSource": "elasticfilesystem.amazonaws.com",
    "eventName": "NewClientConnection",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "elasticfilesystem",
    "errorCode": "AccessDenied",
    "readOnly": true,
    "resources": [
        {
            "accountId": "XXXXXX",
            "type": "AWS::EFS::FileSystem",
            "ARN": "arn:aws:elasticfilesystem:eu-west-1:XXXXXX:file-system/YYYYYY"
        }
    ],
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "XXXXXX",
    "sharedEventID": "ZZZZZZZZ",
    "serviceEventDetails": {
        "permissions": {
            "ClientRootAccess": false,
            "ClientMount": false,
            "ClientWrite": false
        },
        "sourceIpAddress": "nnnnnnn"
    }
}

注:"principalId": "","accountId": "ANONYMOUS_PRINCIPAL"

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63318267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档