网站推广文案手机网站怎么导入微信
web/
2025/9/30 9:03:23/
文章来源:
网站推广文案,手机网站怎么导入微信,企业网上年审营业执照,怎么把底部的wordpress本文来自pilishen.com----原文链接; 欢迎来和pilishen一起学习phpLaravel#xff1b;学习群#xff1a;109256050OAuth2是一个安全框架#xff0c;控制着程序受保护部分的准入#xff0c;主要是控制不同的客户端如何来调取API#xff0c;保证它们在请求相应资源的时候… 本文来自pilishen.com----原文链接; 欢迎来和pilishen一起学习phpLaravel学习群109256050 OAuth2是一个安全框架控制着程序受保护部分的准入主要是控制不同的客户端如何来调取API保证它们在请求相应资源的时候有相应的权限。 Laravel Passport是一个强大的Oauth2服务实现使用Passport往往已经足以应对我们日常API开发中的各种需求甚至说大部分时候我们只是用到了Passport的部分功能而已。也正因为其强大所以理解和使用起来也有一定难度而这其中理解和熟悉oauth2相关的各种授权类型是关键授权类型理解了Passport也就没什么难的了。话不多说一起来看看不同的授权类型都是怎么回事吧。 概念理解 1. 客户端Client 指的是调取你程序API的那个应用或者说终端在Passport里创建客户端可以通过artisan命令来进行 php artisan passport:client 每一个客户端client都要有一个key, name, secret, redirect URI, user程序创建者/所有者 2. 资源拥有者Resource Owner 这个指的是客户端请求的那个API其背后所对应资源或者说数据的所有者user 3. 资源服务器Resource Server 这个也就是我们的API可以是不需要读取权限的公共数据也可以是需要验证权限的私有数据。公共数据或者说公开节点endpoints举个例子就是比如说搜索所有的tweets消息或者说搜索微信文章这不需要特别的权限谁都可以搜。另一方面假设说以某个用户的名义去发布post一个推特消息发一个朋友圈就需要来自这个用户的权限认证了。 4. 权限范围Scope 指的是获取特定数据或者进行特定操作的权限permission可以在AuthServiceProvider使用Passport::tokensCan()方法来具体定义权限scope Passport::tokensCan([read-tweets Read all tweets,post-tweet Post new tweet,
]); 5. 准入令牌Access token 当客户端程序想要取得某些受保护的数据时就要传递一个准入令牌Access token以此来验证当前请求request。 授权类型Grant Type 授权Grant说白了就是从资源服务器获取准入令牌Access token的方式也可以更通俗地说成颁发令牌token的方式。一共有五种授权方式其中四种是用来获取令牌Access token的另一个是用来刷新、或者说重新创建一个已有令牌token的。 1. 认证码授权Authorization Code grant 这是最常见的一种类型说白了就是第三方登陆也即当第三方的程序想着获取我们这边的受保护信息这个第三方程序必须得获得我们这边用户的认证授权。更直白的当第三方的客户端想着调用我们这边的用户信息来登陆他们的网站那么它得获得这个用户的认证授权。 大部分的流行API都会实现这一种授权类型。比如说Facebook当用户想着登陆我们的网站我们可以先把用户重定向到Facebook让他先登陆Facebook然后Facebook会询问这个用户是否同意我们的这个网站获取他在Facebook网站上的用户信息呢用户点了授权以后就又会被重定向回我们的网站同时呢会附上一条认证码Authorization Code然后呢我们的网站要利用这个认证码Authorization Code再去向Facebook换取准入令牌access token有了准入令牌以后我们才可以进一步获取该用户的详细信息。 这整个过程又通常被叫做“三条腿的Oauth”3-Legged OAuth当然了还有“两条腿的Oauth”2-Legged OAuth也就是接下来的这一种。 2. 模糊授权Implicit Grant Implicit是模糊、含蓄、不具体指明的意思这里呢译作模糊。模糊授权Implicit Grant跟上面的认证码授权Authorization Code类似不同的是我们的资源服务器返回的直接就是准入令牌access token而不是认证码authorization code。因此呢就不是需要三步才能获得token。“三条腿的Oauth”被证明是更好的可能你会纳闷既然更好还要这个“两条腿”的模糊授权Implicit Grant干啥 认证码authorization code授权需要的是一个服务器向另一个服务器Facebook发起请求获取认证码然后交换准入令牌。但如果我们面前是一个JS的APP它只是一个浏览器端那么就很难获取了认证码再交换准入token了这种情况下我们就需要用到这种模糊授权Implicit Grant 3. 用户密码授权Resource Owner Password Credentials Grant Resource Owner User 这种类型适合于我们信任的客户端比如我们自己的手机APP来访问网站数据这个时候客户端直接使用用户的登陆密码信息请求资源服务器服务器直接返回准入令牌access token。 4. 客户端资质授权Client Credentials Grant 这个适合于访问API的这个客户端本身就是相应数据的所有者的时候这期间不涉及到用户的互动说白了就是纯粹的机器与机器之间的沟通。比如说一个App想着向用户显示一个对话框或者储存一些跟这个App相关的数据到我们的资源服务器上。 5. 令牌刷新授权Refresh token grant 当服务器生成一个令牌token的时候同时也会设置一个token的有效期或者说失效期。令牌刷新授权Refresh token grant就是当我们的token过期了我们得需要将其刷新一下重新生成一个。这种情况下验证服务器会在生成准入token的同时发送一个refresh token刷新令牌好后期用来生成一个新的token。需要注意的是这个流程并不适合于模糊授权Implicit Grant。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84370.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!