14 Commits

Author SHA1 Message Date
7721f8dcc1 Revamp authentication routes structure (#201)
* Fix #68: use makefun to generate dynamic dependencies

* Remove every Starlette imports

* Split every routers and remove event handlers

* Make users router optional

* Pass after_update handler to get_users_router

* Update documentation

* Remove test file

* Write migration doc for splitted routers
2020-05-24 10:18:01 +02:00
0a0dcadfdc Use real UUID for User id. and OAuthAccount id. (#198)
* Use UUID for user id and oauth account id

* Update documentation for UUID

* Tweak GUID definition of SQLAlchemy to match Tortoise ORM one

* Write migration doc
2020-05-21 16:40:33 +02:00
49deb437a6 Fix #42: multiple authentication backends (#47)
* Revamp authentication to allow multiple backends

* Make router generate a login route for each backend

* Apply black

* Remove unused imports

* Complete docstrings

* Update documentation

* WIP add cookie auth

* Complete cookie auth unit tests

* Add documentation for cookie auth

* Fix cookie backend default name

* Don't make cookie return a Response
2019-12-04 13:32:49 +01:00
47ad4ce1cc Fix #36: fix token url in auto doc (#38)
* Fix #36: fix token url in auto doc

* Define OAuth scheme in authentication base with default /users/login tokenUrl
* Allow to override it through contructor argument of auth class

* Fix test coverage of BaseAuthentication
2019-11-03 09:20:16 +01:00
49daeff869 Close #3: forgot/reset password routes 2019-10-13 12:05:10 +02:00
76bb7bf6a5 Implement variant of dep injections to get active/super user 2019-10-11 08:09:47 +02:00
ef796abb55 Reorganize base modules 2019-10-10 19:21:36 +02:00
9e1fd76f30 Add more docstrings 2019-10-10 19:03:52 +02:00
ef6dd2c39c Implement user-facing API 2019-10-10 18:55:11 +02:00
0112e700ac Improve typing and make User pydantic models dynamic 2019-10-10 13:37:52 +02:00
af63280cf7 Use snake case for user_db variable 😱 2019-10-10 07:27:53 +02:00
d781a41872 Install Black formatter 2019-10-09 16:52:06 +02:00
11a6c60708 Improve lint tooling 2019-10-09 07:44:28 +02:00
06dd8ad22e Implement JWT authentication 2019-10-08 17:18:38 +02:00