Използвате таблица за присъединяване:role_id и permission_id, за да определите какви разрешения са свързани с кои роли
РЕДАКТИРАНЕ:
Примерни таблици
Таблица с РОЛИ
Role_ID Role_Name
1 Standard User
2 Super User
3 Guest
Таблица РАЗРЕШЕНИЯ
Permission_ID Permission_Name
1 View User List
2 Update Own User Account
3 Update Any User Account
Таблица ROLE_PERMISSION
Role_ID Permission_ID
1 1 // Role 1 (Standard User) grants View User List
1 2 // and Update Own User Account
2 1 // Role 2 (Super User) grants View User List,
2 2 // Update Own User Account,
2 3 // and Update Any User Account
3 1 // Role 3 (Guest) grants View User List
Изброяване на разрешенията за определен Role_ID
select R.role_id,
P.permission_id,
P.permission_name
from role R,
permission P,
role_permission RP
where RP.permission_id = P.permission_id
and RP.role_id = R.role_id
and R.role_id = 1