feat: добавлен обработчик аутентификации
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Lint project / lint (push) Successful in 45s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Lint project / lint (push) Successful in 45s
				
			- Создан новый модуль `handlers.py` для управления аутентификацией. - Добавлена класс `AuthHandler` с методом для генерации хэшей паролей. - Использование библиотеки `passlib` для обеспечения безопасного хранения паролей.
This commit is contained in:
		
							
								
								
									
										28
									
								
								lkeep/apps/auth/handlers.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								lkeep/apps/auth/handlers.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | |||||||
|  | from passlib.context import CryptContext | ||||||
|  |  | ||||||
|  | from lkeep.core.settings import settings | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class AuthHandler: | ||||||
|  |     """ | ||||||
|  |     Обрабатывает аутентификационные запросы и обеспечивает безопасность пользовательских данных. | ||||||
|  |  | ||||||
|  |     :ivar secret: Секретный ключ, используемый для дополнительной безопасности при генерации хешей. | ||||||
|  |     :type secret: str | ||||||
|  |     :ivar pwd_context: Контекст для использования bcrypt-алгоритма хеширования паролей. | ||||||
|  |     :type pwd_context: CryptContext | ||||||
|  |     """ | ||||||
|  |  | ||||||
|  |     secret = settings.secret_key.get_secret_value() | ||||||
|  |     pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") | ||||||
|  |  | ||||||
|  |     async def get_password_hash(self, password: str) -> str: | ||||||
|  |         """ | ||||||
|  |         Генерирует хэш-значение пароля для безопасного сохранения и сравнения. | ||||||
|  |  | ||||||
|  |         :param password: Пароль пользователя, который нужно зашифровать. | ||||||
|  |         :type password: str | ||||||
|  |         :returns: Хешированный вариант пароля. | ||||||
|  |         :rtype: str | ||||||
|  |         """ | ||||||
|  |         return self.pwd_context.hash(password) | ||||||
		Reference in New Issue
	
	Block a user