angularjs – 保存密钥和访问令牌在快速和NodeJS与Facebook的Res
我有两个应用程序:
>服务器(REST API服务器) >节点js >客户端(便携式前端) >引导 后来,客户端应用程序将被移植到android,iphone和其他平台使用phonegap.对于OAuth,我正在使用Facebook作为提供者.现在,我刚才发现JSON Web Token是这种设置的方式.我的问题是架构性的,而不是语法的 – 如何在nodejs中使用JWT签署Facebook访问令牌和用户ID时如何管理密钥? 所以这是流程如何在我的应用程序中工作: 角度客户端有一个登录按钮 var expressJwt = require(‘express-jwt’); var jwt = require(‘jsonwebtoken’); app.use(expressjwt({secret:”})),({path:[‘/ auth / login’]})); var token = expressjwt.sign({profile},); 现在我的问题是: >我真的需要在数据库中存储JWT令牌吗?我肯定不会将请求标头中的令牌与数据库进行比较 我对设计流程和机制感到失落.
广告1.您不必在数据库中存储JWT.用户ID可以是有效载荷的一部分,因此不需要它.
广告2.服务器端应用程序通常使用一个密钥来生成所有JWT. 广告3.检查您的API的每个请求上的令牌是否过期,如果令牌已过期,则不允许访问,返回401状态代码.客户端应用程序应提示用户获取凭据并请求新的JWT.如果要避免用户重新提交凭据,您可以发出刷新令牌,以后可以用于生成新的JWT. JWT refresh token flow http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |