Files
zenml/venv/lib/python3.9/site-packages/mlflow/server/auth/config.py
Christian Mantha 2ca0b9ef7c star
2026-03-02 19:10:52 -05:00

35 lines
1.0 KiB
Python

import configparser
from pathlib import Path
from typing import NamedTuple
from mlflow.environment_variables import MLFLOW_AUTH_CONFIG_PATH
class AuthConfig(NamedTuple):
default_permission: str
database_uri: str
admin_username: str
admin_password: str
authorization_function: str
def _get_auth_config_path() -> str:
return (
MLFLOW_AUTH_CONFIG_PATH.get() or Path(__file__).parent.joinpath("basic_auth.ini").resolve()
)
def read_auth_config() -> AuthConfig:
config_path = _get_auth_config_path()
config = configparser.ConfigParser()
config.read(config_path)
return AuthConfig(
default_permission=config["mlflow"]["default_permission"],
database_uri=config["mlflow"]["database_uri"],
admin_username=config["mlflow"]["admin_username"],
admin_password=config["mlflow"]["admin_password"],
authorization_function=config["mlflow"].get(
"authorization_function", "mlflow.server.auth:authenticate_request_basic_auth"
),
)