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 )