繁体   English   中英

使用oAuth2对WPF和PHP之间的请求进行身份验证?

[英]Authenticate requests between WPF and PHP using oAuth2?

我已经搜索了一段时间,但找不到与我的想法相关的任何内容。 我想用WPF构建一个应用程序,该应用程序将获取所有与用户相关的信息,并将请求发送到PHP脚本。 对于每个请求,我都使用SSL。

当用户注册时,他仅提交他的用户名,密码和电子邮件地址。 密码始终使用sha256在应用程序中存储为哈希,而在PHP中使用password_hash将该哈希存储为另一个哈希。

登录后,应用程序将根据用户操作发送请求。 为了验证每个请求,我都遇到了oAuth2。 oAuth2是验证请求的“最佳实践”还是有另一种方法? 登录后必须验证每个请求。

OAuth可能会是您最好的选择。 现在,在应用程序中工作时,能够验证请求和撤消令牌是关键。 由于其强大的身份验证和灵活性,许多顶级网站,Facebook,Twitter,Instagram等都使用OAuth。

对于我的公司,我们有定制的API,并且对所有API均使用OAuth。 即使它们是私有API,OAuth也会让我们能够在以后高兴的情况下推动公共使用。

不确定确切地是什么项目或它是如何工作的,坦率地说,我不需要。 我认为,使用OAuth不会出错。

有两种常见的方法来保护API请求:

  • 基本身份验证。 表格的标题

     Authorization: Basic base64(username:password) 

    与每个请求一起发送。 这很容易实现,但也很容易攻击。 您绝对必须通过HTTPS发送请求(因为未使用加密)。

  • 某种形式的OAuth 您可以在类似您的方案中使用密码授予类型:您将用户名和密码发送到OAuth服务器,并请求可用于每个请求的访问令牌 因为您必须实现令牌服务器,所以这更安全,更复杂。

您选择什么取决于很多因素,例如您的服务是内部还是外部服务,要在项目中构建多少复杂性以及目标用户是谁。

进一步阅读:

完全披露:我在一家为此构建API的公司工作。

暂无
暂无

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

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