Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenpangpang
open-webui
Commits
8b13755d
"...git@developer.sourcefind.cn:chenpangpang/open-webui.git" did not exist on "ef300248baeef8c354ba575af354ea662210eed2"
Commit
8b13755d
authored
Jul 04, 2024
by
Timothy J. Baek
Browse files
Update auths.py
parent
8fe2a7bb
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
51 additions
and
38 deletions
+51
-38
backend/apps/webui/models/auths.py
backend/apps/webui/models/auths.py
+51
-38
No files found.
backend/apps/webui/models/auths.py
View file @
8b13755d
...
@@ -102,40 +102,44 @@ class AuthsTable:
...
@@ -102,40 +102,44 @@ class AuthsTable:
role
:
str
=
"pending"
,
role
:
str
=
"pending"
,
oauth_sub
:
Optional
[
str
]
=
None
,
oauth_sub
:
Optional
[
str
]
=
None
,
)
->
Optional
[
UserModel
]:
)
->
Optional
[
UserModel
]:
log
.
info
(
"insert_new_auth"
)
with
get_db
()
as
db
:
id
=
str
(
uuid
.
uuid4
()
)
log
.
info
(
"insert_new_auth"
)
auth
=
AuthModel
(
id
=
str
(
uuid
.
uuid4
())
**
{
"id"
:
id
,
"email"
:
email
,
"password"
:
password
,
"active"
:
True
}
)
result
=
Auth
(
**
auth
.
model_dump
())
db
.
add
(
result
)
user
=
Users
.
insert_new_user
(
auth
=
AuthModel
(
id
,
name
,
email
,
profile_image_url
,
role
,
oauth_sub
**
{
"id"
:
id
,
"email"
:
email
,
"password"
:
password
,
"active"
:
True
}
)
)
result
=
Auth
(
**
auth
.
model_dump
())
db
.
add
(
result
)
db
.
commit
()
user
=
Users
.
insert_new_user
(
db
.
refresh
(
result
)
id
,
name
,
email
,
profile_image_url
,
role
,
oauth_sub
)
if
result
and
user
:
db
.
commit
()
return
user
db
.
refresh
(
result
)
else
:
return
None
if
result
and
user
:
return
user
else
:
return
None
def
authenticate_user
(
self
,
email
:
str
,
password
:
str
)
->
Optional
[
UserModel
]:
def
authenticate_user
(
self
,
email
:
str
,
password
:
str
)
->
Optional
[
UserModel
]:
log
.
info
(
f
"authenticate_user:
{
email
}
"
)
log
.
info
(
f
"authenticate_user:
{
email
}
"
)
try
:
try
:
auth
=
db
.
query
(
Auth
).
filter_by
(
email
=
email
,
active
=
True
).
first
()
with
get_db
()
as
db
:
if
auth
:
if
verify_password
(
password
,
auth
.
password
):
auth
=
db
.
query
(
Auth
).
filter_by
(
email
=
email
,
active
=
True
).
first
()
user
=
Users
.
get_user_by_id
(
auth
.
id
)
if
auth
:
return
user
if
verify_password
(
password
,
auth
.
password
):
user
=
Users
.
get_user_by_id
(
auth
.
id
)
return
user
else
:
return
None
else
:
else
:
return
None
return
None
else
:
return
None
except
:
except
:
return
None
return
None
...
@@ -154,38 +158,47 @@ class AuthsTable:
...
@@ -154,38 +158,47 @@ class AuthsTable:
def
authenticate_user_by_trusted_header
(
self
,
email
:
str
)
->
Optional
[
UserModel
]:
def
authenticate_user_by_trusted_header
(
self
,
email
:
str
)
->
Optional
[
UserModel
]:
log
.
info
(
f
"authenticate_user_by_trusted_header:
{
email
}
"
)
log
.
info
(
f
"authenticate_user_by_trusted_header:
{
email
}
"
)
try
:
try
:
auth
=
db
.
query
(
Auth
).
filter
(
email
=
email
,
active
=
True
).
first
()
with
get_db
()
as
db
:
if
auth
:
auth
=
db
.
query
(
Auth
).
filter
(
email
=
email
,
active
=
True
).
first
()
user
=
Users
.
get_user_by_id
(
auth
.
id
)
if
auth
:
return
user
user
=
Users
.
get_user_by_id
(
auth
.
id
)
return
user
except
:
except
:
return
None
return
None
def
update_user_password_by_id
(
self
,
id
:
str
,
new_password
:
str
)
->
bool
:
def
update_user_password_by_id
(
self
,
id
:
str
,
new_password
:
str
)
->
bool
:
try
:
try
:
result
=
db
.
query
(
Auth
).
filter_by
(
id
=
id
).
update
({
"password"
:
new_password
})
with
get_db
()
as
db
:
return
True
if
result
==
1
else
False
result
=
(
db
.
query
(
Auth
).
filter_by
(
id
=
id
).
update
({
"password"
:
new_password
})
)
return
True
if
result
==
1
else
False
except
:
except
:
return
False
return
False
def
update_email_by_id
(
self
,
id
:
str
,
email
:
str
)
->
bool
:
def
update_email_by_id
(
self
,
id
:
str
,
email
:
str
)
->
bool
:
try
:
try
:
result
=
db
.
query
(
Auth
).
filter_by
(
id
=
id
).
update
({
"email"
:
email
})
with
get_db
()
as
db
:
return
True
if
result
==
1
else
False
result
=
db
.
query
(
Auth
).
filter_by
(
id
=
id
).
update
({
"email"
:
email
})
return
True
if
result
==
1
else
False
except
:
except
:
return
False
return
False
def
delete_auth_by_id
(
self
,
id
:
str
)
->
bool
:
def
delete_auth_by_id
(
self
,
id
:
str
)
->
bool
:
try
:
try
:
# Delete User
with
get_db
()
as
db
:
result
=
Users
.
delete_user_by_id
(
id
)
if
result
:
# Delete User
db
.
query
(
Auth
).
filt
er_by
(
id
=
id
)
.
delete
()
result
=
Users
.
delete_us
er_by
_
id
(
id
)
return
True
if
result
:
else
:
db
.
query
(
Auth
).
filter_by
(
id
=
id
).
delete
()
return
False
return
True
else
:
return
False
except
:
except
:
return
False
return
False
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment