【问题标题】:An API for creating and managing Google Cloud Console projects?用于创建和管理 Google Cloud Console 项目的 API?
【发布时间】:2014-01-24 14:21:30
【问题描述】:

我相信有一个未记录的 Google API 可用于代表第三方用户创建和管理 Google Cloud Console(和 App Engine)项目。

有人知道怎么用吗?

我认为旧版本的 Google Eclipse 插件在(未记录的)范围 https://www.googleapis.com/auth/appengine.admin 中获得了 OAuth2 令牌,这使其能够代表您生成 Cloud Console 项目。最新版本似乎没有这样做。 App Engine 自己的 appcfg.py 也使用这个范围,但似乎除了部署代码之外没有做更多的事情——我希望更改项目的核心设置,例如名称、重定向 URL 和 Web 来源。

任何信息将不胜感激。

我维护一个 WordPress 插件,为最终用户提供安全的 Google Apps 登录,目前必须向管理员提供详细说明,以手动创建新的 Cloud Console 项目并输入重定向 URL 等设置。理想情况下,我会创建一个简单的在线服务来为他们完成所有这些工作。

谢谢!

【问题讨论】:

  • 你找到答案了吗?我也确信它的存在,因为诸如 codenvy 和 devtable 之类的云 IDE 请求一个 oauth2 范围,在 oauth2 对话框中显示为“查看和管理部署在 Google App Engine 上的应用程序”,然后显示为“有权访问 Google App Engine Admin安全配置文件页面中的“控制台”。
  • @GwynHowell 没有答案,尽管尝试与一些 Google 人接触......旧版本的 Google Eclipse 插件肯定代表用户创建了项目,但最新版本没有,所以我想知道谷歌是否真的试图阻止 API 的使用。我还尝试查看 Google Eclipse Plugin 源代码以查看是否会提供任何线索,但源代码并不容易获得 - 即网络上可用的版本不清楚它是哪个版本,并且无法编译!如果你也有任何地方,请告诉我!
  • 确定-感谢您的更新。如果我找到任何东西,我会更新这篇文章
  • 在我看来,缺少用于创建项目的 API 是 Google 有意做出的决定,原因与没有用于创建新 Gmail 帐户的 API 相同:防止滥用。在开发者控制台中滥用什么?很多!服务帐户(免费的 15GB 云端硬盘存储空间)、额外的 API 配额、App Engine 免费层级以及许多其他内容...

标签: google-app-engine google-cloud-console


【解决方案1】:

可以代表 Google 帐户以编程方式创建新的开发者控制台项目(是的,您没看错)。你这样做非常迂回:

  1. 向用户请求 https://www.googleapis.com/auth/drive.scripts 范围(标准 OAuth 2.0 流程)。
  2. 使用 Drive API 的 drive.insert 方法创建一个 mimetype 为 application/vnd.google-apps.script 的新文件。
  3. 以某种方式尝试获取项目 ID,可能是通过上传一些 Apps 脚本代码?这是我一直想不通的部分。

一个鲜为人知的事实是,每个 Google Apps 脚本项目都有一个隐藏的开发者控制台项目与之关联。该项目没有显示在项目列表中,但它确实存在。它是在用户启动新的 Apps Script 项目时自动创建的,drive.insert 方法足以导致这种情况发生。

你是如何进入隐藏项目的?好吧,我知道的唯一方法是从 Drive 网站打开 Apps Script 项目,打开“资源 > 高级 Google 服务”对话框,然后单击开发人员控制台的链接。您将在 URL 中找到项目 ID。

除了没有显示在您的项目列表中并且无法使用 App Engine 之外,这是一个普通的开发者控制台项目。您可以添加额外的 OAuth 客户端凭据、服务帐户、Compute Engine 实例等。当然,一旦您有了项目 ID,所有各种管理 API 都将起作用:创建新虚拟机,利用服务帐户的模拟能力,等等

【讨论】:

    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 2017-02-09
    • 2015-02-24
    • 2021-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多