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
b5b0bbbb01
Tortoise ORM support ( #59 )
...
* add tortoise to dependencies
* add tortoise as optional dependency in pyproject.toml
* add tortoise support (tests needed)
* Add tortoise support (also defined orm_mode in pydantic model
* tests for tortoise support
* format by black
* docs for tortoise
* delete type annotations
* delete underscore
* do it in 1 line
* add 1 line before yield
* fix in docs
* fix bug and add annotation for test
* Tweak documentation and fix Tortoise error about id update
* Improve Tortoise coverage by using get instead of filter
* Fix Pipfile.lock
2019-12-03 21:24:27 +01:00
59b8f144d7
Bump fastapi from 0.43.0 to 0.44.0 ( #63 )
...
* Bump fastapi from 0.43.0 to 0.44.0
Bumps [fastapi](https://github.com/tiangolo/fastapi ) from 0.43.0 to 0.44.0.
- [Release notes](https://github.com/tiangolo/fastapi/releases )
- [Changelog](https://github.com/tiangolo/fastapi/blob/master/docs/history-design-future.md )
- [Commits](https://github.com/tiangolo/fastapi/compare/0.43.0...0.44.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Fix breaking changes and depreciation following fastapi 0.44.0
* Bump fastapi==0.44.0 in pyproject.toml
2019-11-28 07:33:38 +01:00
f0178d0e0d
Bump version: 0.3.1 → 0.3.2
2019-11-25 12:56:16 +01:00
9aa8398884
Do a proper Pydantic model instantation in SQLAlchemy adapter
2019-11-17 09:59:44 +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
6ba8bb835e
Bump version: 0.3.0 → 0.3.1
2019-10-31 21:44:08 +01:00
60c815e425
Fix #35 : catch import error when not having optional DB depedencies
2019-10-31 21:43:29 +01:00
658161518a
Add error codes on routes ( #34 )
...
Fix #33
2019-10-31 10:10:53 +01:00
b512197094
Use singular Event enum name
2019-10-31 09:59:41 +01:00
8200e44b38
Bump version: 0.2.0 → 0.3.0
2019-10-29 13:36:13 +01:00
f6ab644691
Apply Black formatting
2019-10-29 13:35:38 +01:00
9b7ec58800
#21 : Add superuser routes ( #30 )
...
* Add CRU superuser routes
* Add delete method on DB adapters
* Add superuser delete route
* Add superuser routes documentation
* Pass black formatter
2019-10-29 13:32:44 +01:00
ab0b187f20
Implement MongoDB database adapter ( #29 )
...
* Implement MongoDB adapter using motor
* Add mongo container to build pipeline
* Tidy up dependencies
* Update documentation for MongoDB
* Export MongoDB adapter from db package
* Pass black format
* Update README
2019-10-27 16:34:30 +01:00
3875632c80
Run the anti-timing attack hash only when user is None
2019-10-25 09:10:30 +02:00
3a84e02788
Bump version: 0.1.0 → 0.2.0
2019-10-25 08:34:53 +02:00
3506df31e7
Add ON_AFTER_REGISTER event handler
2019-10-25 08:28:29 +02:00
008a8296f2
Define on_after_forgot_password with a decorator
2019-10-24 09:18:07 +02:00
089d088268
Fix Deepsource issues ( #22 )
...
* Fix Deepsource issues
* Add docs/ to Deepsource exclusion list
* Fix black formatting
2019-10-20 16:16:52 +02:00
c4c33820c2
Bump version: 0.0.2 → 0.1.0
2019-10-20 10:37:33 +02:00
e146e4bca4
Fix #13 : add /me update route
2019-10-20 10:11:48 +02:00
1996ed69ea
Fix #14 : add /me route
2019-10-20 09:30:26 +02:00
8d65a11a4f
Fix #17 : prevent to set is_active/is_superuser on register route
2019-10-19 18:56:54 +02:00
5d4979f9a9
Fix #19 : 201 status code on successful registration
2019-10-19 18:36:57 +02:00
a4171f8bea
Fix #18 : check for existing user on registration
2019-10-19 18:31:08 +02:00
a5618399a1
Fix #9 : Write documentation ( #16 )
...
* Start to write documentation
* Add docs favicon
* Add routes documentation
* Add doc about dependency callables
* Add information about how to make authenticated calls
2019-10-19 18:16:08 +02:00
4ddbda797c
Bump version
2019-10-17 07:50:22 +02:00
1e1a3dc06a
Setup Flit and lock packages versions
2019-10-17 07:48:39 +02:00
f2892aa378
#5 Improve test coverage ( #6 )
...
* Improve test coverage of BaseUserDatabase
* Improve unit test isolation
* Improve coverage of router and authentication
2019-10-15 07:54:53 +02:00
49daeff869
Close #3 : forgot/reset password routes
2019-10-13 12:05:10 +02:00
f3b7fa662a
Ensure columns in SQL schema are not nullable
2019-10-11 13:08:03 +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
9f41a8b9a7
Use a Base table class for SQLAlchemy adapter
2019-10-09 18:03:10 +02:00
d781a41872
Install Black formatter
2019-10-09 16:52:06 +02:00
f6ff897232
Setup Mkdocs
2019-10-09 08:07:49 +02:00
11a6c60708
Improve lint tooling
2019-10-09 07:44:28 +02:00
96685c7696
Rename SQLAlchemy User table to BaseUser
2019-10-09 07:22:58 +02:00
9f04b7cc89
Ensure hashed_password is not output on register success
2019-10-08 17:23:14 +02:00
06dd8ad22e
Implement JWT authentication
2019-10-08 17:18:38 +02:00
20aa806375
Rename DB classes
2019-10-07 17:34:12 +02:00
51b67b0739
Add get by id method on DB adapter
2019-10-07 07:53:56 +02:00
c4ff6ca3fe
Implement password hash migration
2019-10-07 07:50:19 +02:00
20bb285f03
Use built-in OAuth2PasswordRequestForm for login
2019-10-06 14:02:42 +02:00
4ff6e2ad2b
Add inactive user handling
2019-10-06 13:23:08 +02:00
a81b438ec9
Implement authentication mechanism
2019-10-06 11:53:42 +02:00