У меня возникли проблемы с проверкой базовой аутентификации с использованием роли admin
. Я пытаюсь создать администратора суперпользователя, который будет иметь доступ к API-интерфейсам Role
и User
REST. На основании примера в документации, я использовал загрузочный скрипт для создания admin
роли и связанные с пользователем:Обычная проверка подлинности в Strongloop
var User = app.models.User,
Role = app.models.Role,
RoleMapping = app.models.RoleMapping;
User.create([
{username: '<my_username>', email: '<my_email>', password: '<my_password>'}
], function(err, users) {
if (err) return console.log('%j', err);
// Create the admin role
Role.create({
name: 'admin'
}, function(err, role) {
if (err) return debug(err);
console.log(role);
// Make me an admin
role.principals.create({
principalType: RoleMapping.USER,
principalId: users[0].id
}, function(err, principal) {
if (err) return debug(err);
console.log(principal);
});
})
Я также установить следующие acls
недвижимости на Role
недвижимости в server/model-config.json
:
"acls": [{
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "api_admin",
"permission": "ALLOW",
"property": "find"
},{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "api_admin",
"permission": "ALLOW",
"property": "findById"
}]
Эти настройки acls
, похоже, работают, потому что любые запросы против API Role
REST дают ошибку 401. Я также могу успешно войти в систему как пользователь выше и установить токен доступа в проводнике. Тем не менее, я все еще получаю ошибку 401, когда я пытаюсь сделать запросы GET в качестве этого пользователя.
Я также пробовал эту настройку на других не встроенных моделях с таким же результатом.
Я уверен, что есть небольшая вещь, которую мне не хватает, но я не могу понять ее. Любая помощь высоко ценится!
Спасибо,
Jon
Хорошо, что это смущает ... Я думал, что это, наверное, что-то простое, просто не мог найти его. Огромное спасибо. – user3431474