A modern Identity and Access Management (IAM) service built with FastAPI, featuring custom implementations and enterprise-grade authentication flows.
- 🔧 Class-based views (CBV) implementation
- 🛣️ Enhanced router with trailing slash support
- 🔄 Custom middleware system
- 📧 Email/Password authentication
- 📱 Phone number with OTP
- ✨ Magic link authentication
- 🔑 OAuth2 providers:
- GitHub
- 🎟️ JWT with refresh tokens
- 👤 Profile management
- ✉️ Email verification
- 📞 Phone verification
- 🔐 Password reset/recovery
- 🖼️ Profile picture support
- 🔒 Role-based access control (RBAC)
- 🛡️ Custom permissions system
- 🍪 Secure cookie management
- 🚦 Rate limiting
- 🌐 CORS protection
- FastAPI
- PostgreSQL
- Redis
- Docker
- Nginx
- Alembic
- SQLAlchemy
- Clone the repository
git clone https://github.com/yourusername/vaultix-iam.git
cd vaultix-iam
- Configure environment variables
cp .env.example .env
# Edit .env with your configurations
- Run with Docker
docker-compose up --build
- WebAuthn/FIDO2 support
- Multi-factor authentication
- Hardware token support
- Additional OAuth providers
- Dynamic permission evaluation
- Resource-level permissions
- Organization/Team management
- API key management
- Advanced audit logging
- Brute force protection
- Session management
- Device fingerprinting
- Health monitoring system
- Admin dashboard
- Webhook system
- Plugin architecture
- API versioning
- Multi-tenant support
After starting the server, access the API documentation at:
- Swagger UI:
http://localhost:8000/docs
- ReDoc:
http://localhost:8000/redoc
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.
The project includes several custom implementations:
- Class-based views for FastAPI
- Enhanced router with uniform slash handling
- Custom middleware system
- Advanced authentication flows
- Service layer architecture
- Authentication Enhancements
- Biometric authentication
- Certificate-based auth
- Single Sign-On (SSO)
- Authorization
- Dynamic permission system
- Resource-level access control
- Role inheritance
- Infrastructure
- Distributed caching
- Database optimization
- Performance monitoring
- Integration
- Event system
- Webhook management
- Plugin system
For support, please open an issue in the GitHub repository.
Made with ❤️ by [Saleh]