1.什么是设备授权码模式
设备授权码模式是 OAuth 2.1 的一种授权模式,旨在解决设备(即客户端)需要访问某些受限的资源但又无法在设备上直接输入用户凭证的情况,比如智能电视、游戏机、IoT 设备、打印机等。它是一种再Spring Security高版本之后出现的一种新的认证方式。其整体工作流程大体分以下七个步骤:
1:设备本身(客户端)发起与授权服务器的通信(比如访问受限资源时发起该请求),post请求、地址形如oauth2/device_authorization,其携带的参数为client_id:设备的唯一标志,scope:授权范围(非必填,如果是多个时只能以空格进行拼装),请求返回信息为user_code,device_code,
verification_uri_complete(也可以访问该地址,转发到登录页,登录完成后就直接跳转到授权页面,因为携带了userCode所以减少了一步,没有3过程),verification_uri,expires_in等信息,并通过某种方式将返回的信息展示给用户(比如显示屏),引导用户再另一设备上完成授权过程。如下图:
2:用户拿到过程1的返回结果后通过智