This release is a pre-release and may not be stable for production use.
This is a Python package for magiclogin, an addon for Websauna framework.
To run this package you need Python 3.5.2+, PostgresSQL and Redis.
Features
Passwordless login with OAuth and email link options.
Throttle protection against brute forcing and spam
Interstitial page to require user to login and then continue what ever HTTP GET/POST action user was performing
Screenshots
Installation
Setup OAuth credential in development.ini and development-secrets.ini according to Websauna documentation.
Example development.ini:
websauna.social_logins =
facebook
google
Example development-secrets.ini bits:
[facebook] class = authomatic.providers.oauth2.Facebook consumer_key = xxx consumer_secret = yyy scope = user_about_me, email mapper = websauna.system.user.social.FacebookMapper [google] class = websauna.system.user.googleoauth.Google consumer_key = xxx consumer_secret = yyy mapper = websauna.system.user.social.GoogleMapper scope = profile email
Copy bits from demo.py to your application initializer.
Settings
Available INI settings:
# Throttle email login endpoints to this window magiclogin.login_email_throttle = 50/3600 # How fast email login link dies magiclogin.email_token_expiration_seconds = 300 # Text shown on the login panel magiclogin.login_slogan = Your login text goes here
You might also have long, secure, sessions in production:
# Set session length to one year redis.sessions.cookie_max_age = 31536000 redis.sessions.cookie_secure = True redis.sessions.cookie_httponly = True
Running the development website
Local development machine
Example (OSX / Homebrew):
createdb magiclogin_dev ws-sync-db ws://websauna/magiclogin/conf/development.ini pserve ws://websauna/magiclogin/conf/development.ini --reload
You can visit:
http://localhost:6543/login http://localhost:6543/require_login_example_page
Running the test suite
First create test database:
# Create database used for unit testing psql create magiclogin_test
Install test and dev dependencies (run in the folder with setup.py):
pip install -e ".[dev,test]"
Run test suite using py.test running:
py.test
More information
Please see https://websauna.org/
Changelog for Websauna Magic Login
1.0a2 (2018-04-22)
Fix missing ‘namespace_packages’.
1.0a1 (2018-03-06)
Initial Release
Metadata
Release files for websauna.magiclogin 1.0a2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| websauna.magiclogin-1.0a2.tar.gz | 120.2 kB | Without provenance | Details for websauna.magiclogin-1.0a2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| websauna.magiclogin-1.0a2-py3-none-any.whl | Python 3 | none | any | Details for websauna.magiclogin-1.0a2-py3-none-any.whl |
Total release size: 247.6 kB
Release files / websauna.magiclogin-1.0a2.tar.gz
| Download URL | websauna.magiclogin-1.0a2.tar.gz |
|---|---|
| Size | 120.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a613bd8102a0be15f2c1756041d9e0dc4c01a2b9f30d222f452624272dfd589a
|
|
BLAKE2b-256 checksum How to use checksums |
de85f6a34b11d5e07e2a39f062bac126bc847fe8ba496fc2b5211b42f3b2f567
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / websauna.magiclogin-1.0a2-py3-none-any.whl
| Download URL | websauna.magiclogin-1.0a2-py3-none-any.whl |
|---|---|
| Size | 127.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
42fd7638338e0c04efc7a3be03205d326f205bdc18e15a7d2b69cd62a6a44b33
|
|
BLAKE2b-256 checksum How to use checksums |
5d027ef484251b2308ae8cdcede1f89c4c19412f35eaf0b4b31e51d474f35305
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for websauna.magiclogin 1.0a2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.