feat(User/Auth): Use stand alone auth token
This commit is contained in:
committed by
mrugesh mohapatra
parent
7a922229f4
commit
07f30427cb
@@ -21,7 +21,7 @@ module.exports = function enableAuthentication(app) {
|
||||
const ifUserRedirect = ifUserRedirectTo();
|
||||
const router = app.loopback.Router();
|
||||
const api = app.loopback.Router();
|
||||
const { AccessToken, User } = app.models;
|
||||
const { AuthToken, User } = app.models;
|
||||
|
||||
router.get('/login', (req, res) => res.redirect(301, '/signin'));
|
||||
router.get('/logout', (req, res) => res.redirect(301, '/signout'));
|
||||
@@ -99,7 +99,7 @@ module.exports = function enableAuthentication(app) {
|
||||
));
|
||||
}
|
||||
// first find
|
||||
return AccessToken.findOne$({ where: { id: authTokenId } })
|
||||
return AuthToken.findOne$({ where: { id: authTokenId } })
|
||||
.flatMap(authToken => {
|
||||
if (!authToken) {
|
||||
throw wrapHandledError(
|
||||
@@ -135,7 +135,7 @@ module.exports = function enableAuthentication(app) {
|
||||
}
|
||||
);
|
||||
}
|
||||
return authToken.validate$()
|
||||
return authToken.validate()
|
||||
.map(isValid => {
|
||||
if (!isValid) {
|
||||
throw wrapHandledError(
|
||||
@@ -150,7 +150,7 @@ module.exports = function enableAuthentication(app) {
|
||||
}
|
||||
);
|
||||
}
|
||||
return authToken.destroy$();
|
||||
return authToken.destroy();
|
||||
})
|
||||
.map(() => user);
|
||||
});
|
||||
|
@@ -78,5 +78,9 @@
|
||||
"about": {
|
||||
"dataSource": "db",
|
||||
"public": true
|
||||
},
|
||||
"AuthToken": {
|
||||
"dataSource": "db",
|
||||
"public": false
|
||||
}
|
||||
}
|
||||
|
15
server/models/auth-token.js
Normal file
15
server/models/auth-token.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import { Observable } from 'rx';
|
||||
|
||||
export default function(AuthToken) {
|
||||
AuthToken.on('dataSourceAttached', () => {
|
||||
AuthToken.findOne$ = Observable.fromNodeCallback(
|
||||
AuthToken.findOne.bind(AuthToken)
|
||||
);
|
||||
AuthToken.prototype.validate = Observable.fromNodeCallback(
|
||||
AuthToken.prototype.validate
|
||||
);
|
||||
AuthToken.prototype.destroy = Observable.fromNodeCallback(
|
||||
AuthToken.prototype.destroy
|
||||
);
|
||||
});
|
||||
}
|
13
server/models/auth-token.json
Normal file
13
server/models/auth-token.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "AuthToken",
|
||||
"base": "AccessToken",
|
||||
"idInjection": true,
|
||||
"options": {
|
||||
"validateUpsert": true
|
||||
},
|
||||
"properties": {},
|
||||
"validations": [],
|
||||
"relations": {},
|
||||
"acls": [],
|
||||
"methods": {}
|
||||
}
|
Reference in New Issue
Block a user