Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rmohr/burg
A small extensible, flexible and easy to use authentication and authorization framework
https://github.com/rmohr/burg
Last synced: 14 days ago
JSON representation
A small extensible, flexible and easy to use authentication and authorization framework
- Host: GitHub
- URL: https://github.com/rmohr/burg
- Owner: rmohr
- License: gpl-3.0
- Created: 2014-06-19T20:08:04.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-07-10T18:36:38.000Z (over 10 years ago)
- Last Synced: 2024-10-11T14:41:20.742Z (about 1 month ago)
- Language: C++
- Size: 2.06 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
burg
====[![Build Status](https://travis-ci.org/rmohr/burg.svg?branch=master)](https://travis-ci.org/rmohr/burg)
Burg is a small extensible, flexible and easy to use authentication and authorization
framework.Dependencies
------------* boost
* boost_threads
* gmock/gtest (included in [lib](lib))
* libconfig++ (optional)
* libcryptopp (optional)
* pam (optional)### Debian/Ubuntu
```
sudo apt-get install libconfig++-dev libboost-dev libboost-thread-dev autoconf-archive libpam0g-dev
```### Fedora
```
yum install pam-devel libconfig-devel boost-devel boost-thread cryptopp-devel
```Documentation
-------------The documentation is hosted on [rmohr.github.io/burg](https://rmohr.github.io/burg/).
Installation
------------```
mkdir -p m4 && autoreconf -fi
./configure && make && make install
```Tests
-----The unit tests use gmock and gtest which are already included. To run the tests,
execute```
make -C tests && make -C tests check-TESTS
```Usage
-----
The main headers are [burg/auth.h](include/burg/auth.h) and [burg/db.h](include/burg/db.h).
A simple username/password implementation can be found in
[burg/auth/simple_auth.h](include/burg/auth/simple.h) and [burg/store/simple.h](include/burg/store/simple.h).Examples
--------
A simple example can be found in [examples/example.cpp](examples/example.cpp).
It requires *libconfig++* and *libcryptopp*. To run it, execute```
make -C examples
./examples/example roman hallo admin ./tests/db.cfg
```