feat(auth): extend User entity with authentication fields

- Add username field
- Add password_hash for bcrypt hash storage
- Add email_verified and email_verification_token for email verification
- Add password_reset_token and password_reset_expires_at for password reset
- Add last_login_at and last_login_ip for login tracking
- Backward compatible with existing code (all new fields have defaults)

Phase 4 Task 5/68 completed
This commit is contained in:
Xiaoxia AI
2026-06-17 01:18:35 +08:00
parent 298ab93358
commit 5d35a19084
+9
View File
@@ -24,6 +24,15 @@ class User:
id: str
email: str
display_name: str
username: str = ""
# 认证相关字段
password_hash: str = ""
email_verified: bool = False
email_verification_token: str | None = None
password_reset_token: str | None = None
password_reset_expires_at: datetime | None = None
last_login_at: datetime | None = None
last_login_ip: str | None = None
created_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc))