"""Factory for authentication providers."""frompoiesis.api.auth.providers.authimportAuthProviderfrompoiesis.api.auth.providers.dummyimportDummyAuthProviderfrompoiesis.api.auth.providers.oidcimportOpenIDConnectAuthProviderfrompoiesis.api.constantsimportget_poiesis_api_constantsfrompoiesis.api.exceptionsimportInternalServerExceptionconstants=get_poiesis_api_constants()
[docs]defget_auth_provider()->AuthProvider:"""Get the authentication provider."""auth_type=str(constants.Auth.AUTH).strip().lower()ifauth_type=="dummy":returnDummyAuthProvider()elifauth_type=="oidc":returnOpenIDConnectAuthProvider()else:raiseInternalServerException(f"Invalid authentication method: {auth_type}")