-
Notifications
You must be signed in to change notification settings - Fork 228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot reproduce successful login running streamlit_authenticator_test.py. Version 0.3.2 (downloaded via pip). #173
Comments
Hi @jrojer, can you please tell me exactly what error you're facing? |
basically I download your from streamlit_authenticator.utilities.hasher import Hasher
hashed_passwords = Hasher(['abc', 'def']).generate()
Update the config manually. When running via |
I noticed that after I couldn't reproduce the approach in the README. |
Please ensure that you are saving the hashed passwords in the config.yaml file without any quotation marks. |
no quotation marks, I checked |
Can you please share your source code? |
cookie:
expiry_days: 30
key: some_signature_key
name: some_cookie_name
credentials:
usernames:
dbaldwin:
email: [email protected]
failed_login_attempts: 0
logged_in: false
name: David Baldwin
password: $2b$12$V0II5n4vIwgSbXyv1ApeAuhoAcB5pMOUnXf1e.e.qtXMaodw4KLIC
jsmith:
email: [email protected]
failed_login_attempts: 0
logged_in: true
name: John Smith
password: $2b$12$iWlVOac3uujRvTrXDi6wructXftKmo/GyQd6SMu5FmyX306kH.yFO
rbriggs:
email: [email protected]
failed_login_attempts: 0
logged_in: false
name: Rebecca Briggs
password: $2b$12$uNaTgvGPG9rMbzOJHYaPQePw0DUfp1qHBrSq6l4O304qani6pKFpm
rcouper:
email: [email protected]
failed_login_attempts: 0
logged_in: false
name: Ross Couper
password: $2b$12$Tir/PbHVmmnt5kgNxgOwMuxNIb2fv2pJ.q71TW8ekvbugCqkye4yu
wdewe:
email: [email protected]
failed_login_attempts: 0
logged_in: false
name: dwew
password: $2b$12$QJBPc7PxaTTBVJ.3cl4KlOPPqYCWVfaHqkk2IsoGDExXhihKZLDgy
pre-authorized:
emails:
- [email protected] import yaml
import streamlit as st
from yaml.loader import SafeLoader
import streamlit_authenticator as stauth
from streamlit_authenticator.utilities.exceptions import (CredentialsError,
ForgotError,
LoginError,
RegisterError,
ResetError,
UpdateError)
# Loading config file
with open('config.yaml', 'r', encoding='utf-8') as file:
config = yaml.load(file, Loader=SafeLoader)
# Creating the authenticator object
authenticator = stauth.Authenticate(
config['credentials'],
config['cookie']['name'],
config['cookie']['key'],
config['cookie']['expiry_days'],
config['pre-authorized']
)
# Creating a login widget
try:
authenticator.login()
except LoginError as e:
st.error(e)
if st.session_state["authentication_status"]:
authenticator.logout()
st.write(f'Welcome *{st.session_state["name"]}*')
st.title('Some content')
elif st.session_state["authentication_status"] is False:
st.error('Username/password is incorrect')
elif st.session_state["authentication_status"] is None:
st.warning('Please enter your username and password')
# Creating a password reset widget
if st.session_state["authentication_status"]:
try:
if authenticator.reset_password(st.session_state["username"]):
st.success('Password modified successfully')
except ResetError as e:
st.error(e)
except CredentialsError as e:
st.error(e)
# # Creating a new user registration widget
try:
(email_of_registered_user,
username_of_registered_user,
name_of_registered_user) = authenticator.register_user(pre_authorization=False)
if email_of_registered_user:
st.success('User registered successfully')
except RegisterError as e:
st.error(e)
# # Creating a forgot password widget
try:
(username_of_forgotten_password,
email_of_forgotten_password,
new_random_password) = authenticator.forgot_password()
if username_of_forgotten_password:
st.success('New password sent securely')
# Random password to be transferred to the user securely
elif not username_of_forgotten_password:
st.error('Username not found')
except ForgotError as e:
st.error(e)
# # Creating a forgot username widget
try:
(username_of_forgotten_username,
email_of_forgotten_username) = authenticator.forgot_username()
if username_of_forgotten_username:
st.success('Username sent securely')
# Username to be transferred to the user securely
elif not username_of_forgotten_username:
st.error('Email not found')
except ForgotError as e:
st.error(e)
# # Creating an update user details widget
if st.session_state["authentication_status"]:
try:
if authenticator.update_user_details(st.session_state["username"]):
st.success('Entries updated successfully')
except UpdateError as e:
st.error(e)
# Saving config file
with open('../config.yaml', 'w', encoding='utf-8') as file:
yaml.dump(config, file, default_flow_style=False) |
Hmm, this is very unusual, can you please try creating a clean environment and reinstalling Streamlit-Authenticator and trying again? |
indeed seems that streamlit authenticator is not working with streamlit==1.36.0. In my case it can login, but the cookie is not saved or loaded |
https://github.com/mkhorasani/Streamlit-Authenticator/blob/7a6b2f96426af0b0ab7a5462bfa475e0eed7c1f5/tests/streamlit_authenticator_test.py
The text was updated successfully, but these errors were encountered: