What is FerrisKey?
FerrisKey is a modern, open-source Identity & Access Management (IAM) system built in Rust. It gives your applications authentication, authorization, and user management without the weight of legacy IAM platforms.
What is IAM?
Identity & Access Management answers two questions for every request your system receives:
- Authentication: Who are you? Verifying identity through passwords, multi-factor authentication, passkeys, or federated providers.
- Authorization: What can you do? Determining which resources and actions an authenticated identity is permitted to access.
Beyond these fundamentals, a modern IAM system handles token issuance (JWT), single sign-on (SSO), session management, audit logging, and integration with external identity providers.
Why FerrisKey?
FerrisKey was built from scratch in Rust for teams that want a clear, modern IAM system:
- Performance & Safety: Rust gives FerrisKey a fast, reliable foundation with strong memory safety.
- Multi-Tenancy: Realms isolate users, clients, roles, credentials, and configuration so one deployment can serve many organizations.
- Modular Architecture: FerrisKey is split into focused modules. Enable the parts you need.
- Open Source: FerrisKey is MIT-licensed, community-driven, and designed to be understood.
Modules
FerrisKey is organized into modules, each focused on one part of identity management:
Trident
Multi-factor authentication with TOTP, WebAuthn passkeys, magic links, and recovery codes.
SeaWatch
Audit and security events for critical actions across your realms.
Compass
Authentication flow recording and debugging for multi-step sign-in.
Abyss
Identity provider federation for Google, GitHub, Discord, and custom OIDC providers.
Aegis
Scopes and protocol mappers to control what goes into your tokens.
Webhooks
Event-driven integrations for lifecycle events and external notifications.