繁体   English   中英

使用用户名/密码访问Google Calendar API

[英]Access Google Calendar API with username/password

我正在写一个小客户端来同步一台机器上的Outlook日历与用户的谷歌日历。 我正在使用.Net(C#)。 我刚刚阅读了有关使用适用于.NET的Google API客户端库访问Google Calendar API的信息,并尝试了一些基本内容。

现在关于授权,据我所知,新的“OAuth 2.0”授权需要“用户同意”,这意味着用户被定向到谷歌页面,他们必须明确允许我的应用程序访问他们的日历。 好像这个用户交互还不够,我作为程序员必须处理“访问令牌”或“刷新令牌”以及所有这些东西。

现在我的问题是:是否真的没有更简单的方法让安装的应用程序与谷歌API通信以访问用户的日历?

我希望我的用户在“设置”对话框中输入他的用户名/密码。 他的凭据将存储在本地(当然是加密的),然后通过google API在以后的每次访问中使用。 我知道这可能是危险的,但是我希望这个决定能够和我说谎。

那么,这可能吗?

不,这是不可能的。 OAuth的全部意义在于用户永远不会向第三方(您)提供其用户名和密码。 您唯一获得的是一个令牌,允许您连接用户可以随时撤消的令牌。 (此外,如果用户更改了密码,您仍然可以使用相同的已保存令牌,而无需让用户更新其设置)。

如果您决定通过保存用户名和密码以及自行执行“授权”来解决此问题,那么您将违反API的服务条款,并且您的应用程序将被Google(或任何OAuth提供商禁止,如果您尝试使用与其他人一起)不遵守规则。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM