A simplified role-based access control (RBAC) implementation, inspired by gorbac
- Only three objects:
identity
,role
andpermission
- One to many relationship between
identity
androles
. - One to many relationship between
role
andpermissions
. - One to many relationship between
role
and parentroles
(inheritance relationship).
- An
identity
has one or moreroles
. - A
role
has one or morepermissions
. - A
role
can inherit one or more otherroles
(inheriting theirpermissions
). - Both
identity
,role
,permission
are defined by ID string. - Native and no third party library dependent, except unit testing
go get -u github.com/WindomZ/go-rbac
The MIT License