Skip to main content

MLflow Access Control (mlflow-oidc-auth)

License PyPI Downloads Ask DeepWiki

Authentication and access control for MLflow tracking servers: single sign-on (OIDC, SAML 2.0), SCIM user and group provisioning, service accounts, and per-resource permissions for users, groups and workspaces.

It is an MLflow server plugin, installed as mlflow-oidc-auth and started with --app-name oidc-auth. The package keeps its original name; it has long since grown beyond OIDC.

Disclaimer

This project is not affiliated with, endorsed by, or sponsored by the MLflow Project, Databricks, the Linux Foundation, or LF Projects, LLC. MLflow and related marks are trademarks of their respective owners. Maintained by Kharkevich Engineering Lab.

Features

  • Single sign-on for the MLflow UI and API through any OpenID Connect provider (confidential or PKCE public clients) or SAML 2.0 identity provider, with several providers side by side
  • Programmatic access: automation authenticates with short-lived workload identities — Kubernetes service-account tokens or IdP client-credentials / workload-identity tokens (JWT bearer); people using the MLflow client from a laptop or notebook use named personal access tokens (basic auth). See Programmatic access
  • SCIM 2.0 provisioning of users and groups from your directory
  • Permissions (READ, USE, EDIT, MANAGE) on experiments, registered models, prompts, scorers and AI Gateway resources, granted to users, groups or regex patterns, with deny by default
  • Workspaces for multi-tenant isolation on a shared MLflow server
  • Admin UI for users, groups, service accounts, permissions, workspaces, webhooks and trash
  • Operations: server-side sessions, audit log, health probes, Redis-backed permission cache, and secrets from AWS, Azure, HashiCorp Vault or Kubernetes

Documentation

For detailed documentation, please refer to the docs. AI generated documentation is available at DeepWiki.

Quick Start

To get the full version (with entire MLflow and all dependencies), run:

python3 -m venv venv
source venv/bin/activate
python3 -m pip install mlflow-oidc-auth[full]
mlflow server --app-name oidc-auth --host 0.0.0.0 --port 8080

Webhook secret encryption key 🔐

Webhook secrets are stored encrypted in the database using a Fernet key. If you plan to use MLflow webhooks with secrets, set the encryption key in the environment variable MLFLOW_WEBHOOK_SECRET_ENCRYPTION_KEY before creating any webhooks. Generate a key with:

MLFLOW_WEBHOOK_SECRET_ENCRYPTION_KEY=$(python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())")
export MLFLOW_WEBHOOK_SECRET_ENCRYPTION_KEY

Important: keep this key stable across application restarts and replicas. If the key is lost or changed after webhooks are created, previously stored secrets cannot be decrypted and will cause webhook listing to fail until you restore the original key or remove/rotate the affected webhook secrets.

Development

For development quick start, please refer to the Development and Contribution section. Contribution guidelines are available in CONTRIBUTING.md.

License

Apache 2 Licensed. For more information, please see LICENSE.

Based on MLflow basic-auth plugin

https://github.com/mlflow/mlflow/tree/master/mlflow/server/auth

Metadata

Release files for mlflow-oidc-auth 10.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mlflow-oidc-auth 10.1.2
File Size Uploaded
mlflow_oidc_auth-10.1.2.tar.gz 1.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mlflow-oidc-auth 10.1.2
File Interpreter ABI Platform
mlflow_oidc_auth-10.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 3.4 MB

Release files / mlflow_oidc_auth-10.1.2.tar.gz

Download URL mlflow_oidc_auth-10.1.2.tar.gz
Size 1.5 MB
Tags Source
SHA-256 checksum
How to use checksums
f45f59082190e13e3577c52b7e8b577fa764b02b24bdb44417bc9e8ba7615d05
BLAKE2b-256 checksum
How to use checksums
76db9fcee6752f1de23b81dca58537fe54df26b2e6f3d2ff71935730cc763f6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.

Transparency log

