Skip to content

RustLangES/vaultara

Repository files navigation

πŸ” Vaultara

Enterprise Identity & Access Management

License Rust

The modern, high-performance alternative to Keycloak

Features β€’ Quick Start β€’ Documentation β€’ Roadmap


Why Vaultara?

Vaultara Keycloak Auth0
Performance ⚑ Blazing fast (Rust) 🐒 JVM overhead ☁️ Cloud latency
Memory Usage πŸ’Ύ ~50MB πŸ’Ύ ~500MB+ N/A
Self-Hosted βœ… Full control βœ… Complex setup ❌ SaaS only
Multi-Tenant βœ… Native βœ… Realms βœ… Organizations
LDAP/AD βœ… Full support βœ… Built-in βœ… Enterprise
Kubernetes Native βœ… Webhooks ⚠️ Operators ❌
Open Source βœ… MIT/Apache-2.0 βœ… Apache-2.0 ❌ Proprietary
Cost πŸ’š Free πŸ’š Free πŸ’° Per user

Features

πŸš€ Built for Enterprise

  • Multi-tenant Architecture - Complete isolation between organizations
  • High Availability - Horizontal scaling, no single points of failure
  • Complete Audit Trail - Immutable logs, entity versioning, compliance-ready
  • Enterprise SSO - LDAP, Active Directory, SAML, OAuth/OIDC federation

πŸ” Modern Security

  • OAuth 2.0 / OpenID Connect - Full specification compliance
  • WebAuthn/Passkeys - Passwordless authentication
  • TOTP/MFA - Multi-factor authentication with backup codes
  • ABAC Policies - Attribute-based access control with Rego-like rules
  • Per-Tenant Security Config - Custom password policies, lockout rules, IP restrictions

☸️ Cloud Native

  • Kubernetes Integration - Native TokenReview & SubjectAccessReview webhooks
  • Helm Charts - One-command deployment to any Kubernetes cluster
  • Docker Ready - Container-first deployment model
  • Generic SMTP - Works with any email provider

πŸ”Œ Developer Experience

  • SDKs - Native libraries for Rust, Python, and Node.js
  • REST API - Comprehensive API for all operations
  • Webhooks - Real-time event notifications
  • Plugin System - Extend with custom authentication providers

Quick Start

Docker (Recommended)

# Start Vaultara with PostgreSQL
docker-compose up -d

# Access the API
curl http://localhost:8080/health

Kubernetes

# Add Helm repository
helm repo add vaultara https://charts.vaultara.io

# Install Vaultara
helm install vaultara vaultara/vaultara \
  --set config.database.url="postgresql://user:pass@postgres:5432/vaultara"

From Source

# Clone and build
git clone https://github.com/RustLangES/vaultara
cd vaultara
cargo build --release

# Configure and run
cp .env.example .env
./target/release/vaultara

Integration Examples

Rust

use vaultara_sdk::{VaultaraClient, VaultaraConfig};

let client = VaultaraClient::new(
    VaultaraConfig::new("https://vaultara.example.com")
        .with_api_key("your-api-key")
)?;

// Validate token
let user = client.validate_token("access-token").await?;

// Check permission
let allowed = client
    .check_permission("tenant-id", "user-id", "orders", "create")
    .await?;

Python

from vaultara_sdk import VaultaraClient

client = VaultaraClient("https://vaultara.example.com", api_key="your-api-key")

# Validate token
user = client.validate_token("access-token")
if user.valid:
    print(f"Welcome, {user.username}!")

# Check permission
if client.check_permission("tenant-id", "user-id", "orders", "create"):
    print("Permission granted")

Node.js

const { VaultaraClient } = require('@vaultara/sdk');

const client = new VaultaraClient({
  baseUrl: 'https://vaultara.example.com',
  apiKey: 'your-api-key'
});

// Validate token
const user = await client.validateToken('access-token');

// Check permission
const allowed = await client.checkPermission('tenant-id', 'user-id', 'orders', 'create');

Use Cases

🏒 Enterprise SSO

Centralize authentication across all your applications with single sign-on. Integrate with existing LDAP/Active Directory infrastructure.

πŸ”§ Microservices Auth

Secure service-to-service communication with machine tokens. Validate permissions at the edge with minimal latency.

☸️ Kubernetes RBAC

Use Vaultara tokens for Kubernetes authentication. Map Vaultara roles to Kubernetes RBAC for unified access control.

πŸ“± Mobile & Web Apps

OAuth 2.0 with PKCE for secure mobile authentication. WebAuthn support for passwordless login.

Documentation

Document Description
API Reference Complete REST API documentation
Kubernetes Guide K8s integration setup
Architecture System design & data model
ROADMAP Development roadmap

Enterprise Support

Need enterprise features or dedicated support?

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

License

Dual-licensed under MIT or Apache-2.0 at your option.


Built with ❀️ in Rust

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •