move more to stuff

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
This commit is contained in:
Jens Langhammer
2025-03-30 01:26:35 +01:00
parent 8996630eff
commit cf78fad6ec
62 changed files with 118 additions and 118 deletions

View File

@ -18,9 +18,9 @@ from sentry_sdk import start_span
from sentry_sdk.tracing import Span
from structlog.stdlib import get_logger
from authentik.core.models import User
from authentik.common.expression.exceptions import ControlFlowException
from authentik.core.models import AuthenticatedSession, User
from authentik.events.models import Event
from authentik.lib.expression.exceptions import ControlFlowException
from authentik.lib.utils.http import get_http_session
from authentik.lib.utils.time import timedelta_from_string
from authentik.policies.models import Policy, PolicyBinding

View File

@ -3,12 +3,12 @@ from collections.abc import Generator
from django.db.models import QuerySet
from django.http import HttpRequest
from authentik.common.expression.exceptions import ControlFlowException
from authentik.core.expression.evaluator import PropertyMappingEvaluator
from authentik.core.expression.exceptions import (
PropertyMappingExpressionException,
)
from authentik.core.models import PropertyMapping, User
from authentik.lib.expression.exceptions import ControlFlowException
class PropertyMappingManager:

View File

@ -7,11 +7,11 @@ from rest_framework.fields import BooleanField, CharField, ChoiceField
from rest_framework.request import Request
from rest_framework.response import Response
from authentik.common.sync.outgoing.models import OutgoingSyncProvider
from authentik.core.api.utils import ModelSerializer, PassiveSerializer
from authentik.core.models import Group, User
from authentik.events.api.tasks import SystemTaskSerializer
from authentik.events.logs import LogEvent, LogEventSerializer
from authentik.lib.sync.outgoing.models import OutgoingSyncProvider
from authentik.lib.utils.reflection import class_to_path
from authentik.rbac.filters import ObjectFilter

View File

@ -7,19 +7,19 @@ from deepmerge import always_merger
from django.db import DatabaseError
from structlog.stdlib import get_logger
from authentik.common.expression.exceptions import ControlFlowException
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.exceptions import NotFoundSyncException, StopSync
from authentik.core.expression.exceptions import (
PropertyMappingExpressionException,
)
from authentik.events.models import Event, EventAction
from authentik.lib.expression.exceptions import ControlFlowException
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.exceptions import NotFoundSyncException, StopSync
from authentik.lib.utils.errors import exception_to_string
if TYPE_CHECKING:
from django.db.models import Model
from authentik.lib.sync.outgoing.models import OutgoingSyncProvider
from authentik.common.sync.outgoing.models import OutgoingSyncProvider
class Direction(StrEnum):

View File

@ -5,8 +5,8 @@ from django.db import connection, models
from django.db.models import Model, QuerySet, TextChoices
from django.utils.translation import gettext_lazy as _
from authentik.common.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.core.models import Group, User
from authentik.lib.sync.outgoing.base import BaseOutgoingSyncClient
class OutgoingSyncDeleteAction(TextChoices):

View File

@ -5,10 +5,10 @@ from django.db.models import Model
from django.db.models.query import Q
from django.db.models.signals import m2m_changed, post_save, pre_delete
from authentik.common.sync.outgoing import PAGE_SIZE, PAGE_TIMEOUT
from authentik.common.sync.outgoing.base import Direction
from authentik.common.sync.outgoing.models import OutgoingSyncProvider
from authentik.core.models import Group, User
from authentik.lib.sync.outgoing import PAGE_SIZE, PAGE_TIMEOUT
from authentik.lib.sync.outgoing.base import Direction
from authentik.lib.sync.outgoing.models import OutgoingSyncProvider
from authentik.lib.utils.reflection import class_to_path

View File

