Not ready for production use yet. Please use with caution.
Rust-based Open Source Identity and Access Management
Shield is a robust, multi-tenant authentication and authorization solution developed by Mukesh Singh for modern age applications. It provides a comprehensive set of features to secure your applications and manage user access effectively.
-
Multi-tenant Support: Manage multiple organizations or projects within a single instance.
-
User Management: Efficiently handle user accounts and permissions.
-
Role-based Access Control (RBAC): Define and manage user roles and permissions.
-
Session Management: Secure handling of user sessions.
-
API Key Support: Generate and manage API keys for secure programmatic access.
- API Key Rotation
- Rate Limiting
- Expiration
- Blacklisting and Whitelisting
- Revocation
Coming Soon...
- Two-factor Authentication (2FA)
- OAuth2 Support
- OpenID Connect Support
- SAML Support
For detailed documentation, visit docs.shield.rs.
git clone https://github.com/shield-auth/shield.git
cd shield
cp .env.example .env
cargo run
👉 Note: You can get the default credentials in terminal or on later stage you can find it in ./logs/default_cred.json
To generate Sea-ORM entities, use the following command:
sea-orm-cli generate entity -o entity/src/models --with-serde both --enum-extra-attributes 'serde(rename_all = "snake_case")'
[Add information about how to contribute to the project]
This project is dual-licensed under the following terms (see the LICENSE file for details):
Users are free to choose the license that best suits their needs.
- Website: shield.rs
- X: @shield_auth
- Discord: Join our community
An open source initiative with ❤️ by Mukesh Singh