Compare commits
7
Commits
v1.0.0
...
493c2ec429
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
493c2ec429 | ||
|
|
cfe370f761 | ||
|
|
4b725b16e1 | ||
|
|
8385cea640 | ||
|
|
697e8bd682 | ||
|
|
13dab7e614 | ||
|
|
e51bbf2312 |
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 12 KiB |
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 12 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 95 KiB |
@@ -24,11 +24,11 @@
|
||||
"resources": {
|
||||
"homepage": "https://pgmorbac.villains.fr",
|
||||
"bugtracker": {
|
||||
"web": "https://git.villains.fr/crudy/pgmorbac/issues"
|
||||
"web": "https://github.com/crudylabs/pgmorbac/issues"
|
||||
},
|
||||
"repository": {
|
||||
"url": "https://git.villains.fr/crudy/pgmorbac.git",
|
||||
"web": "https://git.villains.fr/crudy/pgmorbac",
|
||||
"url": "https://github.com/crudylabs/pgmorbac.git",
|
||||
"web": "https://github.com/crudylabs/pgmorbac",
|
||||
"type": "git"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1,12 +1,20 @@
|
||||
# pgmorbac
|
||||
<h1 align="center">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset=".github/brand/logo-dark.svg">
|
||||
<img alt="pgmorbac" src=".github/brand/logo-light.svg" height="110">
|
||||
</picture>
|
||||
</h1>
|
||||
|
||||
**Multi-Organization Based Access Control for PostgreSQL**
|
||||
<p align="center"><strong>Multi-Organization Based Access Control for PostgreSQL</strong></p>
|
||||
|
||||
<p align="center">
|
||||
<a href="LICENSE"><img alt="License: MIT" src="https://img.shields.io/badge/License-MIT-10b981.svg"></a>
|
||||
<a href="https://www.npmjs.com/package/@crudy/pgmorbac"><img alt="npm" src="https://img.shields.io/npm/v/@crudy/pgmorbac.svg?color=10b981"></a>
|
||||
<a href="https://www.postgresql.org/"><img alt="PostgreSQL 13+" src="https://img.shields.io/badge/PostgreSQL-13%2B-047857.svg"></a>
|
||||
</p>
|
||||
|
||||
A PostgreSQL extension implementing the Multi-OrBAC access control model - enabling organization-centric, context-aware, and hierarchical access control with advanced features like delegation, separation of duty, and cross-organizational policies.
|
||||
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
[](https://www.postgresql.org/)
|
||||
|
||||
## Features
|
||||
|
||||
- Multi-organization with organizational hierarchy
|
||||
@@ -34,7 +42,7 @@ A PostgreSQL extension implementing the Multi-OrBAC access control model - enabl
|
||||
|
||||
```bash
|
||||
# Clone repository
|
||||
git clone https://git.villains.fr/crudy/pgmorbac.git
|
||||
git clone https://github.com/crudylabs/pgmorbac.git
|
||||
cd pgmorbac
|
||||
|
||||
# Build and install extension
|
||||
@@ -69,6 +77,14 @@ sudo cp pgmorbac--1.0.0.sql $(pg_config --sharedir)/extension/
|
||||
psql -d mydb -c "CREATE EXTENSION pgmorbac;"
|
||||
```
|
||||
|
||||
### From Node.js (npm)
|
||||
|
||||
[`@crudy/pgmorbac`](https://www.npmjs.com/package/@crudy/pgmorbac) ships the
|
||||
install and upgrade scripts of each signed release for Node projects and migration
|
||||
runners, and [`@crudy/pgmorbac-fastify`](https://www.npmjs.com/package/@crudy/pgmorbac-fastify)
|
||||
adds Fastify helpers on top. Sources: [pgmorbac-node](https://github.com/crudylabs/pgmorbac-node),
|
||||
[pgmorbac-fastify](https://github.com/crudylabs/pgmorbac-fastify).
|
||||
|
||||
## Quick Start
|
||||
|
||||
```sql
|
||||
@@ -257,7 +273,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
||||
|
||||
```bash
|
||||
git clone https://git.villains.fr/crudy/pgmorbac.git
|
||||
git clone https://github.com/crudylabs/pgmorbac.git
|
||||
cd pgmorbac
|
||||
|
||||
# Edit source files in src/
|
||||
@@ -278,7 +294,7 @@ git push --tags
|
||||
## Support
|
||||
|
||||
- Read the [documentation](https://pgmorbac.villains.fr)
|
||||
- Report bugs via [Gitea Issues](https://git.villains.fr/crudy/pgmorbac/issues)
|
||||
- Report bugs via [GitHub Issues](https://github.com/crudylabs/pgmorbac/issues)
|
||||
- Security issues: see [SECURITY.md](SECURITY.md)
|
||||
|
||||
## Comparison with Traditional RBAC
|
||||
|
||||
+14
-3
@@ -56,17 +56,28 @@ dropdb mytest
|
||||
|
||||
## Release Process
|
||||
|
||||
1. Update version in `pgmorbac.control`
|
||||
1. `./tools/bump_version.sh X.Y.Z` (control file, META.json, README)
|
||||
2. Update `CHANGELOG.md`
|
||||
3. Run `make build` and `make check`
|
||||
4. Commit and tag:
|
||||
|
||||
```bash
|
||||
git commit -m "Release vX.Y.Z"
|
||||
git commit -am "release: X.Y.Z"
|
||||
git tag vX.Y.Z
|
||||
git push origin main --tags
|
||||
git push origin master --tags
|
||||
```
|
||||
|
||||
5. Signed SQL distribution, attached to the Gitea release (Drone does this on the
|
||||
tag when the repository is activated there):
|
||||
|
||||
```bash
|
||||
PGMORBAC_RELEASE_KEY=<path to the Ed25519 key> GITEA_URL=https://git.villains.fr \
|
||||
GITEA_REPO=crudy/pgmorbac GITEA_TOKEN=<token> npm run release
|
||||
```
|
||||
|
||||
6. The npm package `@crudy/pgmorbac` is released from the `pgmorbac-node`
|
||||
repository, which packs the SQL of this signed release.
|
||||
|
||||
## Makefile Targets
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user