Release files / mlflow_oidc_auth-10.1.2-py3-none-any.whl

Download URL mlflow_oidc_auth-10.1.2-py3-none-any.whl
Size 1.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
9dba10aca67dfdeae86ded1034090eb80858299e29ae5f762f9bf05ac51d1a46
BLAKE2b-256 checksum
How to use checksums
3fee36c2dfdfb8a247376e4f256410bae045f046605f70bad98a7f65c7b21f85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.

Transparency log

Release history Release notifications | RSS feed

11.0.0

2 release files

10.2.1

2 release files

10.2.0

2 release files

10.1.3

2 release files

This release

10.1.2 This release

2 release files

10.1.1

2 release files

10.1.0

2 release files

10.0.0

2 release files

9.0.5

2 release files

9.0.4

2 release files

9.0.3

2 release files

9.0.2

2 release files

9.0.1

2 release files

9.0.0

2 release files

8.4.0

2 release files

8.3.2

2 release files

8.3.1

2 release files

8.3.0

2 release files

8.2.2

2 release files

8.2.1

2 release files

8.2.0

2 release files

8.1.1

2 release files

8.1.0

2 release files

8.0.0

2 release files

7.24.0

2 release files

7.23.3

2 release files

7.23.2

2 release files

7.23.1

2 release files

7.23.0

2 release files

7.22.4

2 release files

7.22.3

2 release files

7.22.2

2 release files

7.22.1

2 release files

7.22.0

2 release files

7.21.1

2 release files

7.21.0

2 release files

7.20.4

2 release files

7.20.3

2 release files

7.20.2

2 release files

7.20.1

2 release files

7.20.0

2 release files

7.19.0

2 release files

7.18.4

2 release files

7.18.3

2 release files

7.18.1

2 release files

7.18.0

2 release files

7.17.0

2 release files

7.16.0

2 release files

7.15.0

2 release files

7.14.0

2 release files

7.13.0

2 release files

7.12.3

2 release files

7.12.2

2 release files

7.12.1

2 release files

7.12.0

2 release files

7.11.0

2 release files

7.10.0

2 release files

7.9.0

2 release files

7.8.1

2 release files

7.8.0

2 release files

7.7.3

2 release files

7.7.2

2 release files

7.7.1

2 release files

7.7.0

2 release files

7.6.0

2 release files

7.5.1

2 release files

7.5.0

2 release files

7.4.8

2 release files

7.4.7

2 release files

7.4.6

2 release files

7.4.5

2 release files

7.4.4

2 release files

7.4.3

2 release files

7.4.2

2 release files

7.4.1

2 release files

7.4.0

2 release files

7.3.5

2 release files

7.3.4

2 release files

7.3.3

2 release files

7.3.2

2 release files

7.3.1

2 release files

7.3.0

2 release files

7.2.0

2 release files

7.1.1

2 release files

7.1.0

2 release files

7.0.3

2 release files

7.0.2

2 release files

7.0.1

2 release files

7.0.0

2 release files

6.7.1

2 release files

6.7.0

2 release files

6.6.5

2 release files

6.6.4

2 release files

6.6.3

2 release files

6.6.2

2 release files

6.6.1

2 release files

6.6.0

2 release files

6.5.0

2 release files

6.4.0

2 release files

6.3.0

2 release files

6.2.0

2 release files

6.1.2

2 release files

6.1.1

2 release files

6.1.0

2 release files

6.0.0

2 release files

5.7.0

2 release files

5.6.1

2 release files

5.6.0

2 release files

5.5.2

2 release files

5.5.1

2 release files

5.5.0

2 release files

5.4.0

2 release files

5.3.1

2 release files

5.3.0

2 release files

5.2.0

2 release files

5.1.2

2 release files

5.1.1

2 release files

5.1.0

2 release files

5.0.1

2 release files

5.0.0

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.7.0

2 release files

3.6.1

2 release files

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.1.0

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page