![使用 IAM 以特定用户身份登录 Google Cloud VM](https://linux22.com/image/781986/%E4%BD%BF%E7%94%A8%20IAM%20%E4%BB%A5%E7%89%B9%E5%AE%9A%E7%94%A8%E6%88%B7%E8%BA%AB%E4%BB%BD%E7%99%BB%E5%BD%95%20Google%20Cloud%20VM.png)
我使用 Ubuntu 22.04 映像创建了一个虚拟机,并使用 IAM 凭证(而不是 SSH 密钥)登录,例如:
gcloud beta compute ssh --zone myzone vmname --project myproj --tunnel-through-iap
我的命令提示符有我想要的用户名。
我刚刚创建了另一个虚拟机,它使用我的默认用户名ariel_balter_gmail_com
。
我不知道我对第一个虚拟机做了什么才使我的用户名变成我想要的。
在第一台机器上,我看到:
(base) balter@???????:~$ ls /home
balter ubuntu
和
(base) balter@????????:~$ cat /etc/passwd | grep balter
balter:x:1001:1002::/home/balter:/bin/bash
在第二台机器上,我创建了一个用户“balter”,我看到:
(base) ariel_balter_gmail_com@???????:~$ ls /home
ariel_balter_gmail_com balter
(base) ariel_balter_gmail_com@??????:~$ cat /etc/passwd | grep balter
balter:x:1000:1001:,,,:/home/balter:/bin/bash
我做了一些不同的事情,但我不知道是什么。
答案1
Google Cloud IAM 身份的格式与典型的 SSH Linux 身份不同。因此会创建单独的主目录。
您的 Linux 机器设置了两个用户:balter
和ariel_balter_gmail_com
。第一个可能是作为 SSH 的 Linux 用户创建的,另一个是由 Google Cloud 创建的。就 Linux 而言,它们是不同的身份。
您也无法控制 IAM 使用的用户身份字符串。它是根据 IAM 电子邮件地址创建的。