[ Laravel 5.8 文档 ] 官方扩展包 —— API 认证解决方案:Laravel Passport

简介 Laravel 通过传统的登录表单已经让用户认证变得很简单,但是 API 认证怎么实现?API 通常使用令牌(token)进行认证并且在请求之间不维护会话(Session)状态。Laravel 官方扩展包 Laravel Passport 让 API 认证变得轻而易举,Passport 基于 Alex Bilbie 维护的 League OAuth2 server,可以在数分钟内为...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:令牌作用域详解

通过前面几篇教程,学院君给大家完整介绍了 API 认证的各种实现方式,你应该可以总结出一个规律:API 接口认证归根结底其实就是获取授权令牌,然后在请求中带上这个令牌对认证接口进行访问的过程,不同的实现方式其实就是获取令牌的方式不同而已,后面都是一样的。 除此之外,在认证过程中,有时候我们还需要对令牌的授权作用域进行限制,不是认证接口的所有返回数据都可以通过该令牌进行访问,或者不是所有接...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:隐式授权令牌

后端系统设置 隐式授权令牌和通过授权码获取令牌有点类似,不过,它不需要获取授权码,就可以将令牌返回给客户端,通常适用于同一个公司自有系统之间的认证,尤其是客户端应用不能安全存储令牌信息的时候。 要启用该授权,需要在后端系统 AuthServiceProvider 的 boot 方法中调用 enableImplicitGrant 方法: public function boot() { ...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:沙箱测试篇(私人访问令牌)

还有一种获取访问令牌的方式叫做私人访问令牌。这种授权方式比较特殊,不需要授权码,也不需要用户输入登录凭证,而是用户给自己颁发访问令牌。这种授权方式在用户测试、体验平台提供的认证 API 接口时非常方便,比如微信开放平台和支付宝开发平台都有沙箱测试模式,在这种测试模式下获取授权令牌的方式其实就是通过私人访问令牌来实现的。 下面我们就来简单演示下如何使用私人访问令牌获取令牌访问认证 API。...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:开放平台篇(客户端凭证令牌)

前面两篇教程我们陆续介绍了通过密码授权获取令牌和通过授权码获取令牌访问需要认证的 API 接口,这篇教程我们来介绍第三种通过授权获取令牌的方式 —— 客户端凭证令牌。这种授权方式不需要走典型的登录或授权重定向流程,适用于机器与机器之间的接口认证,类似我们做微信、微博、支付宝开放平台开发,需要先申请自己的应用,申请通过后,这些开放平台会给我们分配对应的 APP ID 和 APP SECRE...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:第三方应用篇(授权码获取令牌)

上一篇教程我们主要介绍了公司自有系统之间如何通过用户凭证获取授权码访问认证 API 接口,如果我们自己也是一个开放平台,需要支持第三方应用户接入获取认证信息呢?比如我们常见的第三方应用接入微信登录、微博登录、QQ 登录就是这样的例子。我们把自己的系统比作微信、微博这样的平台,支持第三方 App、网站应用的接入,这个时候如果还像上篇教程介绍的那样访问认证资源,就有安全隐患了,如果第三方应用...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:移动端应用篇(密码授权令牌)

注:虽然教程的名字叫移动应用篇,但是完全适用于同一个公司不同系统间的认证,包括不同 Web 网站间认证。 虽然我们在上一篇教程中做好了 Passport 后端初始化配置,但是注册的相关路由和初始化的数据库数据并没有用到,从这一篇教程开始,我们将基于 Passport 实现一些更复杂的 API 授权认证,会逐步用到这些路由和数据库记录。 我们在上一篇教程中已经介绍了单页面应用的 API ...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过 Passport 实现 API 请求认证:单页面应用篇

OAuth 与 Passport 前面我们介绍的用户认证都是基于 Web 请求路由的,本质上都是基于 Session 实现的用户认证。在前后端分离大行其道的时代(这里提到的前后端分离包括前端与后端、App与后端、小程序与后端),基于 API 请求的认证也非常常见,但是我们知道常见的 Session 技术都是结合客户端 Cookie 来实现的,从后端剥离出去的前端应用无法通过 API 请求...

[ Laravel 5.7 文档 ] 安全系列 —— API 认证(Passport)

简介 Laravel 通过传统的登录表单已经让用户认证变得很简单,但是 API 认证怎么实现?API 通常使用令牌(token)进行认证并且在请求之间不维护会话(Session)状态。Laravel 官方扩展包 Laravel Passport 让 API 认证变得轻而易举,Passport 基于 Alex Bilbie 维护的 League OAuth2 server,可以在数分钟内为...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(三) —— 安装配置 Laravel Passport

早在 Laravel 5.3 中就已经引入了 Laravel Passport(详情查看相关文档),如果你还没有用过它,实在让人难以置信,通过 Laravel Passport,你可以在几分钟内搭建起一个功能完备的 OAuth 服务器,用户可以像 Github、微信、QQ、Google 那样基于你提供的 OAuth 服务登录到不同的 Web 服务。不过,我们的目标是不同设备通过同一个入口...