Skip to content

agredyaev/Auth_sprint_1

Repository files navigation

Project Overview


Python Django Redis Pytest Elasticsearch FastAPI Docker License

This project involves the development of an authentication service. The implementation includes business logic and endpoints for user management, such as registration, role assignment/verification, and password changes. Below is a structured and concise overview of the key features:

User Management

  • Registration: Endpoints for new user registration.
  • Role Assignment/Verification: Assign roles to users and verify their roles.
  • Password Change: Allow users to change their passwords.

Authentication

  • Login: Users can log in and receive tokens for access.
  • Logout: Users can log out, and their tokens will be added to a blacklist to prevent further use.
  • Token Refresh: Refresh access tokens using refresh tokens.
  • Login/Logout History: View the login and logout history of users.

Role Management

  • Create Roles: Endpoints to create new roles.
  • Update Roles: Endpoints to update existing roles.
  • Delete Roles: Endpoints to delete roles.

Authorization

  • Access Control: A system to check user permissions for accessing specific endpoints.

Getting Started


Instructions to set up the project locally.

# Install Poetry if it's not already installed
# https://python-poetry.org/docs/#installation
curl -sSL https://install.python-poetry.org | python3 -

# Clone the repository 
https://github.com/agredyaev/Auth_sprint_1.git
 
# Navigate to the project directory
cd Auth_sprint_1

# Create .env file
cp .env.example .env

# Deploy API service and run tests with Docker Compose
make compose-up

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published