Build and Push / build (release) Successful in 1m28s
- Dashboard domain with Quick Links CRUD + reorder endpoints - Dashboard widgets management endpoints - Database migrations for quick_links and dashboard_widgets tables - Static file controller for Organizr widgets - Default local user when OIDC is disabled - Domain-based architecture refactor (src/domains/, src/shared/) - Test suite updated for new structure (285 tests passing) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
32 lines
843 B
Python
32 lines
843 B
Python
"""
|
|
Security initialization module
|
|
|
|
Handles OIDC configuration and authentication setup
|
|
"""
|
|
from src.shared.config import Settings
|
|
from src.shared.logging import get_logger
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
|
|
def initialize_oidc(settings: Settings) -> None:
|
|
"""
|
|
Initialize OIDC authentication configuration
|
|
|
|
Args:
|
|
settings: Application settings containing OIDC configuration
|
|
"""
|
|
# Import here to avoid circular imports
|
|
from src.auth.oidc import oidc_config
|
|
|
|
oidc_config.configure(
|
|
enabled=settings.oidc_enabled,
|
|
issuer=settings.oidc_issuer,
|
|
audience=settings.oidc_audience
|
|
)
|
|
|
|
if settings.oidc_enabled:
|
|
logger.info(f"OIDC authentication enabled (issuer: {settings.oidc_issuer})")
|
|
else:
|
|
logger.info("OIDC authentication disabled - API is publicly accessible")
|