82 Commits

Author SHA1 Message Date
3b64aeb97b Add OAuth 2.0 authorization login (#293)
* [WIP] Add OAuth 2.0 authorization login

* Add social user relationship table

* Update social user relationship table back_populates

* Add OAuth 2.0 related interface

* Automatically redirect authorization addresses

* Update OAuth2 authorization to GitHub

* Add implementation code

* fix the callback interface return

* fix typo

* fix the api return

* fix imports

* Fix logic for creating system users and social tables

* Fix user information storage

* Add OAuth2 source link

* remove unnecessary db refresh

* remove the front end docker-compose annotation
2024-03-15 13:46:43 +08:00
8af4336428 Update interface file directory level (#295)
* Update interface file directory level

* fix ruff format
2024-02-25 20:48:25 +08:00
cd96d2f5cd Update dao and service instantiation styles (#276)
* Update dao and service instantiation styles

* Fix auth_service use
2024-01-22 10:22:13 +08:00
576160129a Update interface coding style (#275) 2024-01-20 19:58:19 +08:00
a41b1673e5 Update schemas naming style (#272) 2024-01-18 19:27:41 +08:00
a22aaa0a3e Attempt to optimize serialization performance (#266)
* Attempt to serialize performance optimization

* Add casbin service functions return type

* update comments
2024-01-11 20:15:03 +08:00
5c7d6659cf Reconstruct RBAC authentication logic (#264)
* Reconstruct RBAC authentication logic

* fix typo

* Migrate casbin sqla Adapter to redis

* Delete casbin model conf file

* Add permission dependencies

* Add request permission depends on execution condition

* Update openapi authorization method

* Add request permission identity

* Add request permission dependency description

* Migrate casbin redis adapter to sqla

* Update menu model and add function

* Fix menu permission identification

* Update user partial interface permissions

* Update menu table SQL

* Add role menu permission description to README

* fix README typo

* Simplify permission dependency injection

* Fix menu authorization store

* Fix interface permission dependency order

* Update role menu permission flag

* Update the background permission logic of the interface
2024-01-08 09:35:47 +08:00
f39d11eb9d Fix use request.form() in middleware (#260)
* Fix request.form() in middleware

* resume global exception handling

* update the order in which data is processed

* Add demo interface for uploading files

* fix path params
2024-01-03 22:23:56 +08:00
00ad74b5c2 Prepare to lock the pydantic-v1 branch (#254) 2023-12-19 23:02:14 +08:00
58eb24c11a Fix get all G rules interface logic (#250) 2023-12-17 21:20:23 +08:00
470cd9a9c2 adopt ruff formatter (#242)
* adopt ruff formatter

* Fix merge format
2023-11-22 19:09:08 +08:00
275f9e5e93 Replace APScheduler to Celery asynchronous tasks (#229)
* Replace APScheduler to Celery task

* black format

* Add celery to run the script

* Update celery usage to README

* Update test task

* Add celery rabbitmq broker

* Fix dockerfiles

* Add task interface access authorization

* Update celery deploy run

* Fix dockerfiles

* Fix supervisor conf

* Update celery broker default is redis

* Force the pro env to use rabbitmq

* Update the task interface

* Add celery beat README description

* Update warning text style

* Revoke the default config comment content of the supervisor
2023-10-27 11:59:46 +08:00
81c0d2cc74 Fix pytest interface unit tests (#233) 2023-10-23 19:30:30 +08:00
5173ff734f Update the global unified response code (#223)
* Update the global unified response

* Update the uniform return model default

* Update the environment variable type
2023-09-27 13:45:38 +08:00
46d6fbccf5 Simplified query interface returns data serialization (#219)
* Simplified query interface returns data serialization

* reply to the inquiry pydantic verification

* restore import sorting
2023-09-27 10:46:30 +08:00
de9b10a867 Fix token whitelist and new token storage (#220)
* Fix token whitelist and new token storage

* Fix logout interface logic
2023-09-26 18:09:55 +08:00
7409285b49 Add api and casbin related interfaces (#198)
* Add get all apis and more interface

* Add casbin get related interface

* typo

* update function name
2023-08-07 20:46:32 +08:00
64f994c28f Add more Casbin related interfaces (#195)
* Add more Casbin related interfaces

* lint

* update delete all api paths

* fix decimal data format

* update add user interface return

* fix add user interface return

* fix interface path is wrong

* lint
2023-08-03 14:42:52 +08:00
c1295dda84 Fix casbin async enforcer (#192)
* rename the file casbin_rbac to rbac

* omit

* fix casbin async enforcer

* update the group rule interface access permissions

* add menu permission validation

* update the init test data sql

* add the staff field to the user information query return
2023-07-31 17:12:07 +08:00
b41aca53ad Update roles and nickname fields to be optiona (#190)
* Update roles and nickname fields to be optional

* Update the department and role fields is optional

* fix role judgment

* New add user interface

* update interface permissions

* fix nickname judgment
2023-07-31 11:52:26 +08:00
eb662e4525 Add user password encryption salt (#191)
* Add user password encryption salt

* update the salt logic

* Update the SQL files

* Add an update admin login permission interface

* update the is_staff field comment

* update the staff error msg

* Update user backend management operation permissions
2023-07-31 10:53:46 +08:00
91803a773e Add interface to get all menus of a role (#183)
* Add interface to get all menus of a role

* deduplicate data classes

* update get role menu routing

* update casbin authentication
2023-07-22 16:57:41 +08:00
4ed1899f8f Update role menu interface is standalone (#182)
* Update role directory interface is standalone

* fix data type conversion error

* update the body to the schema type

* fix menu permission verification
2023-07-21 17:11:24 +08:00
3759e44786 Add the role status conditional query (#181) 2023-07-21 15:50:38 +08:00
bdcb560e81 Add get roles related interface (#178) 2023-07-16 13:53:26 +08:00
f21006000a Update user role interface to standalone (#177)
* Update user role interface to standalone

* Fix the userinfo schema department field type

* fix update userinfo values

* fix update user avatar value

* update readme docs

* update test data sql

* update readme typo

* update readme docs
2023-07-14 17:01:47 +08:00
d877c86664 Update monitoring return data (#176) 2023-07-13 17:44:07 +08:00
44befcc79f Add query users by department ID (#175)
* Add query users by department ID

* fix dept parent id schema field

* fix dept get all select

* update the test sql
2023-07-09 16:39:37 +08:00
f41706deac Add menu table title field (#170)
* Add menu table title field

* update field unique index
2023-07-04 19:15:21 +08:00
22e205524b Enable login interface captcha function (#165)
* enable captcha login

* Delete menu meta column

* Update the login interface rate limit
2023-07-02 16:05:40 +08:00
ee57c08ea6 Adapt to frontend (#162)
* Adapt to the frontend.
* Fix role update exception.
* add current user info interface.
* add meta schema
* annotate captcha
* update interface to restful specification
* update info to me
2023-07-01 18:51:10 +08:00
caa90a746d Update some interface permission checks (#158) 2023-06-26 19:58:32 +08:00
02ae49c83b Add task-related interfaces (#157)
* Add task-related interfaces

* fix merge error
2023-06-26 18:18:29 +08:00
a41cdde838 Update some routing groups (#155)
* Update some routing groups

* move prefix to init
2023-06-26 18:06:57 +08:00
3d0d0ccde3 Refactor global datetime to timezone datetime (#152) 2023-06-20 16:50:42 +08:00
465b68d35e Add datetime util (#149)
* Add the datetime utils

* lint
2023-06-19 09:24:23 +08:00
439ab09ebd Update the status field type to int (#143) 2023-06-17 17:22:32 +08:00
29b170f599 Update the server monitoring interface (#141) 2023-06-17 16:19:57 +08:00
3aa68cdb6c Fix the operation log message error (#140) 2023-06-17 16:17:30 +08:00
47b4409b42 Add system monitoring interface (#135) 2023-06-15 20:13:56 +08:00
d498969400 The level field is deprecated but remained (#134) 2023-06-15 17:25:54 +08:00
c53fa9fda8 Update and fix permissions logic (#129)
* Update and fix permissions logic

* feat: Update base route

* Exclude non-system routing record operation logs

* Update the parameter variable name

* Fix the jwt authorization verify

* Roles menu authorization is turned off by default

* Fix the operation log code field type

* Update the casbin routing string to config

* Fix JWT middleware

* Add custom msg of token error

* Add the character length of the operation log code field

* Update the logout interface authorization
2023-06-14 22:34:56 +08:00
b18dea55aa add dictionary management interface (#127)
* add dictionary management interface

* fix dictionary data one-to-many annotation
2023-06-14 15:39:41 +08:00
f8b48e4eea Add login graphic captcha (#124)
* add the get verification code interface

* add the login interface captcha

* clean up the debugging code
2023-06-13 23:27:12 +08:00
5c64d99451 Add menu-related interfaces (#118)
* Adding menu-related interfaces

* fix schema typo

* add menu query interface validation
2023-06-13 16:37:39 +08:00
c4c835cfb8 opera_log_middleware method split (#105)
* opera_log_middleware method split

* extract ip and ua information

* added ua and ip information to login log and operation log

* extract request args func

* desensitization adds async decorations

* fix get summary exception

* fix get summary exception2
2023-06-11 05:05:31 +08:00
682e2fdd88 Add casbine-related interfaces (#107)
* Add casbin-related interfaces

* format
2023-06-10 17:28:18 +08:00
6c5e7a6881 Add department-related interfaces and others (#101)
* Add tool to build tree structure data

* Update to keyword parameter style

* Add department-related interfaces

* Update departmental section interface permissions

* Add TODO and minor fixes

* Fix department relationships

* Fix user foreign key relationship deletion setting

* Add path parameters to the operation log

* Complete todo items

* Update department deletion logic

* Update operation log entry records

* Add AES encryption algorithm

* Add operation log request entry to the secret

* Fix naming prefixes

* Add easy encryption tools

* FIX CASBIN_EXCLUDE typing

* Update user password reset interface

* Add confirm_password to the operation log encryption
2023-06-09 11:00:13 +08:00
abcc9d2308 Add sync to async decorator support (#96)
* Add sync to async decorator support

* Update ASyncTranslator to asgiref
2023-06-06 20:13:33 +08:00
9e833db5f5 Uniform schema class naming convention style. (#98) 2023-06-06 19:48:03 +08:00