我需要访问OAUTH2的密码授予类型

时间:2014-02-08 18:04:14

标签: oauth google-oauth

我为一家大公司工作,我们正在开发一个需要访问令牌而无需网络浏览器界面的应用程序。原因是我们有一个技术限制,我们无法向用户提供辅助键盘,以便他们输入他们的Google凭据。我们可以在设备上提供键盘供用户验证。

授权是OAuth2的第一步,实施的服务OAuth2通常会弹出浏览器询问用户登录和同意,例如访问Google API,无论应用程序类型,应用程序,移动应用程序等。 ,授权将通过用户的登录和弹出同意来完成。这不是我们想要的。

OAuth2还提供“密码”授权类型,可用于直接交换访问令牌的用户名和密码,而无需重定向(弹出)。这也是我们从谷歌寻找的东西。但是,Google官方开发者网站上没有此类OAuth的任何信息。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

Google不提供密码授予类型,也不太可能这样做。

如果您的应用专用于Google Apps用户,则可以创建服务帐户并让域管理员将其列入白名单以获取一组API。有关详细信息,请参阅https://developers.google.com/accounts/docs/OAuth2ServiceAccounthttps://support.google.com/a/answer/162106

答案 1 :(得分:0)

作为一种解决方法,也许您可​​以在单独的应用中执行身份验证。流程看起来像这样

  1. 创建一个网页,提示用户输入身份验证,并请求离线访问。
  2. 只有一次,在他选择的PC上,用户访问该页面并给出他的身份验证。您现在有一个用户的刷新令牌,您将存储(可能在服务器上)
  3. 您的应用需要访问该刷新令牌,因此一旦您的用户对自己进行身份验证,该应用可以检索刷新令牌,将其转换为访问令牌,而Robert是您父亲的兄弟