0

当我连接到默认安装 AWS 实例连接的 Amazon-linux-2 实例时,我收到这样的错误

An error occurred (AccessDeniedException) when calling the SendSSHPublicKey operation: User: arn:aws:iam::7***********:user/EIC-user is not authorized to perform: ec2-instance-connect:SendSSHPublicKey on resource: arn:aws:ec2:eu-west-1:7***********:instance/i-065544409504*****

我为用户EIC-user附加的 IAM 政策是

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2-instance-connect:SendSSHPublicKey",
            "Resource": [
                "arn:aws:ec2:eu-west-1:7312********:instance/i-06554440950******"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:osuser": "dev"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeInstances",
            "Resource": "*"
        }
    ]
}

在我的 Ec2 实例中,我dev使用以下命令添加了一个名为的用户:useradd dev

如果我将"ec2:osuser": "dev"更改为"ec2:osuser": "ec2-user"那么它正在连接到 ec2-user 但我想连接到用户dev

我想连接到操作系统中的另一个用户,是否可以使用 AWS Instance Connect 中的默认用户以外的非默认用户登录????

如果我使用默认用户,一切都会完美......只有当我更改我想连接到用户dev的OSuser时才会发生错误请帮助我找出......

4

0 回答 0