Skip to main content

Django One Time Password Link Authentication

Project description

dotpla: Django One Time Password Link Authentication

This app adds a new Authentication method to Django, which allows you to generate links with a one-time password so you can allow users to log in directly, without having to define a password. It is not an implementation of two-factor authentication (2FA).

Status

Warning: this project is currently in development, and only supports Wagtail, for now. It is likely to change as/if I have time, but I am developing it primarily for my own uses, so it may not always be the highest priority.

Rationale and Use Cases

This app can be used to share data with selected users from the deep web, without requiring them to register or login. You can create the user account for them, generate a one-time password, and send them a link that will log them in automatically. This allows you to protect data from unauthorized access, but also makes it easy for end-users to access it.

Some potential use cases:

  • Share a tailored version of your CV or cover letter with potential employers.
  • Write a tailored sales pitch for potential customers.
  • Share files with select users.

Installation

Pre-requirements

  • Django 3.2 or greater.
  • Python 3.8 or greater.
  • The Django Messages Framework must be enabled for your project if you want passwords to be displayed in the admin interface.
  • Optional: Wagtail CMS. Tested with Wagtail 4.0.

Usage

TODO.

Caveats

  • The authenticate_with_otp method has potential race conditions allowing users to log in more times than they should. As I only use this with trusted users, it's insignificant enough for me to ignore.

Project details


Download files

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

Source Distribution

dotpla-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dotpla-0.1.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file dotpla-0.1.0.tar.gz.

File metadata

  • Download URL: dotpla-0.1.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.10.9 Linux/6.1.3-arch1-1

File hashes

Hashes for dotpla-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c88d24eda785375a4c719e5afbdad1ea43b9c97a08d52e74e6962eaa4cc0500e
MD5 9046ff16fc71206181ea1d04a2d2237a
BLAKE2b-256 398abd70122c41c64eb4c3ef1ec231baa8a5f8ddbc79af974123effc0aeac92e

See more details on using hashes here.

File details

Details for the file dotpla-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dotpla-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.10.9 Linux/6.1.3-arch1-1

File hashes

Hashes for dotpla-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c645145f4d1c6cbab0e0eb7a49a6f68e7f9a2b27685a28a889dfeb2af099452c
MD5 948831f48603ceb562ba118b5b674f78
BLAKE2b-256 123a1a82a6dfd3a34264e1a11d2bd4d98534fb51831b1cb8acedecaaa7c1b7f0

See more details on using hashes here.

Supported by

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