Skip to content

Commit

Permalink
Black formatting, fixed examples. Minor license year change.
Browse files Browse the repository at this point in the history
  • Loading branch information
hzlmn committed Feb 17, 2020
1 parent 0fff991 commit 0c7deb6
Show file tree
Hide file tree
Showing 5 changed files with 80 additions and 106 deletions.
2 changes: 1 addition & 1 deletion LICENSE.txt
@@ -1,4 +1,4 @@
Copyright (c) 2018 Kuchuk Oleh <kuchuklehjs@gmail.com>
Copyright (c) 2018-2020 Kuchuk Oleh <kuchuklehjs@gmail.com>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
58 changes: 22 additions & 36 deletions example/app.py
Expand Up @@ -9,50 +9,36 @@
logger = logging.getLogger(__name__)


secret = 'your secret'
secret = "your secret"


async def get_token(request):
return jwt.encode({"username": "johndoe", "scopes": ["user:admin"]}, secret)


jwt_middleware = JWTMiddleware(
secret,
request_property="user",
token_getter=get_token,
credentials_required=False,
whitelist=[r"/(foo|bar)"],
)


async def foo_handler(request):
return json_response({'status': 'OK'})
return json_response({"status": "OK"})


@check_permissions([
'user:admin',
'olehkuchuk',
], comparison=match_any)
@check_permissions(["user:admin", "johndoe"], comparison=match_any)
async def protected_handler(request):
payload = request.get('user', {})
return json_response({
'status': 'OK',
'username': payload.get('username'),
})
payload = request.get("user", {})
return json_response({"status": "OK", "username": payload.get("username")})


async def get_token(request):
return jwt.encode({
'username': 'olehkuchuk',
'scopes': [
'user:admin',
],
}, secret)
return None

app = web.Application(
middlewares=[
JWTMiddleware(
secret=secret,
request_property='user',
token_getter=get_token,
credentials_required=False,
whitelist=[
r'/(foo|bar)'
],
),
]
)
app = web.Application(middlewares=[jwt_middleware])

app.router.add_get('/foo', foo_handler)
app.router.add_get('/protected', protected_handler)
app.router.add_get("/foo", foo_handler)
app.router.add_get("/protected", protected_handler)

if __name__ == '__main__':
if __name__ == "__main__":
web.run_app(app)
24 changes: 9 additions & 15 deletions example/basic.py
Expand Up @@ -3,41 +3,35 @@

from aiohttp_jwt import JWTMiddleware

sharable_secret = 'secret'
sharable_secret = "secret"


async def public_handler(request):
return web.json_response({'username': 'anonymous'})
return web.json_response({"username": "anonymous"})


async def protected_handler(request):
return web.json_response({
'username': request['user'].get('username', 'anonymous'),
})
return web.json_response({"username": request["user"].get("username", "anonymous")})


async def get_token(request):
return jwt.encode({
'username': 'olehkuchuk',
}, sharable_secret)
return jwt.encode({"username": "johndoe"}, sharable_secret)


app = web.Application(
middlewares=[
JWTMiddleware(
secret_or_pub_key=sharable_secret,
token_getter=get_token,
request_property='user',
whitelist=[
r'/public*'
]
request_property="user",
whitelist=[r"/public*"],
)
]
)


app.router.add_get('/public', public_handler)
app.router.add_get('/protected', protected_handler)
app.router.add_get("/public", public_handler)
app.router.add_get("/protected", protected_handler)

if __name__ == '__main__':
if __name__ == "__main__":
web.run_app(app)
40 changes: 19 additions & 21 deletions example/login_required.py
Expand Up @@ -3,35 +3,33 @@

from aiohttp_jwt import JWTMiddleware, login_required

sharable_secret = 'secret'
sharable_secret = "secret"

jwt_middleware = JWTMiddleware(
sharable_secret, request_property="user", credentials_required=False
)


async def public_handler(request):
return web.json_response({
'username': request['user'].get('username')
if 'user' in request else 'anonymous',
})
return web.json_response(
{
"username": request["user"].get("username")
if "user" in request
else "anonymous"
}
)


@login_required
async def auth_required_handler(request):
return web.json_response({
'username': request['user'],
})

app = web.Application(
middlewares=[
JWTMiddleware(
secret_or_pub_key=sharable_secret,
request_property='user',
credentials_required=False,
)
]
)
return web.json_response({"username": request["user"]})


app = web.Application(middlewares=[jwt_middleware])


app.router.add_get('/public', public_handler)
app.router.add_get('/protected', auth_required_handler)
app.router.add_get("/public", public_handler)
app.router.add_get("/protected", auth_required_handler)

if __name__ == '__main__':
if __name__ == "__main__":
web.run_app(app)
62 changes: 29 additions & 33 deletions example/permissions.py
Expand Up @@ -3,48 +3,44 @@

from aiohttp_jwt import JWTMiddleware, check_permissions, match_any

sharable_secret = 'secret'
sharable_secret = "secret"


async def get_token(request):
return jwt.encode(
{"username": "johndoe", "scopes": ["username:johndoe"]}, sharable_secret
)


jwt_middleware = JWTMiddleware(
sharable_secret,
token_getter=get_token,
request_property="user",
credentials_required=False,
whitelist=[r"/public*"],
)


async def public_handler(request):
return web.json_response({
'username': request['user'].get('username')
if 'user' in request else 'anonymous',
})
return web.json_response(
{
"username": request["user"].get("username")
if "user" in request
else "anonymous"
}
)


@check_permissions([
'app/user:admin',
'username:olehkuchuk',
], comparison=match_any)
@check_permissions(["app/user:admin", "username:johndoe"], comparison=match_any)
async def protected_handler(request):
return web.json_response({
'username': request['user'].get('username'),
})
return web.json_response({"username": request["user"].get("username")})


async def get_token(request):
return jwt.encode({
'username': 'olehkuchuk',
'scopes': ['username:olehkuchuk'],
}, sharable_secret)


app = web.Application(
middlewares=[
JWTMiddleware(
secret_or_pub_key=sharable_secret,
token_getter=get_token,
request_property='user',
credentials_required=False,
whitelist=[r'/public*']
)
]
)
app = web.Application(middlewares=[jwt_middleware])


app.router.add_get('/public', public_handler)
app.router.add_get('/protected', protected_handler)
app.router.add_get("/public", public_handler)
app.router.add_get("/protected", protected_handler)

if __name__ == '__main__':
if __name__ == "__main__":
web.run_app(app)

0 comments on commit 0c7deb6

Please sign in to comment.