factcircuit
FactCircuit: an auditable claim-and-evidence verification loop with immutable provenance, staged checks, bounded retrieval, and reproducible evaluation.
Apache Iceberg REST Catalog in Rust — access control, credential vending and audit for every engine and AI agent. Apache 2.0.
DataRust · PythonGitHub @lakekeeperSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Please visit https://docs.lakekeeper.io for Documentation!
This is Lakekeeper: An Apache-Licensed, secure, fast and easy-to-use implementation of the Apache Iceberg REST Catalog specification based on apache/iceberg-rust. Define access control once, in the catalog, and enforce it across every compute engine — no rules duplicated per engine. Every request is checked against your policy before any data is read, and recorded. If you have questions, feature requests or just want a chat, we are hanging around in Discord!
A Docker Container is available on quay.io. We have prepared a minimal docker-compose file to demonstrate how to use the Lakekeeper catalog with common query engines.
git clone https://github.com/lakekeeper/lakekeeper.git
cd lakekeeper/examples/minimal
docker compose up
Then open your browser and head to localhost:8888 to load the example Jupyter notebooks or head to localhost:8181 for the Lakekeeper UI (the open-source Console).
For more information on deployment, please check the Getting Started Guide.
The Iceberg Catalog REST interface has become the standard for catalogs in open Lakehouses. It natively enables multi-table commits, server-side deconflicting and much more. It is figuratively the (TIP) of the Iceberg.
LAKEKEEPER__OPENID_PROVIDER_URI and you are good to go.ContractVerification trait.Catalog), SecretsStore, Authorizer, Events (CloudEventBackend) and ContractVerification as interfaces (Traits). This allows you to tap into any access management system of your company or stream change events to any system you like - simply by implementing a handful methods.spark, pyiceberg, trino and starrocks.Authorizer trait.If you are missing something, we would love to hear about it in a GitHub Issue.
| Storage | Status | Comment |
|---|---|---|
| S3 - AWS | vended-credentials & remote-signing with optional role assumption, support for session Tags | |
| S3 - Custom | vended-credentials & remote-signing; MinIO, Ceph and other S3-compatible stores | |
| S3 - Cloudflare R2 | vended-credentials via R2 temporary-access-credentials | |
| S3 - Alibaba Cloud OSS (Aliyun / 阿里云) | vended-credentials via Alibaba Cloud STS AssumeRole | |
| Azure ADLS Gen2 | ||
| Microsoft OneLake | Microsoft Fabric / OneLake with SAS-token vending; supports regional and private-link endpoints | |
| Google Cloud Storage | Support for GCS with and without hierarchical namespace |
Details on how to configure the storage profiles can be found in the Docs.
| Backend | Status | Comment |
|---|---|---|
| Postgres | >=15 |
| Backend | Status | Comment |
|---|---|---|
| Postgres | ||
| kv2 (hcp-vault) | userpass auth |
| Backend | Status | Comment |
|---|---|---|
| NATS | ||
| Kafka |
Operations outside of the Iceberg REST specification that are supported by Lakekeeper.
| Operation | Status | Description |
|---|---|---|
| Project Management | ||
| Warehouse Management | ||
| Soft Deletion | Configurable on Warehouse level | |
| Deletion Protection | Deletion Protection for Warehouses, Namespaces, Tables and Views | |
| Recursive Drop | Recursively drop all items inside Namespaces | |
| Search | Fuzzy search for Tables on Warehouse level | |
| Task Management | ||
| User Management | User discovery and management for permission assignment. Includes fuzzy search functionality. Note: Lakekeeper does not serve as an identity provider | |
| Role Management | ||
| Permission Management | Table level, Requires OpenFGA |
| Operation | Status | Description |
|---|---|---|
| OIDC (AuthN) | Secure access to the catalog via OIDC | |
| Custom (AuthZ) | If you are willing to implement a single rust Trait, the AuthZHandler can be implement to connect to your system | |
| OpenFGA (AuthZ) | Internal Authorization management | |
| Cedar | Available in Lakekeeper+ | |
| OPA bridge | Exposes Lakekeeper permissions via Open Policy Agent so engines like Trino enforce them |
| UI | Status | Comment |
|---|---|---|
| Lakekeeper Console | Open-source web UI, bundled via the ui feature. Manage warehouses, namespaces, tables, views, users, roles and permissions |
Lakekeeper is built by a community of contributors.
See DEVELOPMENT.md to get started, or join us on Discord.
Community support is available on Discord and via GitHub Issues.
Lakekeeper is maintained by Vakamo, which also offers Lakekeeper Plus — an edition adding Cedar-based authorization (see the Auth(N/Z) table above), audit and an SLA.
Licensed under the Apache License, Version 2.0