首页 文章

计算引擎SSH:您没有足够的权限SSH到此实例

提问于
浏览
1

我无法通过浏览器或gcloud使用ssh访问我的Google Cloud 计算引擎实例 . 我的用户帐户具有所需的 compute.instances.osLogin 权限(实际上它具有 Owner 角色)并且我已将 enable-oslogin 设置为 TRUE .

浏览器中的错误:

You do not have sufficient permissions to SSH into this instance. You need one of compute.instances.setMetadata, compute.projects.setCommonInstanceMetadata or compute.instances.osLogin (with OsLogin enabled) and iam.serviceAccounts.actAs.

gcloud中的错误:

ERROR: (gcloud.compute.ssh) User [my-email@gmail.com] does not have permission to access user [my-email@gmail.com:importSshPublicKey] (or it may not exist): The caller does not have permission

我甚至也遇到了新创建的实例的问题 .

1 回答

  • 3

    显然将 enable-oslogin 设置为 TRUE 它会阻止使用ssh密钥进行SSH登录,我们只能使用服务帐户来访问该实例 .

    我删除了 enable-oslogin meta项目范围和特定于实例的两者,并且在浏览器和终端中都修复了登录 .

    编辑:GCP支持答案:

    我很高兴您能够在禁用操作系统登录后SSH到您的实例 . 但是,您想知道可能导致此错误的原因 . 从技术上讲,操作系统登录功能允许您使用IAM角色管理实例访问 . 但是,在实例上启用操作系统登录会禁用这些实例上基于元数据的SSH密钥配置 . 禁用操作系统登录可恢复已在项目或实例元数据中配置的SSH密钥 . 有关启用操作系统登录的更多详细信息,请参见下文 . https://cloud.google.com/compute/docs/instances/managing-instance-access#enable_oslogin

相关问题