AWS会话管理器,强制要求SSH密钥。

0

【以下的问题经过翻译处理】 你好,

我已经成功配置了AWS会话管理器,以便使用SSH密钥通过会话管理通道进行连接,具体方法见此文档-> https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started-enable-ssh-connections.html

但是现在我需要强制用户提供SSH密钥,因为即使我可以使用SSH密钥身份验证进入EC2实例,我仍然能够通过使用 aws ssm start-session 命令而不提供SSH密钥进行连接。

我认为可以添加某种策略来解决这个问题,类似于以下内容:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::accountid:user/test-user"
            },
            "Action": [
                "ssm:TerminateSession",
                "ssm:ResumeSession"
            ],
            "Condition": {
                "StringEquals": {
                    "ssm:StartSession/RequireSSH": "True" (此处参数由我设定) 
                }
            }
        }
    ]
}

但我不确定 "ssm:StartSession/RequireSSH": "True" 的位置应该填什么。

谢谢帮忙。

Joann

1 Antwort
0

【以下的回答经过翻译处理】 对我有用的是:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ssm:StartSession",
            "Resource": [
                "arn:aws:ec2:eu-north-1:<accountid>:instance/*",
                "arn:aws:ssm:*:*:document/AWS-StartSSHSession"
            ],
            "Condition": {
                "BoolIfExists": {
                    "ssm:SessionDocumentAccessCheck": "true"
                }
            }
        }
    ]
}

我在此处找到了解决方案:https://docs.aws.amazon.com/systems-manager/latest/userguide/getting-started-sessiondocumentaccesscheck.html

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen