是否需要浏览器重定向才能获得自动化和访问令牌?有没有办法以编程方式获得自动化?我有点惊讶我在OAuth2谷歌文档中发现了这一点:
https://developers.google.com/accounts/docs/OAuth2#scenarios> 章节 已安装的应用程序
序列首先将浏览器(嵌入在应用程序中的浏览器或系统浏览器)重定向到带有一组查询参数的 Google 网址,这些参数指示应用程序所需的 Google API 访问类型......
我们运行小型java实用程序应用程序,其中包含我们的Google帐户配置文件中的用户名和密码。 我希望有办法在没有任何浏览器交互的情况下获得自动化和访问令牌(当我们在虚拟服务器上将其作为 cron 作业运行时,这有点困难)......
它是关于凭据持有者(用户)和身份验证实体之间的可信路径(可以通过谷歌应用的服务器,openID或Facebook...)。使用 OAuth 的人,向他信任的服务器提供其凭据,反过来,此服务器不会泄露有关他的任何机密数据,从而为您的应用提供身份保证。
因此,您必须提供通往 Oauth porvider 的可信路径。这可以通过在应用中打开一个简单的 http 服务器并打开指向它的用户浏览器来完成,然后使用浏览器完成身份验证,身份验证完成后,您的服务器将接收 OAuth 响应,您的应用程序可以对用户进行身份验证。
就是这个想法,我不会将我的"全局"凭据输入到某个应用程序,并相信它不会,稍后复制和使用它们。您已在特定 OAuth 提供商中注册,只有他应该知道并接收您的凭据。