You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Fr3deric
7bb56630cb
|
6 years ago | |
---|---|---|
bam | 6 years ago | |
.gitignore | 6 years ago | |
README.md | 6 years ago |
README.md
bam - Blinkenbunt Account Manager
Installation
Currently, this repository does only contain a plain Django app without a project. The app is not (yet) packaged. Therfore, the following steps are necessary to initialize a development environment:
-
Initialize Django project:
django-admin startproject PROJECT_NAME
2. Clone this repository to a location outside the project directory.
3. Below the project directory, create a symlink called `bam` to the `bam`
folder of this repository, e.g.:
```
ln -sr bam PROJECT_DIRECTORY/bam
-
Add
bam
toINSTALLED_APPS
in the project'ssettings.py
. -
Set
bam.hashers.LDAPPBKDF2PasswordHasher
as the first item of thePASSWORD_HASHERS
array in the project'ssettings.py
. -
Insert the settings
BAM_LDAP_URI
,BAM_LDAP_BIND_DN
,BAM_LDAP_SECRET
andBAM_LDAP_BASE_DN_MAP
according to your setup into the project'ssettings.py
. The base DN map has to be a dict from base DNs to arrays of Django groups.Example:
BAM_LDAP_BASE_DN_MAP = {
'ou=test,dc=blinkenbunt,dc=org': [
'jabber',
'git',
],
'ou=admins,dc=blinkenbunt,dc=org': [
'admin',
],
}
7. Append `path('', include('bam.urls')),` to the project's `urls.py`.
8. Initialize database:
```
./manage.py migrate
-
Create a superuser account:
./manage.py createsuperuser
10. Download _Pure.css_ and extract it to `bam/static/pure.css/`.
11. Start the development server:
```
./manage.py runserver
ToDo
Essential
- LDAP sync mangement command
- profile page view to be displayed after login
- unify CSS for custom views and auth view
Optional, planned
- service-based logins
- self-service registration
- package this app as a Python module