feat: Add SCIM 2.0 support for enterprise user provisioning

Implements SCIM 2.0 protocol for automated user and group provisioning from identity providers like Okta, Azure AD, and Google Workspace.

Backend changes:
- Add SCIM configuration with PersistentConfig for database persistence
- Implement SCIM 2.0 endpoints (Users, Groups, ServiceProviderConfig)
- Add bearer token authentication for SCIM requests
- Include comprehensive test coverage for SCIM functionality

Frontend changes:
- Add SCIM admin settings page with token generation
- Implement SCIM configuration management UI
- Add save functionality and proper error handling
- Include SCIM statistics display

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Dieu
2025-07-13 16:34:41 +02:00
parent 5eca495d3e
commit f4d54c518e
14 changed files with 2629 additions and 1 deletions

View File

@@ -778,6 +778,22 @@ ENABLE_DIRECT_CONNECTIONS = PersistentConfig(
os.environ.get("ENABLE_DIRECT_CONNECTIONS", "True").lower() == "true",
)
####################################
# SCIM Configuration
####################################
SCIM_ENABLED = PersistentConfig(
"SCIM_ENABLED",
"scim.enabled",
os.environ.get("SCIM_ENABLED", "False").lower() == "true",
)
SCIM_TOKEN = PersistentConfig(
"SCIM_TOKEN",
"scim.token",
os.environ.get("SCIM_TOKEN", ""),
)
####################################
# OLLAMA_BASE_URL
####################################