/ src / config / user_resolver.py
user_resolver.py
 1  """User resolver configuration."""
 2  
 3  from pydantic import Field
 4  from pydantic_settings import BaseSettings
 5  
 6  from src.user_resolvers.types import UserResolverType
 7  
 8  
 9  class UserResolverConfig(BaseSettings):
10      """Configuration for user role resolution.
11  
12      This configuration controls how user roles are determined
13      from identity information (email, user ID, etc.) received
14      from external systems like OpenWebUI.
15  
16      Note: The default_role is taken from access_control.default_user_role
17      to avoid duplication.
18      """
19  
20      resolver_name: UserResolverType = Field(
21          default=UserResolverType.JSON,
22          description="User resolver type (json, database, ldap)",
23      )
24  
25      resolver_config: dict | None = Field(
26          default=None,
27          description="Resolver-specific configuration (e.g., mapping_file for JSON resolver)",
28      )