【发布时间】:2014-09-05 21:42:02
【问题描述】:
我设置了位掩码权限+角色:
{
EDIT: '1',
DELETE: '2',
ADD: '4',
VIEW: '8',
}
我正在寻找使用按位运算扩展和撤销用户权限的最简单方法。
例如,用户将 7 设置为允许他EDIT、DELETE 和ADD 的权限
我想添加VIEW 和ADD 或12。
用 12 将 7 扩展为 15 并反之亦然的最简单公式是什么?
我怎样才能撤销用户现有的权限 12 (VIEW, ADD) 撤销 (DELETE, ADD) - 6 这样它会等于 8?
【问题讨论】:
-
扩展:7 按位或 12 = 15;撤销:12 按位和按位非(6)= 9
标签: permissions bit-manipulation bitmask bit-masks