Login System

מערכת הרשמה והתחברות עם Python ו-MySQL

גרסה 2.1.0 עודכן: 15/02/2025

סקירה כללית

מערכת התחברות מאובטחת המבוססת על Python ו-MySQL. המערכת תומכת בהרשמה, התחברות, אימות דו-שלבי, ואיפוס סיסמה. כוללת ממשק REST API לאינטגרציה קלה.

תכונות עיקריות

  • הצפנת סיסמאות עם bcrypt
  • אימות דו-שלבי
  • JWT Authentication
  • ניהול הרשאות מתקדם

הוראות התקנה


# Create virtual environment
python -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Setup database
mysql -u root -p < setup.sql

# Run the application
python app.py
                    

API Endpoints


POST /api/auth/register
{
    "username": "string",
    "email": "string",
    "password": "string"
}

POST /api/auth/login
{
    "email": "string",
    "password": "string"
}

POST /api/auth/reset-password
{
    "email": "string"
}
                    

מבנה בסיס הנתונים


CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) UNIQUE NOT NULL,
    email VARCHAR(100) UNIQUE NOT NULL,
    password_hash VARCHAR(255) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE auth_logs (
    id INT PRIMARY KEY AUTO_INCREMENT,
    user_id INT,
    action VARCHAR(50),
    timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (user_id) REFERENCES users(id)
);
                    

אבטחה

  • הצפנת סיסמאות עם bcrypt
  • הגנה מפני SQL Injection
  • Rate Limiting
  • Session Management
  • CORS Configuration