Google compute engine gcloud计算列表网络错误:“0”;某些请求未成功:-权限不足“;

Google compute engine gcloud计算列表网络错误:“0”;某些请求未成功:-权限不足“;,google-compute-engine,google-cloud-platform,gcloud,Google Compute Engine,Google Cloud Platform,Gcloud,我已经创建了一个项目并安装了Windows 2012虚拟机。我正在尝试列出项目中的网络。以下是我执行的步骤: 最初,我根据创建VM时创建的凭据登录VM。 从那里,打开了Google Cloud SDK外壳(作为管理员) 接下来,我将项目名称设置为: C:\windows\system32> gcloud config set project <proj-name> 首先使用命令对该工具进行身份验证并获取凭据 这是所创建虚拟机的凭据权限问题 要解决此问题,您可以使用gcloud

我已经创建了一个项目并安装了Windows 2012虚拟机。我正在尝试列出项目中的网络。以下是我执行的步骤:

最初,我根据创建VM时创建的凭据登录VM。 从那里,打开了Google Cloud SDK外壳(作为管理员) 接下来,我将项目名称设置为:

C:\windows\system32> gcloud config set project <proj-name>

首先使用命令对该工具进行身份验证并获取凭据

这是所创建虚拟机的凭据权限问题

要解决此问题,您可以使用
gcloud auth login
并通过浏览器登录到您的Google帐户。您还可以在云控制台中创建服务帐户并将其加载到计算机上,然后使用
gcloud auth activate service account
进行激活


这个问题最容易在中看到。导航到此VM的实例页面;您将看到如下内容:

请注意,“Compute”设置为“Disabled”

要在云控制台中创建新VM实例时更改这些权限,请展开“管理、磁盘、网络、访问和安全选项”视图:

然后,导航到“访问和安全”并更改“计算”的权限:

这将创建新的虚拟机,该虚拟机具有对项目的Google计算引擎设置的读取权限


要使用
gcloud
创建新实例,请将以下标志添加到
gcloud compute instances create

--scopes "https://www.googleapis.com/auth/compute.readonly"
您还需要添加您想要的任何其他权限。

正如Misha Brukman在中回答的那样,您不必包含url(因为这可能会更改),只需键入--scopes选项“compute-rw”,如所示:

gcloud计算实例创建——作用域计算rw
如果您已经创建了vm实例,只需像下面这样使用等效的update命令:

gcloud compute instances update <vm name> --scopes compute-rw
gcloud计算实例更新--scopes compute rw

当我试图执行“gcloud计算区域列表”命令时(当我使用“在浏览器窗口中打开”选项登录到GCP实例时),我遇到了相同的错误

下面是我为解决这个问题而执行的步骤

步骤1:使用“查看gcloud命令选项”登录到GCP实例

步骤2:单击“在云中运行Shell命令”

步骤3:执行gcloud特定命令。在我的例子中是“gcloud计算区域列表”。


你好!!它像魔术一样工作

看起来我们很快也可以在正在运行的实例上更改此选项-现在我们可以更改一个实例(在控制台中单击该实例并使用上面的
EDIT
按钮)。我们必须更改
云API访问范围
。例如,您可以将其设置为
允许完全访问所有云API
gcloud compute instances create <vm name> --scopes compute-rw
gcloud compute instances update <vm name> --scopes compute-rw