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.2.1.tar.gz
(11.1 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.2.1.tar.gz.
File metadata
- Download URL: yhttp_auth-9.2.1.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60a066d44803042f4d25adc8ac89930bb7d7114f45f3df6c54360d0f4dc807ba
|
|
| MD5 |
6c7515985c67385e81d762fdfe389719
|
|
| BLAKE2b-256 |
2e40f9d5ab2324d73261c8af916b899f3dd935d0593d6590b7fff2de090b6271
|
File details
Details for the file yhttp_auth-9.2.1-py3-none-any.whl.
File metadata
- Download URL: yhttp_auth-9.2.1-py3-none-any.whl
- Upload date:
- Size: 8.0 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 |
3d414359cca343bfe9d994d999ae391e1428e19214ebb64031930dd18da80ed5
|
|
| MD5 |
3443eec99ca965d6f2487cc8d500aa67
|
|
| BLAKE2b-256 |
a920b8a6462f785c3207494e1f2e057f5609df9998b72db9714fd0bd8c7297ef
|