A very micro http framework.
Project description
yhttp-auth
Authentication extension for yhttp.
Install
pip install yhttp-auth
Usage
from yhttp import Application
from yhttp.ext.auth import install as auth_install
app = Application('0.1.0', 'foo')
auth = auth_install(app)
app.settings.merge(f'''
auth:
redis:
host: localhost
port: 6379
db: 0
token:
algorithm: HS256
secret: foobar
refresh:
key: yhttp-refresh-token
algorithm: HS256
secret: quxquux
secure: true
httponly: true
maxage: 2592000 # 1 Month
domain: example.com
''')
@app.route('/reftokens')
@yhttp.statuscode(yhttp.statuses.created)
def create(req):
app.auth.set_refreshtoken(req, 'alice', dict(baz='qux'))
@app.route('/tokens')
@yhttp.statuscode(yhttp.statuses.created)
@yhttp.text
def refresh(req):
reftoken = app.auth.verify_refreshtoken(req)
return app.auth.dump_from_refreshtoken(reftoken, dict(foo='bar'))
@app.route('/admin')
@auth(roles='admin, god')
@yhttp.text
def get(req):
return req.identity.roles
app.ready()
Command line interface
setup.py
setup(
...
entry_points={
'console_scripts': [
'myapp = myapp:app.climain'
]
},
...
)
myapp auth --help
Contribution
python-makelib
Install python-makelib.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
yhttp_auth-9.0.0.tar.gz
(10.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yhttp_auth-9.0.0.tar.gz.
File metadata
- Download URL: yhttp_auth-9.0.0.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b4e411a78be6d7efd0a7389f52252848f7a09a5a726cca4bc8ef8c41261a135f
|
|
| MD5 |
73d79601f3ab51e2023ce026c6954bd9
|
|
| BLAKE2b-256 |
0a5db4f196f919a49b80ea32489680bb5d4ac02ffb8307209bfd921e469f7216
|
File details
Details for the file yhttp_auth-9.0.0-py3-none-any.whl.
File metadata
- Download URL: yhttp_auth-9.0.0-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b6806fb7a9a97ad2aee811a8ec322db2f1ef8d1da022e11f09dd185cbae22e8
|
|
| MD5 |
e985bd114b369ae235d8c24c1373c3da
|
|
| BLAKE2b-256 |
c753462ffd0f20c53018c60834040ff0f20f47eb1e20ec92c18246353ecf45c5
|