如何将OAuth用户名和密码身份验证流程与设备流程结合使用?

时间:2019-03-31 06:48:15

标签: oauth oauth-2.0

我正在设置一个新的支持OAuth的移动应用程序和身份验证服务。问题是:该应用程序只能同时在1个设备上使用。

例如,像Spotify一样-您只能同时在一台设备上播放音乐。

我在以下位置看到了有关OAuth设备流程的文档: https://www.oauth.com/oauth2-servers/device-flow/。 但这适用于没有浏览器或输入文字的简便方法的设备。

所以我正在考虑创建这样的request参数:

https://authorization-server.com/auth?response_type=code
&client_id=29352735982374239857
&redirect_uri=https://example-app.com/callback
&device_code=NGU5OWFiNjQ5YmQwNGY3YTdmZTEyNzQ3YzQ1YSA
&scope=create+delete

因此device_id可以包含在令牌有效负载中(我正在使用JWT)。资源服务器可以在处理请求之前检查每位用户可用的设备。

如何达到此要求的标准流程? 是否可以通过对有效负载实施令牌验证来实现此设备验证? 还是客户端必须在对资源服务器的每个请求中都包含device_id?

0 个答案:

没有答案