@ -10,21 +10,21 @@ from django.utils.text import slugify
from django.utils.translation import gettext_lazy as _
from structlog.stdlib import BoundLogger, get_logger
from authentik.common.sync.outgoing import PAGE_SIZE, PAGE_TIMEOUT
from authentik.common.sync.outgoing.base import Direction
from authentik.common.sync.outgoing.exceptions import (
BadRequestSyncException,
DryRunRejected,
StopSync,
TransientSyncException,
)
from authentik.common.sync.outgoing.models import OutgoingSyncProvider
from authentik.core.expression.exceptions import SkipObjectException
from authentik.core.models import Group, User
from authentik.events.logs import LogEvent
from authentik.events.models import TaskStatus
from authentik.events.system_tasks import SystemTask
from authentik.events.utils import sanitize_item
from authentik.lib.sync.outgoing import PAGE_SIZE, PAGE_TIMEOUT
from authentik.lib.sync.outgoing.base import Direction
from authentik.lib.sync.outgoing.exceptions import (
BadRequestSyncException,
DryRunRejected,
StopSync,
TransientSyncException,
)
from authentik.lib.sync.outgoing.models import OutgoingSyncProvider
from authentik.lib.utils.reflection import class_to_path, path_to_class

View File

@ -7,10 +7,10 @@ from django.db.models import Model
from django.http import HttpRequest
from prometheus_client import Histogram
from authentik.common.expression.evaluator import BaseEvaluator
from authentik.core.expression.exceptions import SkipObjectException
from authentik.core.models import User
from authentik.events.models import Event, EventAction
from authentik.lib.expression.evaluator import BaseEvaluator
from authentik.lib.utils.errors import exception_to_string
from authentik.policies.types import PolicyRequest

View File

@ -1,6 +1,6 @@
"""authentik core exceptions"""
from authentik.lib.expression.exceptions import ControlFlowException
from authentik.common.expression.exceptions import ControlFlowException
from authentik.lib.sentry import SentryIgnoredException

View File

