Skip to content

Django authentication backend that allows one to login as someone else

License

Notifications You must be signed in to change notification settings

zsoldosp/django-act-as-auth

Repository files navigation

Django Act As Auth Backend

WARNING:This project is currently frozen and will not longer be maintained. If there is someone interested in continuing to maintain this project please contact: [email protected] .

Django authentication back-end that allows one to login as someone else (an existing Django user allowed to login) without having to know their password.

Great for customer support and testing scenarios!

https://travis-ci.org/PaesslerAG/django-act-as-auth.svg?branch=master https://readthedocs.org/projects/django-act-as-auth/badge/?version=latest

Quickstart

Install djactasauth:

pip install djactasauth

Add it to your auth backends in settings:

import djactasauth
AUTHENTICATION_BACKENDS = (
    ...,
    'djactasauth.backends.OnlySuperuserCanActAsBackend',
    ...,
)

Configure the custom login view to take advantage of all the features in your urls.py:

from django.conf.urls import patterns, url
from djactasauth.views import PrefillLoginView
from testapp.views import whoami


urlpatterns = patterns(
    '',
    url(r'^login/$', PrefillLoginView.as_view(), {}, 'login'),
)

Then you can log in with username your_superuser_name/customer and password yourpassword.

Contributing

As an open source project, we welcome contributions.

The code lives on github.

Reporting issues/improvements

Please open an issue on github or provide a pull request whether for code or for the documentation.

For non-trivial changes, we kindly ask you to open an issue, as it might be rejected. However, if the diff of a pull request better illustrates the point, feel free to make it a pull request anyway.

Pull Requests

  • for code changes
    • it must have tests covering the change. You might be asked to cover missing scenarios
    • the latest flake8 will be run and shouldn't produce any warning
    • if the change is significant enough, documentation has to be provided
  • if you are not there already, add yourself to the Authors file

To trigger packaging, run make release on the master branch.

Setting up all Python versions

sudo apt-get -y install software-properties-common
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
for version in 3.5 3.6; do
  py=python$version
  sudo apt-get -y install ${py} ${py}-dev
done

Code of Conduct

As it is a Django extension, it follows Django's own Code of Conduct. As there is no mailing list yet, please just email one of the main authors (see setup.py file)

About

Django authentication backend that allows one to login as someone else

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published