Google 端点:IDE(或终端)在上传代码时如何向 GAE 进行身份验证?
Google Endpoints: How does the IDE (or terminal) authentify to GAE when uploading code?
我是 Google 端点和数据存储的新手。我已经学习了几个教程,例如这个教程:https://github.com/GoogleCloudPlatform/endpoints-codelab-android
我的问题是:当我们将 Endpoints 后端应用程序部署到 Google App Engine 时使用的安全机制是什么? Google App Engine 如何知道您是项目的所有者?对于通过终端部署(参见上述教程的第 6 步)和通过 IDE(例如通过 Eclipse 中的 Maven)部署,我都有同样的问题。
我想象终端(或 IDE)以某种方式从浏览器获取您的凭据,该凭据已登录到 GAE 控制台,但我完全不确定这是不是一个很好的解释。
谢谢! :-)
部署到 Google App Engine 时,有多种身份验证方法。推荐的方法使用 OAuth2 与 Google 进行身份验证(另一种方法见下文)。 OAuth2是你说的教程中使用的方法(在你发的link中搜索oauth),通过setting
激活
appcfg {
oauth2 = true
}
在该教程的 build.gradle
文件中。如果您更喜欢命令行 appcfg
界面,请使用标志 appcfg --oauth2
.
当您安装 Google Cloud SDK 时,您会看到一个网页,您在该网页中授权 SDK 访问和修改各种 Google 云服务,包括 App Engine。 SDK 在本地存储一个令牌,表示允许使用您的用户名将其部署到 App Engine。 oauth2 = true
行告诉 appcfg 使用此令牌请求访问 App Engine。
如果愿意,您可以导航至 Google 的 Account Permissions 页面来查看(和撤销)此授权。您应该会看到 Google Cloud SDK 的条目,单击它会显示 SDK 已获得访问 App Engine 的授权。如果您点击 "Revoke",本地存储的令牌将不再有效,您需要重新授权才能使用 Cloud SDK 的大部分功能。
如果出于某种原因你不想依赖 oauth2(例如,如果出于安全原因你想在每次部署时输入密码),那么你可以删除 oauth2 = true
行(或--oauth2
命令行参数)。这将导致 appcfg 在您每次部署时提示您输入 Google 用户名和密码。但是,这不太方便,因为 appcfg 不会存储您的密码,而且它不支持双因素身份验证。因此,如果您的 Google 帐户使用双因素身份验证(强烈推荐),您将需要使用此方法的应用密码。
我是 Google 端点和数据存储的新手。我已经学习了几个教程,例如这个教程:https://github.com/GoogleCloudPlatform/endpoints-codelab-android
我的问题是:当我们将 Endpoints 后端应用程序部署到 Google App Engine 时使用的安全机制是什么? Google App Engine 如何知道您是项目的所有者?对于通过终端部署(参见上述教程的第 6 步)和通过 IDE(例如通过 Eclipse 中的 Maven)部署,我都有同样的问题。
我想象终端(或 IDE)以某种方式从浏览器获取您的凭据,该凭据已登录到 GAE 控制台,但我完全不确定这是不是一个很好的解释。
谢谢! :-)
部署到 Google App Engine 时,有多种身份验证方法。推荐的方法使用 OAuth2 与 Google 进行身份验证(另一种方法见下文)。 OAuth2是你说的教程中使用的方法(在你发的link中搜索oauth),通过setting
激活appcfg {
oauth2 = true
}
在该教程的 build.gradle
文件中。如果您更喜欢命令行 appcfg
界面,请使用标志 appcfg --oauth2
.
当您安装 Google Cloud SDK 时,您会看到一个网页,您在该网页中授权 SDK 访问和修改各种 Google 云服务,包括 App Engine。 SDK 在本地存储一个令牌,表示允许使用您的用户名将其部署到 App Engine。 oauth2 = true
行告诉 appcfg 使用此令牌请求访问 App Engine。
如果愿意,您可以导航至 Google 的 Account Permissions 页面来查看(和撤销)此授权。您应该会看到 Google Cloud SDK 的条目,单击它会显示 SDK 已获得访问 App Engine 的授权。如果您点击 "Revoke",本地存储的令牌将不再有效,您需要重新授权才能使用 Cloud SDK 的大部分功能。
如果出于某种原因你不想依赖 oauth2(例如,如果出于安全原因你想在每次部署时输入密码),那么你可以删除 oauth2 = true
行(或--oauth2
命令行参数)。这将导致 appcfg 在您每次部署时提示您输入 Google 用户名和密码。但是,这不太方便,因为 appcfg 不会存储您的密码,而且它不支持双因素身份验证。因此,如果您的 Google 帐户使用双因素身份验证(强烈推荐),您将需要使用此方法的应用密码。