网站用户的Passport Facebook身份验证以及管理员的本地身份验证

时间:2015-10-25 13:19:04

标签: angularjs node.js authentication express passport.js

我正在创建一个网站,后端有节点和快速框架,前端有角度。我使用护照进行身份验证。我的网站用户只能使用他们迄今为止正在使用的Facebook ID登录或注册。现在我必须创建一个管理员登录。我要遵循的步骤是 -

1]创建一个单独的路由,其末尾有一些秘密字符串以进行登录    页。比如localhost:8080/p08jnl

2]在此页面上,我输入了用户名和密码,管理员输入    凭据,并将使用 passport本地身份验证

3]只有在从管理门户登录后才能访问管理路由    将在这些路线上定义中间件isAuthenticated()

我关心的是,对于我已定义isAuthenticated()功能的用户路由,只有经过身份验证的用户才能访问这些路由。

任何经过身份验证的用户都可以访问admin的路由吗?

有关我的身份验证的更多细节 - 当我的网站的URL被称为

'localhost:8080'

我发送了一个页面,其上有Facebook身份验证按钮,没有发送有角度的网络应用程序,当用户通过Facebook进行身份验证时,会发送客户端角度网络应用程序。

我计划在调用管理员URL时发送一个页面,其中包含用户名和密码输入字段。成功登录后,将发送管理角度网络应用程序。

1 个答案:

答案 0 :(得分:0)

  

任何经过身份验证的用户都可以访问admin的路由吗?

只需创建另一个名为 isAdmin 的中间件,即检查该用户是否为管理员。然后将 isAdmin 中间件置于任何 / admin 路由(或您的案例中的 / p08jnl 路由)之前。