使用护照 jwt 进行身份验证

Posted

技术标签:

【中文标题】使用护照 jwt 进行身份验证【英文标题】:authentication using passport jwt 【发布时间】:2016-10-02 18:06:34 【问题描述】:

我是基于令牌的身份验证的新手。 我想将用户限制在我网站上的特定页面(检查他的身份验证),并看到 jwt 是实现它的最佳方式,并在此处遵循教程:https://devdactic.com/restful-api-user-authentication-2/,但我如何限制用户访问页面(问他登录)?在这里,作者说他使用了AuthInterceptor 来检查身份验证部分。但我对身份验证拦截器感到困惑。谁能解释一下我该如何限制用户(比如代码的限制部分是服务器端还是客户端,如果是服务器端,我可以在node.js有代码参考吗)?

【问题讨论】:

【参考方案1】:

我在每次从我的服务器请求数据时附加一个 JWT。代码如下所示:

    return 
      request: function(config) 
        var jwt;
        if(isApiRequest(config.url)) 
          config.url = baseUrl + '/api/v1/' + config.url;
          jwt = store.get(JWT);
          if(jwt)
            config.headers.Authorization = "Bearer "+jwt;
        
        return config;
      
    ;

但是,您要做的是确定用户是否有 JWT(以及一个有效的 JWT - 这将由服务器验证),如果有,他们可以访问某些页面。

我想说这可以通过监视$stateChange 事件来完成:

$rootScope.$on('$stateChangeStart', function(evt, toState, toParams, fromState, fromParams) 
     var jwt = store.get('JWT');          
     if(!jwt)
       $state.go('go-back-to-login-view');
    ); 

【讨论】:

***.com/questions/38160209/…你能帮忙解决这个问题吗

以上是关于使用护照 jwt 进行身份验证的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 通过生成的令牌进行身份验证,无需护照和 jwt

使用 Passport 进行社交身份验证登录后如何重定向到个人资料页面? (角度,快递,护照,jwt)

如何使用护照身份验证更新包含 jwt 的 cookie

对身份验证技术的怀疑 - 护照

我是不是需要使用快速会话以及护照和 JSON Web 令牌进行身份验证?

节点快速通行证 (JWT) - 身份验证后回调