Felhasználó vagy jogosultság megkövetelése egy actionben
Egy action meg tudja védeni magát:
- a
user: truebejelentkezett felhasználót követel (különben 401); auser: falsecsak névtelen kéréseket enged - a
permissions: 'a,b'azt követeli, hogy a felhasználónak legalább az egyik felsorolt jogosultsága meglegyen. A Total.js auser.permissions-t (vagy auser.roles-t) olvassa, ami lehet sztringek tömbje vagy objektum - a
sa: truevagysu: truefelhasználók (szuperadminok) minden ellenőrzésen átmennek
A felhasználó az AUTH()-ból jön, ahogy a hitelesítésről szóló receptben.
AUTH(function($) {
var users = {
'token-reports': { id: '1', name: 'Anna', permissions: ['reports'] },
'token-sales': { id: '2', name: 'Boris', permissions: ['sales'] },
'token-admin': { id: '3', name: 'Root', sa: true }
};
var user = users[$.cookie('auth')];
user ? $.success(user) : $.invalid();
});NEWACTION('Reports/read', {
name: 'Read reports',
user: true,
permissions: 'reports,audit',
action: function($) {
$.success($.user.name);
}
});exports.install = function() {
ROUTE('GET /reports/ --> *Reports/read');
};