https://github.com/windomz/go-rbac
:ghost: A simplified role-based access control (RBAC) implementation.
https://github.com/windomz/go-rbac
go golang rbac role-based-access-control
Last synced: 3 months ago
JSON representation
:ghost: A simplified role-based access control (RBAC) implementation.
- Host: GitHub
- URL: https://github.com/windomz/go-rbac
- Owner: WindomZ
- License: other
- Created: 2016-05-10T08:02:45.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-04-08T06:42:25.000Z (about 8 years ago)
- Last Synced: 2025-02-15T07:42:06.647Z (5 months ago)
- Topics: go, golang, rbac, role-based-access-control
- Language: Go
- Homepage:
- Size: 34.2 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
- License: LICENSE
Awesome Lists containing this project
README
# go-rbac
[](https://travis-ci.org/WindomZ/go-rbac)
[](https://opensource.org/licenses/MIT)
[](https://coveralls.io/github/WindomZ/go-rbac?branch=dev)A simplified role-based access control (RBAC) implementation,
inspired by [gorbac](https://github.com/mikespook/gorbac)
## Purpose
* Only three objects: `identity`, `role` and `permission`
* One to many relationship between `identity` and `roles`.
* One to many relationship between `role` and `permissions`.
* One to many relationship between `role` and parent `roles`(inheritance relationship).## Features
- [x] An `identity` has one or more `roles`.
- [x] A `role` has one or more `permissions`.
- [x] A `role` can inherit one or more other `roles`(inheriting their `permissions`).
- [x] Both `identity`, `role`, `permission` are defined by ID string.
- [x] Native and no third party library dependent, except unit testing## Installation
```
go get -u github.com/WindomZ/go-rbac
```## License
The [MIT License](https://github.com/WindomZ/go-rbac/blob/master/LICENSE)