如何在通过Session Manager访问AWS Linux EC2时自动切换到ec2-user用户?

0

【以下的问题经过翻译处理】 我有一个需求,让客户通过会话管理器访问ec2 linux实例,但是登录后,用户是ssm-user,有没有办法自动切换为ec2-user。这意味着客户不需要手动切换到ec2-user?

profile picture
EXPERTE
gefragt vor 5 Monaten32 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 当您运行 aws ssm start-session 时没有指定文档名称,SSM 将使用一个名为 SSM-SessionManagerRunShell 的默认文档,该文档归您所有。

如果您在 AWS 文档 Session document schema 中查看会话文档架构,您将看到两个属性可以帮助您更改连接的用户:runAsEnabledrunAsDefaultUser

如果您回到默认会话文档 SSM-SessionManagerRunShell 的定义,您将看到它定义如下:

{
  "schemaVersion": "1.0",
  "description": "Document to hold regional settings for Session Manager",
  "sessionType": "Standard_Stream",
  "inputs": {
    "s3BucketName": "",
    "s3KeyPrefix": "",
    "s3EncryptionEnabled": true,
    "cloudWatchLogGroupName": "",
    "cloudWatchEncryptionEnabled": true,
    "idleSessionTimeout": "20",
    "maxSessionDuration": "",
    "cloudWatchStreamingEnabled": true,
    "kmsKeyId": "",
    "runAsEnabled": false,
    "runAsDefaultUser": "",
    "shellProfile": {
      "windows": "",
      "linux": ""
    }
  }
}

要连接为不同的用户,您可以执行以下操作之一:

  • 创建新文档以连接:

创建一个名为 SSM-SessionManagerRunShellAsEc2User 的新文档,然后在其定义中将 runAsEnabled 设置为 true,并将用户名放入 runAsDefaultUser字段中

{
  "schemaVersion": "1.0",
  "description": "Document to hold regional settings for Session Manager",
  "sessionType": "Standard_Stream",
  "inputs": {
    "s3BucketName": "",
    "s3KeyPrefix": "",
    "s3EncryptionEnabled": true,
    "cloudWatchLogGroupName": "",
    "cloudWatchEncryptionEnabled": true,
    "cloudWatchStreamingEnabled": true,
    "idleSessionTimeout": "20",
    "
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