@ -26,10 +26,10 @@ from rest_framework.serializers import Serializer
from structlog.stdlib import get_logger
from authentik.blueprints.models import ManagedModel
from authentik.common.expression.exceptions import ControlFlowException
from authentik.core.expression.exceptions import PropertyMappingExpressionException
from authentik.core.types import UILoginButton, UserSettingSerializer
from authentik.lib.avatars import get_avatar
from authentik.lib.expression.exceptions import ControlFlowException
from authentik.lib.generators import generate_id
from authentik.lib.merge import MERGE_LIST_UNIQUE
from authentik.lib.models import (

View File

@ -3,11 +3,11 @@ from typing import Any
from django.http import HttpRequest
from structlog.stdlib import get_logger
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.core.expression.exceptions import PropertyMappingExpressionException
from authentik.core.models import Group, PropertyMapping, Source, User
from authentik.events.models import Event, EventAction
from authentik.lib.merge import MERGE_LIST_UNIQUE
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.policies.utils import delete_none_values
LOGGER = get_logger()

View File

@ -3,11 +3,11 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.users import UserGroupSerializer
from authentik.core.api.utils import ModelSerializer
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProviderGroup
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
class GoogleWorkspaceProviderGroupSerializer(ModelSerializer):

View File

@ -2,6 +2,7 @@
from rest_framework.viewsets import ModelViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncProviderStatusMixin
from authentik.core.api.providers import ProviderSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.enterprise.api import EnterpriseRequiredMixin
@ -10,7 +11,6 @@ from authentik.enterprise.providers.google_workspace.tasks import (
google_workspace_sync,
google_workspace_sync_objects,
)
from authentik.lib.sync.outgoing.api import OutgoingSyncProviderStatusMixin
class GoogleWorkspaceProviderSerializer(EnterpriseRequiredMixin, ProviderSerializer):

View File

@ -3,11 +3,11 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.groups import GroupMemberSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.utils import ModelSerializer
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProviderUser
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
class GoogleWorkspaceProviderUserSerializer(ModelSerializer):

View File

@ -6,10 +6,9 @@ from googleapiclient.errors import Error, HttpError
from googleapiclient.http import HttpRequest
from httplib2 import HttpLib2Error, HttpLib2ErrorWithResponse
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProvider
from authentik.lib.sync.outgoing import HTTP_CONFLICT
from authentik.lib.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.exceptions import (
from authentik.common.sync.outgoing import HTTP_CONFLICT
from authentik.common.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.common.sync.outgoing.exceptions import (
BadRequestSyncException,
DryRunRejected,
NotFoundSyncException,
@ -17,6 +16,7 @@ from authentik.lib.sync.outgoing.exceptions import (
StopSync,
TransientSyncException,
)
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProvider
class GoogleWorkspaceSyncClient[TModel: Model, TConnection: Model, TSchema: dict](

View File

@ -1,6 +1,14 @@
from django.db import transaction
from django.utils.text import slugify
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.base import Direction
from authentik.common.sync.outgoing.exceptions import (
NotFoundSyncException,
ObjectExistsSyncException,
TransientSyncException,
)
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Group
from authentik.enterprise.providers.google_workspace.clients.base import GoogleWorkspaceSyncClient
from authentik.enterprise.providers.google_workspace.models import (
@ -9,14 +17,6 @@ from authentik.enterprise.providers.google_workspace.models import (
GoogleWorkspaceProviderMapping,
GoogleWorkspaceProviderUser,
)
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.base import Direction
from authentik.lib.sync.outgoing.exceptions import (
NotFoundSyncException,
ObjectExistsSyncException,
TransientSyncException,
)
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
class GoogleWorkspaceGroupClient(

View File

@ -1,5 +1,11 @@
from django.db import transaction
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.exceptions import (
ObjectExistsSyncException,
TransientSyncException,
)
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import User
from authentik.enterprise.providers.google_workspace.clients.base import GoogleWorkspaceSyncClient
from authentik.enterprise.providers.google_workspace.models import (
@ -7,12 +13,6 @@ from authentik.enterprise.providers.google_workspace.models import (
GoogleWorkspaceProviderMapping,
GoogleWorkspaceProviderUser,
)
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.exceptions import (
ObjectExistsSyncException,
TransientSyncException,
)
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.policies.utils import delete_none_values

View File

@ -10,6 +10,8 @@ from django.utils.translation import gettext_lazy as _
from google.oauth2.service_account import Credentials
from rest_framework.serializers import Serializer
from authentik.common.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction, OutgoingSyncProvider
from authentik.core.models import (
BackchannelProvider,
Group,
@ -18,8 +20,6 @@ from authentik.core.models import (
UserTypes,
)
from authentik.lib.models import SerializerModel, internal_model
from authentik.lib.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction, OutgoingSyncProvider
def default_scopes() -> list[str]:

View File

@ -1,12 +1,12 @@
"""Google provider signals"""
from authentik.common.sync.outgoing.signals import register_signals
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProvider
from authentik.enterprise.providers.google_workspace.tasks import (
google_workspace_sync,
google_workspace_sync_direct,
google_workspace_sync_m2m,
)
from authentik.lib.sync.outgoing.signals import register_signals
register_signals(
GoogleWorkspaceProvider,

View File

@ -1,9 +1,9 @@
"""Google Provider tasks"""
from authentik.common.sync.outgoing.exceptions import TransientSyncException
from authentik.common.sync.outgoing.tasks import SyncTasks
from authentik.enterprise.providers.google_workspace.models import GoogleWorkspaceProvider
from authentik.events.system_tasks import SystemTask
from authentik.lib.sync.outgoing.exceptions import TransientSyncException
from authentik.lib.sync.outgoing.tasks import SyncTasks
from authentik.root.celery import CELERY_APP
sync_tasks = SyncTasks(GoogleWorkspaceProvider)

View File

@ -5,6 +5,7 @@ from unittest.mock import MagicMock, patch
from django.test import TestCase
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_user
from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP
@ -16,7 +17,6 @@ from authentik.enterprise.providers.google_workspace.models import (
from authentik.enterprise.providers.google_workspace.tasks import google_workspace_sync
from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.lib.tests.utils import load_fixture
from authentik.tenants.models import Tenant

View File

@ -6,6 +6,7 @@ from unittest.mock import MagicMock, patch
from django.test import TestCase
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User
from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP
from authentik.enterprise.providers.google_workspace.models import (
@ -16,7 +17,6 @@ from authentik.enterprise.providers.google_workspace.models import (
from authentik.enterprise.providers.google_workspace.tasks import google_workspace_sync
from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.lib.tests.utils import load_fixture
from authentik.tenants.models import Tenant

View File

@ -3,11 +3,11 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.users import UserGroupSerializer
from authentik.core.api.utils import ModelSerializer
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProviderGroup
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
class MicrosoftEntraProviderGroupSerializer(ModelSerializer):

View File

@ -2,6 +2,7 @@
from rest_framework.viewsets import ModelViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncProviderStatusMixin
from authentik.core.api.providers import ProviderSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.enterprise.api import EnterpriseRequiredMixin
@ -10,7 +11,6 @@ from authentik.enterprise.providers.microsoft_entra.tasks import (
microsoft_entra_sync,
microsoft_entra_sync_objects,
)
from authentik.lib.sync.outgoing.api import OutgoingSyncProviderStatusMixin
class MicrosoftEntraProviderSerializer(EnterpriseRequiredMixin, ProviderSerializer):

View File

@ -3,11 +3,11 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.groups import GroupMemberSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.utils import ModelSerializer
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProviderUser
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
class MicrosoftEntraProviderUserSerializer(ModelSerializer):

View File

@ -25,11 +25,9 @@ from msgraph.graph_service_client import GraphServiceClient
from msgraph_core import GraphClientFactory
from opentelemetry import trace
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProvider
from authentik.events.utils import sanitize_item
from authentik.lib.sync.outgoing import HTTP_CONFLICT
from authentik.lib.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.exceptions import (
from authentik.common.sync.outgoing import HTTP_CONFLICT
from authentik.common.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.common.sync.outgoing.exceptions import (
BadRequestSyncException,
DryRunRejected,
NotFoundSyncException,
@ -37,6 +35,8 @@ from authentik.lib.sync.outgoing.exceptions import (
StopSync,
TransientSyncException,
)
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProvider
from authentik.events.utils import sanitize_item
class AuthentikRequestAdapter(GraphRequestAdapter):

View File

@ -4,6 +4,15 @@ from msgraph.generated.groups.groups_request_builder import GroupsRequestBuilder
from msgraph.generated.models.group import Group as MSGroup
from msgraph.generated.models.reference_create import ReferenceCreate
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.base import Direction
from authentik.common.sync.outgoing.exceptions import (
NotFoundSyncException,
ObjectExistsSyncException,
StopSync,
TransientSyncException,
)
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Group
from authentik.enterprise.providers.microsoft_entra.clients.base import MicrosoftEntraSyncClient
from authentik.enterprise.providers.microsoft_entra.models import (
@ -12,15 +21,6 @@ from authentik.enterprise.providers.microsoft_entra.models import (
MicrosoftEntraProviderMapping,
MicrosoftEntraProviderUser,
)
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.base import Direction
from authentik.lib.sync.outgoing.exceptions import (
NotFoundSyncException,
ObjectExistsSyncException,
StopSync,
TransientSyncException,
)
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
class MicrosoftEntraGroupClient(

View File

@ -3,6 +3,13 @@ from django.db import transaction
from msgraph.generated.models.user import User as MSUser
from msgraph.generated.users.users_request_builder import UsersRequestBuilder
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.exceptions import (
ObjectExistsSyncException,
StopSync,
TransientSyncException,
)
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import User
from authentik.enterprise.providers.microsoft_entra.clients.base import MicrosoftEntraSyncClient
from authentik.enterprise.providers.microsoft_entra.models import (
@ -10,13 +17,6 @@ from authentik.enterprise.providers.microsoft_entra.models import (
MicrosoftEntraProviderMapping,
MicrosoftEntraProviderUser,
)
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.exceptions import (
ObjectExistsSyncException,
StopSync,
TransientSyncException,
)
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.policies.utils import delete_none_values

View File

@ -10,6 +10,8 @@ from django.templatetags.static import static
from django.utils.translation import gettext_lazy as _
from rest_framework.serializers import Serializer
from authentik.common.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction, OutgoingSyncProvider
from authentik.core.models import (
BackchannelProvider,
Group,
@ -18,8 +20,6 @@ from authentik.core.models import (
UserTypes,
)
from authentik.lib.models import SerializerModel, internal_model
from authentik.lib.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction, OutgoingSyncProvider
@internal_model

View File

@ -1,12 +1,12 @@
"""Microsoft provider signals"""
from authentik.common.sync.outgoing.signals import register_signals
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProvider
from authentik.enterprise.providers.microsoft_entra.tasks import (
microsoft_entra_sync,
microsoft_entra_sync_direct,
microsoft_entra_sync_m2m,
)
from authentik.lib.sync.outgoing.signals import register_signals
register_signals(
MicrosoftEntraProvider,

View File

@ -1,9 +1,9 @@
"""Microsoft Entra Provider tasks"""
from authentik.common.sync.outgoing.exceptions import TransientSyncException
from authentik.common.sync.outgoing.tasks import SyncTasks
from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProvider
from authentik.events.system_tasks import SystemTask
from authentik.lib.sync.outgoing.exceptions import TransientSyncException
from authentik.lib.sync.outgoing.tasks import SyncTasks
from authentik.root.celery import CELERY_APP
sync_tasks = SyncTasks(MicrosoftEntraProvider)

View File

@ -13,6 +13,7 @@ from msgraph.generated.models.user_collection_response import UserCollectionResp
from msgraph.generated.models.verified_domain import VerifiedDomain
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_user
from authentik.enterprise.providers.microsoft_entra.models import (
@ -24,7 +25,6 @@ from authentik.enterprise.providers.microsoft_entra.models import (
from authentik.enterprise.providers.microsoft_entra.tasks import microsoft_entra_sync
from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.tenants.models import Tenant

View File

@ -13,6 +13,7 @@ from msgraph.generated.models.verified_domain import VerifiedDomain
from rest_framework.test import APITestCase
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_admin_user
from authentik.enterprise.providers.microsoft_entra.models import (
@ -23,7 +24,6 @@ from authentik.enterprise.providers.microsoft_entra.models import (
from authentik.enterprise.providers.microsoft_entra.tasks import microsoft_entra_sync
from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.tenants.models import Tenant

View File

@ -5,9 +5,9 @@ from django.urls import reverse
from jwt import decode
from authentik.blueprints.tests import apply_blueprint
from authentik.common.expression.evaluator import BaseEvaluator
from authentik.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user
from authentik.events.models import Event
from authentik.lib.expression.evaluator import BaseEvaluator
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider, ScopeMapping

View File

@ -6,8 +6,8 @@ from typing import TYPE_CHECKING, Optional
from django.http import HttpRequest
from structlog.stdlib import get_logger
from authentik.common.expression.evaluator import BaseEvaluator
from authentik.flows.planner import PLAN_CONTEXT_SSO
from authentik.lib.expression.evaluator import BaseEvaluator
from authentik.policies.exceptions import PolicyException
from authentik.policies.types import PolicyRequest, PolicyResult
from authentik.root.middleware import ClientIPMiddleware

View File

@ -15,14 +15,14 @@ from rest_framework.request import Request
from rest_framework.response import Response
from rest_framework.viewsets import GenericViewSet, ModelViewSet
from authentik.common.expression.exceptions import ControlFlowException
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.core.api.providers import ProviderSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.utils import ModelSerializer, PassiveSerializer
from authentik.core.expression.exceptions import PropertyMappingExpressionException
from authentik.core.models import Application
from authentik.events.models import Event, EventAction
from authentik.lib.expression.exceptions import ControlFlowException
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.utils.errors import exception_to_string
from authentik.policies.api.exec import PolicyTestResultSerializer
from authentik.policies.engine import PolicyEngine

View File

@ -3,10 +3,10 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.users import UserGroupSerializer
from authentik.core.api.utils import ModelSerializer
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.providers.scim.models import SCIMProviderGroup

View File

@ -2,9 +2,9 @@
from rest_framework.viewsets import ModelViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncProviderStatusMixin
from authentik.core.api.providers import ProviderSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.lib.sync.outgoing.api import OutgoingSyncProviderStatusMixin
from authentik.providers.scim.models import SCIMProvider
from authentik.providers.scim.tasks import scim_sync, scim_sync_objects

View File

@ -3,10 +3,10 @@
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet
from authentik.common.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.core.api.groups import GroupMemberSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.core.api.utils import ModelSerializer
from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
from authentik.providers.scim.models import SCIMProviderUser

View File

@ -7,14 +7,14 @@ from pydantic import ValidationError
from requests import RequestException, Session
from authentik.common.scim.schema import ServiceProviderConfiguration
from authentik.lib.sync.outgoing import (
from authentik.common.sync.outgoing import (
HTTP_CONFLICT,
HTTP_NO_CONTENT,
HTTP_SERVICE_UNAVAILABLE,
HTTP_TOO_MANY_REQUESTS,
)
from authentik.lib.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.exceptions import (
from authentik.common.sync.outgoing.base import SAFE_METHODS, BaseOutgoingSyncClient
from authentik.common.sync.outgoing.exceptions import (
DryRunRejected,
NotFoundSyncException,
ObjectExistsSyncException,

View File

@ -4,7 +4,7 @@ from pydantic import ValidationError
from requests import Response
from authentik.common.scim.schema import SCIMError
from authentik.lib.sync.outgoing.exceptions import TransientSyncException
from authentik.common.sync.outgoing.exceptions import TransientSyncException
class SCIMRequestException(TransientSyncException):

View File

@ -9,14 +9,14 @@ from pydanticscim.responses import PatchOp
from authentik.common.scim.schema import SCIM_GROUP_SCHEMA, PatchOperation, PatchRequest
from authentik.common.scim.schema import Group as SCIMGroupSchema
from authentik.core.models import Group
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.base import Direction
from authentik.lib.sync.outgoing.exceptions import (
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.base import Direction
from authentik.common.sync.outgoing.exceptions import (
NotFoundSyncException,
ObjectExistsSyncException,
StopSync,
)
from authentik.core.models import Group
from authentik.policies.utils import delete_none_values
from authentik.providers.scim.clients.base import SCIMClient
from authentik.providers.scim.clients.exceptions import (

View File

@ -6,9 +6,9 @@ from pydantic import ValidationError
from authentik.common.scim.schema import SCIM_USER_SCHEMA
from authentik.common.scim.schema import User as SCIMUserSchema
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.exceptions import ObjectExistsSyncException, StopSync
from authentik.core.models import User
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.exceptions import ObjectExistsSyncException, StopSync
from authentik.policies.utils import delete_none_values
from authentik.providers.scim.clients.base import SCIMClient
from authentik.providers.scim.models import SCIMMapping, SCIMProvider, SCIMProviderUser

View File

@ -9,10 +9,10 @@ from django.templatetags.static import static
from django.utils.translation import gettext_lazy as _
from rest_framework.serializers import Serializer
from authentik.common.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.common.sync.outgoing.models import OutgoingSyncProvider
from authentik.core.models import BackchannelProvider, Group, PropertyMapping, User, UserTypes
from authentik.lib.models import SerializerModel, internal_model
from authentik.lib.sync.outgoing.base import BaseOutgoingSyncClient
from authentik.lib.sync.outgoing.models import OutgoingSyncProvider
@internal_model

View File

@ -1,6 +1,6 @@
"""SCIM provider signals"""
from authentik.lib.sync.outgoing.signals import register_signals
from authentik.common.sync.outgoing.signals import register_signals
from authentik.providers.scim.models import SCIMProvider
from authentik.providers.scim.tasks import scim_sync, scim_sync_direct, scim_sync_m2m

View File

@ -1,8 +1,8 @@
"""SCIM Provider tasks"""
from authentik.common.sync.outgoing.exceptions import TransientSyncException
from authentik.common.sync.outgoing.tasks import SyncTasks
from authentik.events.system_tasks import SystemTask
from authentik.lib.sync.outgoing.exceptions import TransientSyncException
from authentik.lib.sync.outgoing.tasks import SyncTasks
from authentik.providers.scim.models import SCIMProvider
from authentik.root.celery import CELERY_APP

View File

@ -8,10 +8,10 @@ from jsonschema import validate
from requests_mock import Mocker
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.base import SAFE_METHODS
from authentik.core.models import Application, Group, User
from authentik.events.models import SystemTask
from authentik.lib.generators import generate_id
from authentik.lib.sync.outgoing.base import SAFE_METHODS
from authentik.providers.scim.models import SCIMMapping, SCIMProvider
from authentik.providers.scim.tasks import scim_sync, sync_tasks
from authentik.tenants.models import Tenant

View File

@ -7,6 +7,8 @@ from django.db import IntegrityError, transaction
from kadmin import KAdmin
from structlog.stdlib import BoundLogger, get_logger
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.core.expression.exceptions import (
PropertyMappingExpressionException,
SkipObjectException,
@ -15,8 +17,6 @@ from authentik.core.models import Group, User, UserTypes
from authentik.core.sources.mapper import SourceMapper
from authentik.core.sources.matcher import Action, SourceMatcher
from authentik.events.models import Event, EventAction
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.sources.kerberos.models import (
GroupKerberosSourceConnection,
KerberosSource,

View File

@ -3,11 +3,11 @@
from django.core.cache import cache
from structlog.stdlib import get_logger
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.events.models import SystemTask as DBSystemTask
from authentik.events.models import TaskStatus
from authentik.events.system_tasks import SystemTask
from authentik.lib.config import CONFIG
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.lib.utils.errors import exception_to_string
from authentik.root.celery import CELERY_APP
from authentik.sources.kerberos.models import KerberosSource

View File

@ -14,6 +14,7 @@ from rest_framework.request import Request
from rest_framework.response import Response
from rest_framework.viewsets import ModelViewSet
from authentik.common.sync.outgoing.api import SyncStatusSerializer
from authentik.core.api.property_mappings import PropertyMappingFilterSet, PropertyMappingSerializer
from authentik.core.api.sources import (
GroupSourceConnectionSerializer,
@ -24,7 +25,6 @@ from authentik.core.api.sources import (
)
from authentik.core.api.used_by import UsedByMixin
from authentik.crypto.models import CertificateKeyPair
from authentik.lib.sync.outgoing.api import SyncStatusSerializer
from authentik.sources.ldap.models import (
GroupLDAPSourceConnection,
LDAPSource,

View File

@ -6,9 +6,9 @@ from django.conf import settings
from ldap3 import DEREF_ALWAYS, SUBTREE, Connection
from structlog.stdlib import BoundLogger, get_logger
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.core.sources.mapper import SourceMapper
from authentik.lib.config import CONFIG
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.sources.ldap.models import LDAPSource

View File

@ -6,6 +6,7 @@ from django.core.exceptions import FieldError
from django.db.utils import IntegrityError
from ldap3 import ALL_ATTRIBUTES, ALL_OPERATIONAL_ATTRIBUTES, SUBTREE
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.core.expression.exceptions import (
PropertyMappingExpressionException,
SkipObjectException,
@ -13,7 +14,6 @@ from authentik.core.expression.exceptions import (
from authentik.core.models import Group
from authentik.core.sources.mapper import SourceMapper
from authentik.events.models import Event, EventAction
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.sources.ldap.models import (
LDAP_UNIQUENESS,
GroupLDAPSourceConnection,

View File

@ -6,6 +6,7 @@ from django.core.exceptions import FieldError
from django.db.utils import IntegrityError
from ldap3 import ALL_ATTRIBUTES, ALL_OPERATIONAL_ATTRIBUTES, SUBTREE
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.core.expression.exceptions import (
PropertyMappingExpressionException,
SkipObjectException,
@ -13,7 +14,6 @@ from authentik.core.expression.exceptions import (
from authentik.core.models import User
from authentik.core.sources.mapper import SourceMapper
from authentik.events.models import Event, EventAction
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.sources.ldap.models import (
LDAP_UNIQUENESS,
LDAPSource,

View File

@ -7,11 +7,11 @@ from django.core.cache import cache
from ldap3.core.exceptions import LDAPException
from structlog.stdlib import get_logger
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.events.models import SystemTask as DBSystemTask
from authentik.events.models import TaskStatus
from authentik.events.system_tasks import SystemTask
from authentik.lib.config import CONFIG
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.lib.utils.errors import exception_to_string
from authentik.lib.utils.reflection import class_to_path, path_to_class
from authentik.root.celery import CELERY_APP

View File

@ -6,12 +6,12 @@ from django.db.models import Q
from django.test import TestCase
from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.exceptions import StopSync
from authentik.core.models import Group, User
from authentik.core.tests.utils import create_test_admin_user
from authentik.events.models import Event, EventAction, SystemTask
from authentik.events.system_tasks import TaskStatus
from authentik.lib.generators import generate_id, generate_key
from authentik.lib.sync.outgoing.exceptions import StopSync
from authentik.lib.utils.reflection import class_to_path
from authentik.sources.ldap.models import LDAPSource, LDAPSourcePropertyMapping
from authentik.sources.ldap.sync.groups import GroupLDAPSynchronizer

View File

@ -9,6 +9,7 @@ from django.urls import reverse
from django.utils.translation import gettext_lazy as _
from rest_framework.serializers import Serializer
from authentik.common.expression.evaluator import BaseEvaluator
from authentik.common.saml.constants import (
DSA_SHA1,
ECDSA_SHA1,
@ -43,7 +44,6 @@ from authentik.core.types import UILoginButton, UserSettingSerializer
from authentik.crypto.models import CertificateKeyPair
from authentik.flows.challenge import RedirectChallenge
from authentik.flows.models import Flow
from authentik.lib.expression.evaluator import BaseEvaluator
from authentik.lib.models import DomainlessURLValidator
from authentik.lib.utils.time import timedelta_string_validator

View File

@ -18,9 +18,9 @@ from scim2_filter_parser.transpilers.django_q_object import get_query
from structlog import BoundLogger
from structlog.stdlib import get_logger
from authentik.common.sync.mapper import PropertyMappingManager
from authentik.core.models import Group, User
from authentik.core.sources.mapper import SourceMapper
from authentik.lib.sync.mapper import PropertyMappingManager
from authentik.sources.scim.models import SCIMSource
from authentik.sources.scim.views.v2.auth import SCIMTokenAuth