This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
mandaye/README.rst

92 lines
2.1 KiB
ReStructuredText

===============================================
Mandaye - modular reverse proxy to authenticate
===============================================
Mandaye is a modular rewriting reverse proxy. Its main use is to add external
authentication systems to legacy application, i.e. SSO.
It dispatches HTTP requests to your applications and allow you to transform and
filter the request and the response.
Mandaye allows to couple your authentication provider with incompatible web
applications.
Copying
-------
This software copyrighted by Entr'ouvert and is licensed under the GNU AGPL
version 3 for distribution.
Features
--------
TODO: improve this part
* Filters: You can filter the request or the response with one or many filters.
You can serve static response in a filter.
There 3 types of filters:
* on_request
* on_response
* reponse
* Dispatcher: This will call the right filters
* Authentification management
* Sql and ldap authentification
* Authentification through Authentic2 idp (SAML2 and CAS)
Installation
============
Dependencies
------------
You must install the following packages to use Mandaye
* Gevent 0.13::
From sources: http://pypi.python.org/pypi/gevent
Debian based distribution: apt-get install python-gevent
* Poster 0.8::
From sources: http://pypi.python.org/pypi/poster/
Debian based distribution: apt-get install python-poster
* SQLAlchemy 0.7.2::
From sources: http://pypi.python.org/pypi/SQLAlchemy
* Beaker 1.5.4::
From sources: http://pypi.python.org/pypi/Beaker
* Mako 0.4.2::
From sources: http://pypi.python.org/pypi/Mako
* lxml 2.3.1::
From sources: http://pypi.python.org/pypi/lxml
You can install all those dependencies quickly using pip::
pip install gevent poster SQLAlchemy Beaker Mako lxml
or easy_install::
easy_install gevent poster SQLAlchemy Beaker Mako lxml
Quick Start
-----------
Configure mandaye/config.py
Then launch the following commands::
./mandayectl --createdb
./mandayectl --start
You should see the following output::
Database created
Starting Mandaye x.x.x.x:xx ...