Skip to main content

Kolibri plugin for desktop authentication

Project description

kolibri-desktop-auth-plugin

Authentication backend that allows an HTTP client to authenticate by providing a desktop user token

Testing

This is a kolibri plugin, you need to install the python package in the kolibri python environment using pip and then enable the plugin.

 .../kolibri $ pip install -e ../kolibri-desktop-auth-plugin
 .../kolibri $ kolibri plugin enable kolibri_desktop_auth_plugin

To test you can launch the fake user info dbus daemon included in this repository:

./fake-dbus-daemon.py

After enabling the fake dbus daemon you can try to autologin in your kolibri with the plugin opening the following url in your browser:

http://localhost:8000/kolibri_desktop_auth_plugin/login/TOKEN1

You can change the TOKEN at the end of the url above to test with different user data:

  • TOKEN1: adminuser, user with admin rights
  • TOKEN2: eosuser, user without admin rights

You can test also with a non existent token that should redirect to the login page.

It's also possible to redirect after the authentication passing the next url as a get parameter to the url, for example:

http://localhost:8000/kolibri_desktop_auth_plugin/login/TOKEN1?next=/learn

Development

Setup the Python environment:

pipenv install

Setup pre-commit:

pipenv run pre-commit install

Enter the Python environment for development:

pipenv shell

Releasing

Creating a release

If you are releasing a new version, use bump-version with with major, minor, or patch. For example:

yarn bump-version patch

This creates a new commit and a git tag. Push this to the remote:

git push
git push --tags

Create a .whl file:

python setup.py bdist_wheel --universal

Finally, upload the .whl file to PyPi:

twine check -s dist/*
twine upload -s dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

kolibri_desktop_auth_plugin-1.0.0-py2.py3-none-any.whl (4.7 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page