C# 谷歌数据API集成-哪种认证模式?

C# 谷歌数据API集成-哪种认证模式?,c#,google-calendar-api,google-data-api,google-authentication,C#,Google Calendar Api,Google Data Api,Google Authentication,我正在开发一个web应用程序,该应用程序将直接与特定Google帐户关联的Google日历集成。Google Data API访问的帐户不太可能更改,因此我不确定最合适的帐户身份验证方法是什么 我已经审查了Aviable的选项,这似乎是不合适的,因为我不会将用户登录到他们自己的帐户-只显示和更新一个固定帐户。其他可用的选项包括身份验证和身份验证。在所有这些应用程序中,ClientLogin似乎是最合适的,但文档中指出它是为已安装的应用程序设计的。虽然我正在开发的web应用程序不是专门安装的应用程

我正在开发一个web应用程序,该应用程序将直接与特定Google帐户关联的Google日历集成。Google Data API访问的帐户不太可能更改,因此我不确定最合适的帐户身份验证方法是什么

我已经审查了Aviable的选项,这似乎是不合适的,因为我不会将用户登录到他们自己的帐户-只显示和更新一个固定帐户。其他可用的选项包括身份验证和身份验证。在所有这些应用程序中,ClientLogin似乎是最合适的,但文档中指出它是为已安装的应用程序设计的。虽然我正在开发的web应用程序不是专门安装的应用程序,但它与此场景中的应用程序非常相似——这就是为什么我认为ClientLogin最有意义的原因

在这种情况下,哪种Google身份验证选项最合适?

在我看来,OAuth是实现目标的最安全的方式。Google建议Web应用程序使用OAuth或AuthSub而不是ClientLogin。此外,使用OAuth和AuthSub可以防止应用程序控制用户的电子邮件和密码,这意味着您不需要采取额外的步骤来保护和更新信息。在OAuth和AuthSub之间,OAuth被更普遍地采用,并且由于请求是经过签名的,所以更安全。希望有帮助


编辑:所以我完全误解了你的应用程序在做什么,如果你只使用你的谷歌帐户,任何身份验证方法都可能是好的,谷歌推荐OAuth或AuthSub用于web应用程序。然而,要了解OAuth和AuthSub的重要内容是令牌的生命是什么。如果没有办法使令牌持续很长时间(数月、数年),那么我将尝试使用ClientLogin,因为这样您的应用程序将始终能够登录到该帐户。不过,为了安全起见,我建议您不要在应用程序中使用您的主要google帐户,而是创建第二个帐户,并与您的主要帐户共享日历,这样,如果您的应用程序受到威胁,您就不会丢失您的主要google帐户。

谢谢您的输入。我是否误解了OAuth实现更适合于用户使用Google识别自己的帐户并编辑个人数据的场景?我的应用程序将驱动Google日历,我的应用程序的用户将间接向我的日历添加数据。请查看此链接:。有趣的是,他们推荐AuthSub,尽管OAuth对我来说可能是一个更好的方法。请参阅我上面的编辑。基于该文本,我认为我不适合这两个描述符,因为我的应用程序是单用户web应用程序:“如果您的客户端是一个独立的单用户“安装”客户端(如桌面应用程序),然后你应该使用ClientLogin系统;如果您的客户端是多用户web应用程序客户端,则应使用AuthSub系统。”