Getting Started

Introduction

Welcome to FerrisKey documentation.

Welcome to FerrisKey, a modern Identity and Access Management (IAM) solution built with Rust for exceptional performance and security.

What is FerrisKey?

FerrisKey is a modern identity and access management system.

In simple terms, it answers questions like:

  • Who are your users ?
  • How do they log in ?
  • What are they allowed to do ?
  • How do you manage identities securely at scale ?

FerrisKey helps organizations centralize authentication and user management, while remaining secure, flexible, and cloud-native?

It is designed for modern applications, but its concepts remain easy to understand even for non-technical users.

Why FerrisKey over Keycloak?

Rust Performance

Built with Rust for blazing-fast performance, minimal memory usage, and zero-cost abstractions

Memory Safety

Rust's ownership model eliminates common security vulnerabilities like buffer overflows and memory leaks

Lightweight

Significantly lower resource consumption compared to Java-based solutions like Keycloak

Fast Startup

Near-instant startup times make it perfect for containerized and serverless environments

Key Features

FerrisKey provides comprehensive IAM capabilities with modern architecture:

  • πŸ” OAuth 2.0 & OpenID Connect: Full compliance with industry-standard authentication protocols
  • πŸ‘₯ User Management: Complete user lifecycle management with registration, profiles, and account management
  • 🎯 Role-Based Access Control (RBAC): Fine-grained permissions and role management
  • 🏒 Multi-Tenancy: Support for multiple organizations and realms in a single instance
  • πŸ”‘ Single Sign-On (SSO): Seamless authentication across multiple applications
  • πŸ“± Multi-Factor Authentication (MFA): Built-in support for TOTP, SMS, and hardware tokens
  • 🌐 Social Login: Integration with Google, GitHub, Facebook, and other OAuth providers
  • πŸ“Š Audit Logs: Comprehensive logging for security and compliance requirements
  • πŸš€ High Availability: Built for clustering and horizontal scaling
  • πŸ“‘ REST APIs: Full-featured APIs for integration and automation

Use Cases

FerrisKey is perfect for securing various types of applications:

  • Microservices Architecture: Secure service-to-service communication and API gateways
  • Web Applications: Add authentication and authorization to React, Vue, or any web framework
  • Mobile Apps: Secure mobile applications with OAuth 2.0 flows
  • Enterprise Applications: Replace legacy authentication systems with modern IAM
  • SaaS Platforms: Multi-tenant authentication for Software-as-a-Service applications
  • API Security: Protect REST APIs and GraphQL endpoints
  • Container Orchestration: Lightweight IAM for Kubernetes and Docker environments

Architecture

FerrisKey's modern architecture delivers exceptional performance:

  • Async-First: Built with Tokio for high-concurrency async operations
  • Cloud-Native: Designed for containerization and cloud deployment
  • Stateless Design: Horizontally scalable with external session storage
  • Modular: Plugin architecture for custom authentication flows and integrations
  • Secure by Design: Follows best practices for security and data protection
  • Hexagonal Architecture: Clear separation of concerns for maintainability and testability

Getting Started

FerrisKey exists to make identity management clear, predictable, and secure.

Many systems grow complex over time:

  • Users multiply
  • Applications increase
  • Permissions become difficult to track
  • Security rules are scattered

FerrisKey brings all of this under one single source of truth.

It allows organizations to:

  • Manage users in one place
  • Controll access consistently
  • Connect multiple applications safely
  • Keep a clear view of who can access what

All of this is done with simplicity and transparency in mind.