У меня есть битовая маска разрешений + набор ролей:
{
EDIT: '1',
DELETE: '2',
ADD: '4',
VIEW: '8',
}
Я ищу самый простой способ расширения и отзыва разрешений пользователя с помощью побитовых операций.
Например, пользователь имеет 7 разрешений, позволяющих ему EDIT
, DELETE
и ADD
Я хочу добавить VIEW
и ADD
или 12.
Какая самая простая формула для увеличения 7 с 12 до 15 и наоборот?
Как я могу отозвать существующие разрешения пользователя 12 (VIEW
, ADD
), чтобы отозвать (DELETE
, ADD
) - 6, чтобы оно было равно 8 ?