我正在使用Laravel API构建AngularJS应用程序。我正在寻找认证几天,但我被卡住了。
我发现OAuth 2.0是一种默认身份验证,也被Facebook和Twitter使用等等。我发现很多教程都是关于在Facebook和Twitter或Google上使用OAuth 2.0。但是,我不想用Facebook验证用户身份,但我想使用我自己的数据库中的用户凭据来构建我自己的身份验证。所以我想,我需要自己的OAuth提供商。
对于想要使用我们数据的其他公司(它是小学的网络应用程序),身份验证必须非常安全且易于连接。
我相信这个问题可能有很多答案。但是,我也相信很多人都有同样的问题;)
谁能解释我如何使用OAuth 2.0或类似的身份验证方法?
答案 0 :(得分:2)
您是对的 - 如果您想要实施OAuth 2.0,您需要成为自己的提供商(或授权服务器)。作为您自己的提供者还意味着您实际上可以跳过该过程的某些部分(例如,如果用户确实想要授予此应用程序权限,那么屏幕上会显示确认...)
如果您决定使用OAuth 2.0,那么广泛使用的名为oauth2-server-laravel的软件包可以帮助完成整个过程。
但是,您也可以开发自己的基于令牌的身份验证系统。实际上基础很简单:
然后根据要求检查令牌是否在数据库中(并且还没有过期)
死简单吧?嗯......正如你可能已经知道的那样,这很容易成为现实 特别是在安全性非常重要的地方,你必须考虑每一个案例,你应该真正了解自己在做什么。这就是我建议您使用OAuth标准的原因。是的,这可能有点矫枉过正,但我相信它是值得的。
希望我能提供帮助:)