move more stuff out of lib

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
This commit is contained in:
Jens Langhammer
2025-05-10 17:06:14 +02:00
parent e204a3fe16
commit ca0a4cb34f
210 changed files with 302 additions and 293 deletions

View File

@ -8,7 +8,7 @@ from django.urls import reverse
from authentik import __version__ from authentik import __version__
from authentik.blueprints.tests import reconcile_app from authentik.blueprints.tests import reconcile_app
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestAdminAPI(TestCase): class TestAdminAPI(TestCase):

View File

@ -11,7 +11,7 @@ from authentik.api.authentication import bearer_auth
from authentik.common.oauth.constants import SCOPE_AUTHENTIK_API from authentik.common.oauth.constants import SCOPE_AUTHENTIK_API
from authentik.core.models import Token, TokenIntents from authentik.core.models import Token, TokenIntents
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.oauth2.models import AccessToken, OAuth2Provider from authentik.providers.oauth2.models import AccessToken, OAuth2Provider

View File

@ -10,14 +10,14 @@ from rest_framework.serializers import Serializer
from structlog import get_logger from structlog import get_logger
from authentik.blueprints.v1.oci import OCI_PREFIX, BlueprintOCIClient, OCIException from authentik.blueprints.v1.oci import OCI_PREFIX, BlueprintOCIClient, OCIException
from authentik.common.exceptions import NotReportedException
from authentik.lib.config import CONFIG from authentik.lib.config import CONFIG
from authentik.lib.models import CreatedUpdatedModel, SerializerModel from authentik.lib.models import CreatedUpdatedModel, SerializerModel
from authentik.lib.sentry import SentryIgnoredException
LOGGER = get_logger() LOGGER = get_logger()
class BlueprintRetrievalFailed(SentryIgnoredException): class BlueprintRetrievalFailed(NotReportedException):
"""Error raised when we are unable to fetch the blueprint contents, whether it be HTTP files """Error raised when we are unable to fetch the blueprint contents, whether it be HTTP files
not being accessible or local files not being readable""" not being accessible or local files not being readable"""

View File

@ -3,7 +3,7 @@
from django.test import TestCase from django.test import TestCase
from authentik.blueprints.models import BlueprintInstance, BlueprintRetrievalFailed from authentik.blueprints.models import BlueprintInstance, BlueprintRetrievalFailed
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestModels(TestCase): class TestModels(TestCase):

View File

@ -7,8 +7,8 @@ from django.test import TransactionTestCase
from authentik.blueprints.v1.exporter import FlowExporter from authentik.blueprints.v1.exporter import FlowExporter
from authentik.blueprints.v1.importer import Importer, transaction_rollback from authentik.blueprints.v1.importer import Importer, transaction_rollback
from authentik.core.models import Group from authentik.core.models import Group
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow, FlowDesignation, FlowStageBinding from authentik.flows.models import Flow, FlowDesignation, FlowStageBinding
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture
from authentik.policies.expression.models import ExpressionPolicy from authentik.policies.expression.models import ExpressionPolicy
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding

View File

@ -5,8 +5,8 @@ from django.test import TransactionTestCase
from authentik.blueprints.v1.importer import Importer from authentik.blueprints.v1.importer import Importer
from authentik.core.models import Application, Token, User from authentik.core.models import Application, Token, User
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow from authentik.flows.models import Flow
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture
from authentik.sources.oauth.models import OAuthSource from authentik.sources.oauth.models import OAuthSource

View File

@ -3,8 +3,8 @@
from django.test import TransactionTestCase from django.test import TransactionTestCase
from authentik.blueprints.v1.importer import Importer from authentik.blueprints.v1.importer import Importer
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow from authentik.flows.models import Flow
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture

View File

@ -5,8 +5,8 @@ from guardian.shortcuts import get_perms
from authentik.blueprints.v1.importer import Importer from authentik.blueprints.v1.importer import Importer
from authentik.core.models import User from authentik.core.models import User
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow from authentik.flows.models import Flow
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture
from authentik.rbac.models import Role from authentik.rbac.models import Role

View File

@ -3,8 +3,8 @@
from django.test import TransactionTestCase from django.test import TransactionTestCase
from authentik.blueprints.v1.importer import Importer from authentik.blueprints.v1.importer import Importer
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow from authentik.flows.models import Flow
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture

View File

@ -8,8 +8,8 @@ from yaml import dump
from authentik.blueprints.models import BlueprintInstance, BlueprintInstanceStatus from authentik.blueprints.models import BlueprintInstance, BlueprintInstanceStatus
from authentik.blueprints.v1.tasks import apply_blueprint, blueprints_discovery, blueprints_find from authentik.blueprints.v1.tasks import apply_blueprint, blueprints_discovery, blueprints_find
from authentik.crypto.generators import generate_id
from authentik.lib.config import CONFIG from authentik.lib.config import CONFIG
from authentik.lib.generators import generate_id
TMP = mkdtemp("authentik-blueprints") TMP = mkdtemp("authentik-blueprints")

View File

@ -19,8 +19,8 @@ from rest_framework.fields import Field
from rest_framework.serializers import Serializer from rest_framework.serializers import Serializer
from yaml import SafeDumper, SafeLoader, ScalarNode, SequenceNode from yaml import SafeDumper, SafeLoader, ScalarNode, SequenceNode
from authentik.common.exceptions import NotReportedException
from authentik.lib.models import SerializerModel from authentik.lib.models import SerializerModel
from authentik.lib.sentry import SentryIgnoredException
from authentik.policies.models import PolicyBindingModel from authentik.policies.models import PolicyBindingModel
@ -661,7 +661,7 @@ class BlueprintLoader(SafeLoader):
self.add_constructor("!AtIndex", AtIndex) self.add_constructor("!AtIndex", AtIndex)
class EntryInvalidError(SentryIgnoredException): class EntryInvalidError(NotReportedException):
"""Error raised when an entry is invalid""" """Error raised when an entry is invalid"""
entry_model: str | None entry_model: str | None

View File

@ -28,12 +28,12 @@ from authentik.blueprints.v1.common import (
EntryInvalidError, EntryInvalidError,
) )
from authentik.blueprints.v1.meta.registry import BaseMetaModel, registry from authentik.blueprints.v1.meta.registry import BaseMetaModel, registry
from authentik.common.exceptions import NotReportedException
from authentik.core.models import User from authentik.core.models import User
from authentik.enterprise.license import LicenseKey from authentik.enterprise.license import LicenseKey
from authentik.events.logs import LogEvent, capture_logs from authentik.events.logs import LogEvent, capture_logs
from authentik.events.utils import cleanse_dict from authentik.events.utils import cleanse_dict
from authentik.lib.models import SerializerModel, excluded_models from authentik.lib.models import SerializerModel, excluded_models
from authentik.lib.sentry import SentryIgnoredException
from authentik.lib.utils.reflection import get_apps from authentik.lib.utils.reflection import get_apps
from authentik.rbac.models import Role from authentik.rbac.models import Role
@ -47,7 +47,7 @@ def is_model_allowed(model: type[Model]) -> bool:
return model not in excluded_models() and issubclass(model, SerializerModel | BaseMetaModel) return model not in excluded_models() and issubclass(model, SerializerModel | BaseMetaModel)
class DoRollback(SentryIgnoredException): class DoRollback(NotReportedException):
"""Exception to trigger a rollback""" """Exception to trigger a rollback"""

View File

@ -16,14 +16,14 @@ from requests.exceptions import RequestException
from structlog import get_logger from structlog import get_logger
from structlog.stdlib import BoundLogger from structlog.stdlib import BoundLogger
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
from authentik.lib.utils.http import authentik_user_agent from authentik.lib.utils.http import authentik_user_agent
OCI_MEDIA_TYPE = "application/vnd.goauthentik.blueprint.v1+yaml" OCI_MEDIA_TYPE = "application/vnd.goauthentik.blueprint.v1+yaml"
OCI_PREFIX = "oci://" OCI_PREFIX = "oci://"
class OCIException(SentryIgnoredException): class OCIException(NotReportedException):
"""OCI-related errors""" """OCI-related errors"""

View File

@ -7,7 +7,7 @@ from authentik.brands.api import Themes
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_brand from authentik.core.tests.utils import create_test_admin_user, create_test_brand
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider
from authentik.providers.saml.models import SAMLProvider from authentik.providers.saml.models import SAMLProvider

View File

@ -0,0 +1,7 @@
class AuthentikException(Exception):
"""Base class for authentik exceptions"""
class NotReportedException(AuthentikException):
"""Exception base class for all errors that are suppressed,
and not sent to any kind of monitoring."""

View File

@ -19,7 +19,7 @@ from sentry_sdk.tracing import Span
from structlog.stdlib import get_logger from structlog.stdlib import get_logger
from authentik.common.expression.exceptions import ControlFlowException from authentik.common.expression.exceptions import ControlFlowException
from authentik.core.models import AuthenticatedSession, User from authentik.core.models import User
from authentik.events.models import Event from authentik.events.models import Event
from authentik.lib.utils.http import get_http_session from authentik.lib.utils.http import get_http_session
from authentik.lib.utils.time import timedelta_from_string from authentik.lib.utils.time import timedelta_from_string

View File

@ -1,6 +1,6 @@
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class ControlFlowException(SentryIgnoredException): class ControlFlowException(NotReportedException):
"""Exceptions used to control the flow from exceptions, not reported as a warning/ """Exceptions used to control the flow from exceptions, not reported as a warning/
error in logs""" error in logs"""

View File

@ -4,13 +4,13 @@ from urllib.parse import quote, urlparse
from django.http import HttpRequest, HttpResponse, HttpResponseRedirect from django.http import HttpRequest, HttpResponse, HttpResponseRedirect
from authentik.common.exceptions import NotReportedException
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.sentry import SentryIgnoredException
from authentik.lib.views import bad_request_message from authentik.lib.views import bad_request_message
from authentik.providers.oauth2.models import GrantTypes, RedirectURI from authentik.providers.oauth2.models import GrantTypes, RedirectURI
class OAuth2Error(SentryIgnoredException): class OAuth2Error(NotReportedException):
"""Base class for all OAuth2 Errors""" """Base class for all OAuth2 Errors"""
error: str error: str

View File

@ -1,9 +1,9 @@
"""authentik saml source exceptions""" """authentik saml source exceptions"""
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class SAMLException(SentryIgnoredException): class SAMLException(NotReportedException):
"""Base SAML Exception""" """Base SAML Exception"""

View File

@ -1,7 +1,7 @@
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class BaseSyncException(SentryIgnoredException): class BaseSyncException(NotReportedException):
"""Base class for all sync exceptions""" """Base class for all sync exceptions"""

View File

@ -1,10 +1,10 @@
"""authentik core exceptions""" """authentik core exceptions"""
from authentik.common.exceptions import NotReportedException
from authentik.common.expression.exceptions import ControlFlowException from authentik.common.expression.exceptions import ControlFlowException
from authentik.lib.sentry import SentryIgnoredException
class PropertyMappingExpressionException(SentryIgnoredException): class PropertyMappingExpressionException(NotReportedException):
"""Error when a PropertyMapping Exception expression could not be parsed or evaluated.""" """Error when a PropertyMapping Exception expression could not be parsed or evaluated."""
def __init__(self, exc: Exception, mapping) -> None: def __init__(self, exc: Exception, mapping) -> None:

View File

@ -5,7 +5,7 @@ from django.db import migrations, models
from django.db.backends.base.schema import BaseDatabaseSchemaEditor from django.db.backends.base.schema import BaseDatabaseSchemaEditor
import authentik.core.models import authentik.core.models
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
def set_default_token_key(apps: Apps, schema_editor: BaseDatabaseSchemaEditor): def set_default_token_key(apps: Apps, schema_editor: BaseDatabaseSchemaEditor):

View File

@ -29,8 +29,8 @@ from authentik.blueprints.models import ManagedModel
from authentik.common.expression.exceptions import ControlFlowException from authentik.common.expression.exceptions import ControlFlowException
from authentik.core.expression.exceptions import PropertyMappingExpressionException from authentik.core.expression.exceptions import PropertyMappingExpressionException
from authentik.core.types import UILoginButton, UserSettingSerializer from authentik.core.types import UILoginButton, UserSettingSerializer
from authentik.crypto.generators import generate_id
from authentik.lib.avatars import get_avatar from authentik.lib.avatars import get_avatar
from authentik.lib.generators import generate_id
from authentik.lib.merge import MERGE_LIST_UNIQUE from authentik.lib.merge import MERGE_LIST_UNIQUE
from authentik.lib.models import ( from authentik.lib.models import (
CreatedUpdatedModel, CreatedUpdatedModel,

View File

@ -6,7 +6,7 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application, ApplicationEntitlement, Group from authentik.core.models import Application, ApplicationEntitlement, Group
from authentik.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user from authentik.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider

View File

@ -9,7 +9,7 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode

View File

@ -3,7 +3,7 @@
from django.test.testcases import TestCase from django.test.testcases import TestCase
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestGroups(TestCase): class TestGroups(TestCase):

View File

@ -6,7 +6,7 @@ from rest_framework.test import APITestCase
from authentik.core.models import Group from authentik.core.models import Group
from authentik.core.tests.utils import create_test_admin_user, create_test_user from authentik.core.tests.utils import create_test_admin_user, create_test_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestGroupsAPI(APITestCase): class TestGroupsAPI(APITestCase):

View File

@ -9,8 +9,8 @@ from authentik.core.expression.exceptions import (
) )
from authentik.core.models import PropertyMapping from authentik.core.models import PropertyMapping
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.policies.expression.models import ExpressionPolicy from authentik.policies.expression.models import ExpressionPolicy

View File

@ -9,7 +9,7 @@ from rest_framework.test import APITestCase
from authentik.core.api.property_mappings import PropertyMappingSerializer from authentik.core.api.property_mappings import PropertyMappingSerializer
from authentik.core.models import Group, PropertyMapping from authentik.core.models import Group, PropertyMapping
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestPropertyMappingAPI(APITestCase): class TestPropertyMappingAPI(APITestCase):

View File

@ -9,9 +9,9 @@ from authentik.core.models import SourceUserMatchingModes, User
from authentik.core.sources.flow_manager import Action from authentik.core.sources.flow_manager import Action
from authentik.core.sources.stage import PostSourceStage from authentik.core.sources.stage import PostSourceStage
from authentik.core.tests.utils import create_test_flow from authentik.core.tests.utils import create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.planner import FlowPlan from authentik.flows.planner import FlowPlan
from authentik.flows.views.executor import SESSION_KEY_PLAN from authentik.flows.views.executor import SESSION_KEY_PLAN
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import get_request from authentik.lib.tests.utils import get_request
from authentik.policies.denied import AccessDeniedResponse from authentik.policies.denied import AccessDeniedResponse
from authentik.policies.expression.models import ExpressionPolicy from authentik.policies.expression.models import ExpressionPolicy

View File

@ -5,11 +5,11 @@ from django.test import RequestFactory
from authentik.core.models import Group, SourceGroupMatchingModes from authentik.core.models import Group, SourceGroupMatchingModes
from authentik.core.sources.flow_manager import PLAN_CONTEXT_SOURCE_GROUPS, GroupUpdateStage from authentik.core.sources.flow_manager import PLAN_CONTEXT_SOURCE_GROUPS, GroupUpdateStage
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.models import in_memory_stage from authentik.flows.models import in_memory_stage
from authentik.flows.planner import PLAN_CONTEXT_PENDING_USER, PLAN_CONTEXT_SOURCE, FlowPlan from authentik.flows.planner import PLAN_CONTEXT_PENDING_USER, PLAN_CONTEXT_SOURCE, FlowPlan
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.flows.views.executor import FlowExecutorView from authentik.flows.views.executor import FlowExecutorView
from authentik.lib.generators import generate_id
from authentik.sources.oauth.models import GroupOAuthSourceConnection, OAuthSource from authentik.sources.oauth.models import GroupOAuthSourceConnection, OAuthSource

View File

@ -4,7 +4,7 @@ from django.test import TestCase
from authentik.core.models import Group, PropertyMapping, Source, User from authentik.core.models import Group, PropertyMapping, Source, User
from authentik.core.sources.mapper import SourceMapper from authentik.core.sources.mapper import SourceMapper
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class ProxySource(Source): class ProxySource(Source):

View File

@ -18,7 +18,7 @@ from authentik.core.tasks import (
clean_temporary_users, clean_temporary_users,
) )
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestTasks(APITestCase): class TestTasks(APITestCase):

View File

@ -15,7 +15,7 @@ from authentik.core.models import (
TokenIntents, TokenIntents,
) )
from authentik.core.tests.utils import create_test_admin_user, create_test_user from authentik.core.tests.utils import create_test_admin_user, create_test_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
class TestTokenAPI(APITestCase): class TestTokenAPI(APITestCase):

View File

@ -6,7 +6,7 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application, Group from authentik.core.models import Application, Group
from authentik.core.tests.utils import create_test_flow, create_test_user from authentik.core.tests.utils import create_test_flow, create_test_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider

View File

@ -21,8 +21,8 @@ from authentik.core.tests.utils import (
create_test_flow, create_test_flow,
create_test_user, create_test_user,
) )
from authentik.crypto.generators import generate_id, generate_key
from authentik.flows.models import FlowDesignation from authentik.flows.models import FlowDesignation
from authentik.lib.generators import generate_id, generate_key
from authentik.stages.email.models import EmailStage from authentik.stages.email.models import EmailStage

View File

@ -5,9 +5,9 @@ from django.utils.text import slugify
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.crypto.builder import CertificateBuilder, PrivateKeyAlg from authentik.crypto.builder import CertificateBuilder, PrivateKeyAlg
from authentik.crypto.generators import generate_id
from authentik.crypto.models import CertificateKeyPair from authentik.crypto.models import CertificateKeyPair
from authentik.flows.models import Flow, FlowDesignation from authentik.flows.models import Flow, FlowDesignation
from authentik.lib.generators import generate_id
def create_test_flow( def create_test_flow(

View File

@ -3,7 +3,7 @@
from datetime import UTC, datetime from datetime import UTC, datetime
from authentik.blueprints.apps import ManagedAppConfig from authentik.blueprints.apps import ManagedAppConfig
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
MANAGED_KEY = "goauthentik.io/crypto/jwt-managed" MANAGED_KEY = "goauthentik.io/crypto/jwt-managed"

View File

@ -14,10 +14,10 @@ from authentik.core.api.used_by import DeleteAction
from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow
from authentik.crypto.api import CertificateKeyPairSerializer from authentik.crypto.api import CertificateKeyPairSerializer
from authentik.crypto.builder import CertificateBuilder from authentik.crypto.builder import CertificateBuilder
from authentik.crypto.generators import generate_id, generate_key
from authentik.crypto.models import CertificateKeyPair from authentik.crypto.models import CertificateKeyPair
from authentik.crypto.tasks import MANAGED_DISCOVERED, certificate_discovery from authentik.crypto.tasks import MANAGED_DISCOVERED, certificate_discovery
from authentik.lib.config import CONFIG from authentik.lib.config import CONFIG
from authentik.lib.generators import generate_id, generate_key
from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode

View File

@ -7,9 +7,9 @@ from rest_framework.test import APITestCase
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.events.utils import sanitize_item from authentik.events.utils import sanitize_item
from authentik.lib.generators import generate_id
class TestEnterpriseAudit(APITestCase): class TestEnterpriseAudit(APITestCase):

View File

@ -4,13 +4,13 @@ from django.contrib.auth.hashers import make_password
from django.urls.base import reverse from django.urls.base import reverse
from authentik.core.tests.utils import create_test_flow, create_test_user from authentik.core.tests.utils import create_test_flow, create_test_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.policies.unique_password.models import ( from authentik.enterprise.policies.unique_password.models import (
UniquePasswordPolicy, UniquePasswordPolicy,
UserPasswordHistory, UserPasswordHistory,
) )
from authentik.flows.models import FlowDesignation, FlowStageBinding from authentik.flows.models import FlowDesignation, FlowStageBinding
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.lib.generators import generate_id
from authentik.stages.prompt.models import FieldTypes, Prompt, PromptStage from authentik.stages.prompt.models import FieldTypes, Prompt, PromptStage

View File

@ -2,6 +2,7 @@ from django.urls import reverse
from authentik.core.models import Group, Source, User from authentik.core.models import Group, Source, User
from authentik.core.tests.utils import create_test_flow, create_test_user from authentik.core.tests.utils import create_test_flow, create_test_user
from authentik.crypto.generators import generate_key
from authentik.enterprise.policies.unique_password.models import ( from authentik.enterprise.policies.unique_password.models import (
UniquePasswordPolicy, UniquePasswordPolicy,
UserPasswordHistory, UserPasswordHistory,
@ -11,7 +12,6 @@ from authentik.flows.models import FlowStageBinding
from authentik.flows.planner import PLAN_CONTEXT_PENDING_USER, FlowPlan from authentik.flows.planner import PLAN_CONTEXT_PENDING_USER, FlowPlan
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.flows.views.executor import SESSION_KEY_PLAN from authentik.flows.views.executor import SESSION_KEY_PLAN
from authentik.lib.generators import generate_key
from authentik.policies.models import PolicyBinding, PolicyBindingModel from authentik.policies.models import PolicyBinding, PolicyBindingModel
from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT
from authentik.stages.user_write.models import UserWriteStage from authentik.stages.user_write.models import UserWriteStage

View File

@ -8,6 +8,7 @@ from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_user from authentik.core.tests.utils import create_test_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP
from authentik.enterprise.providers.google_workspace.models import ( from authentik.enterprise.providers.google_workspace.models import (
GoogleWorkspaceProvider, GoogleWorkspaceProvider,
@ -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.enterprise.providers.google_workspace.tasks import google_workspace_sync
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture
from authentik.tenants.models import Tenant from authentik.tenants.models import Tenant

View File

@ -8,6 +8,7 @@ from django.test import TestCase
from authentik.blueprints.tests import apply_blueprint from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User from authentik.core.models import Application, Group, User
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP from authentik.enterprise.providers.google_workspace.clients.test_http import MockHTTP
from authentik.enterprise.providers.google_workspace.models import ( from authentik.enterprise.providers.google_workspace.models import (
GoogleWorkspaceProvider, GoogleWorkspaceProvider,
@ -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.enterprise.providers.google_workspace.tasks import google_workspace_sync
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import load_fixture from authentik.lib.tests.utils import load_fixture
from authentik.tenants.models import Tenant from authentik.tenants.models import Tenant

View File

@ -16,6 +16,7 @@ from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_user from authentik.core.tests.utils import create_test_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.microsoft_entra.models import ( from authentik.enterprise.providers.microsoft_entra.models import (
MicrosoftEntraProvider, MicrosoftEntraProvider,
MicrosoftEntraProviderGroup, MicrosoftEntraProviderGroup,
@ -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.enterprise.providers.microsoft_entra.tasks import microsoft_entra_sync
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.tenants.models import Tenant from authentik.tenants.models import Tenant

View File

@ -16,6 +16,7 @@ from authentik.blueprints.tests import apply_blueprint
from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction from authentik.common.sync.outgoing.models import OutgoingSyncDeleteAction
from authentik.core.models import Application, Group, User from authentik.core.models import Application, Group, User
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.microsoft_entra.models import ( from authentik.enterprise.providers.microsoft_entra.models import (
MicrosoftEntraProvider, MicrosoftEntraProvider,
MicrosoftEntraProviderMapping, MicrosoftEntraProviderMapping,
@ -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.enterprise.providers.microsoft_entra.tasks import microsoft_entra_sync
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.tenants.models import Tenant from authentik.tenants.models import Tenant

View File

@ -5,10 +5,10 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_cert from authentik.core.tests.utils import create_test_cert
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.ssf.models import ( from authentik.enterprise.providers.ssf.models import (
SSFProvider, SSFProvider,
) )
from authentik.lib.generators import generate_id
class TestConfiguration(APITestCase): class TestConfiguration(APITestCase):

View File

@ -11,8 +11,8 @@ from jwt import PyJWKSet
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_cert from authentik.core.tests.utils import create_test_cert
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.ssf.models import SSFProvider from authentik.enterprise.providers.ssf.models import SSFProvider
from authentik.lib.generators import generate_id
class TestJWKS(TestCase): class TestJWKS(TestCase):

View File

@ -8,6 +8,7 @@ from authentik.core.tests.utils import (
create_test_cert, create_test_cert,
create_test_user, create_test_user,
) )
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.ssf.models import ( from authentik.enterprise.providers.ssf.models import (
EventTypes, EventTypes,
SSFEventStatus, SSFEventStatus,
@ -15,7 +16,6 @@ from authentik.enterprise.providers.ssf.models import (
Stream, Stream,
StreamEvent, StreamEvent,
) )
from authentik.lib.generators import generate_id
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.stages.authenticator_webauthn.models import WebAuthnDevice from authentik.stages.authenticator_webauthn.models import WebAuthnDevice

View File

@ -7,13 +7,13 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.enterprise.providers.ssf.models import ( from authentik.enterprise.providers.ssf.models import (
SSFEventStatus, SSFEventStatus,
SSFProvider, SSFProvider,
Stream, Stream,
StreamEvent, StreamEvent,
) )
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.id_token import IDToken from authentik.providers.oauth2.id_token import IDToken
from authentik.providers.oauth2.models import AccessToken, OAuth2Provider from authentik.providers.oauth2.models import AccessToken, OAuth2Provider

View File

@ -3,13 +3,13 @@
from django.urls import reverse from django.urls import reverse
from authentik.core.tests.utils import create_test_flow, create_test_user from authentik.core.tests.utils import create_test_flow, create_test_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.stages.source.models import SourceStage from authentik.enterprise.stages.source.models import SourceStage
from authentik.enterprise.stages.source.stage import SourceStageFinal from authentik.enterprise.stages.source.stage import SourceStageFinal
from authentik.flows.models import FlowDesignation, FlowStageBinding, FlowToken, in_memory_stage from authentik.flows.models import FlowDesignation, FlowStageBinding, FlowToken, in_memory_stage
from authentik.flows.planner import PLAN_CONTEXT_IS_RESTORED, FlowPlan from authentik.flows.planner import PLAN_CONTEXT_IS_RESTORED, FlowPlan
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.flows.views.executor import SESSION_KEY_PLAN from authentik.flows.views.executor import SESSION_KEY_PLAN
from authentik.lib.generators import generate_id
from authentik.sources.saml.models import SAMLSource from authentik.sources.saml.models import SAMLSource
from authentik.stages.identification.models import IdentificationStage, UserFields from authentik.stages.identification.models import IdentificationStage, UserFields
from authentik.stages.password import BACKEND_INBUILT from authentik.stages.password import BACKEND_INBUILT

View File

@ -8,6 +8,7 @@ from django.test import TestCase
from django.utils.timezone import now from django.utils.timezone import now
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError
from authentik.crypto.generators import generate_id
from authentik.enterprise.license import LicenseKey from authentik.enterprise.license import LicenseKey
from authentik.enterprise.models import ( from authentik.enterprise.models import (
THRESHOLD_READ_ONLY_WEEKS, THRESHOLD_READ_ONLY_WEEKS,
@ -17,7 +18,6 @@ from authentik.enterprise.models import (
LicenseUsage, LicenseUsage,
LicenseUsageStatus, LicenseUsageStatus,
) )
from authentik.lib.generators import generate_id
# Valid license expiry # Valid license expiry
expiry_valid = int(mktime((now() + timedelta(days=3000)).timetuple())) expiry_valid = int(mktime((now() + timedelta(days=3000)).timetuple()))

View File

@ -7,6 +7,7 @@ from django.urls import reverse
from django.utils.timezone import now from django.utils.timezone import now
from authentik.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user from authentik.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user
from authentik.crypto.generators import generate_id
from authentik.enterprise.license import LicenseKey from authentik.enterprise.license import LicenseKey
from authentik.enterprise.models import ( from authentik.enterprise.models import (
THRESHOLD_READ_ONLY_WEEKS, THRESHOLD_READ_ONLY_WEEKS,
@ -20,7 +21,6 @@ from authentik.flows.models import (
FlowStageBinding, FlowStageBinding,
) )
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.lib.generators import generate_id
from authentik.stages.identification.models import IdentificationStage, UserFields from authentik.stages.identification.models import IdentificationStage, UserFields
from authentik.stages.password import BACKEND_INBUILT from authentik.stages.password import BACKEND_INBUILT
from authentik.stages.password.models import PasswordStage from authentik.stages.password.models import PasswordStage

View File

@ -19,8 +19,8 @@ from authentik.core.models import Group, User
from authentik.events.models import Event, EventAction, Notification from authentik.events.models import Event, EventAction, Notification
from authentik.events.utils import model_to_dict from authentik.events.utils import model_to_dict
from authentik.lib.models import excluded_models from authentik.lib.models import excluded_models
from authentik.lib.sentry import before_send
from authentik.lib.utils.errors import exception_to_string from authentik.lib.utils.errors import exception_to_string
from authentik.root.sentry import should_ignore_exception
from authentik.stages.authenticator_static.models import StaticToken from authentik.stages.authenticator_static.models import StaticToken
IGNORED_MODELS = tuple( IGNORED_MODELS = tuple(
@ -173,7 +173,7 @@ class AuditMiddleware:
message=exception_to_string(exception), message=exception_to_string(exception),
) )
thread.run() thread.run()
elif before_send({}, {"exc_info": (None, exception, None)}) is not None: elif not should_ignore_exception(exception):
thread = EventNewThread( thread = EventNewThread(
EventAction.SYSTEM_EXCEPTION, EventAction.SYSTEM_EXCEPTION,
request, request,

View File

@ -27,6 +27,7 @@ from structlog.stdlib import get_logger
from authentik import get_full_version from authentik import get_full_version
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.brands.utils import DEFAULT_BRAND from authentik.brands.utils import DEFAULT_BRAND
from authentik.common.exceptions import NotReportedException
from authentik.core.middleware import ( from authentik.core.middleware import (
SESSION_KEY_IMPERSONATE_ORIGINAL_USER, SESSION_KEY_IMPERSONATE_ORIGINAL_USER,
SESSION_KEY_IMPERSONATE_USER, SESSION_KEY_IMPERSONATE_USER,
@ -46,7 +47,6 @@ from authentik.lib.models import (
SerializerModel, SerializerModel,
internal_model, internal_model,
) )
from authentik.lib.sentry import SentryIgnoredException
from authentik.lib.utils.http import get_http_session from authentik.lib.utils.http import get_http_session
from authentik.lib.utils.time import timedelta_from_string from authentik.lib.utils.time import timedelta_from_string
from authentik.policies.models import PolicyBindingModel from authentik.policies.models import PolicyBindingModel
@ -81,7 +81,7 @@ def django_app_names() -> list[str]:
return [x.name for x in apps.app_configs.values()] return [x.name for x in apps.app_configs.values()]
class NotificationTransportError(SentryIgnoredException): class NotificationTransportError(NotReportedException):
"""Error raised when a notification fails to be delivered""" """Error raised when a notification fails to be delivered"""

View File

@ -6,6 +6,7 @@ from django.urls import reverse
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.models import ( from authentik.events.models import (
Event, Event,
EventAction, EventAction,
@ -14,7 +15,6 @@ from authentik.events.models import (
TransportMode, TransportMode,
) )
from authentik.events.utils import model_to_dict from authentik.events.utils import model_to_dict
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider

View File

@ -9,9 +9,9 @@ from guardian.shortcuts import get_anonymous_user
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.core.models import Group from authentik.core.models import Group
from authentik.crypto.generators import generate_id
from authentik.events.models import Event from authentik.events.models import Event
from authentik.flows.views.executor import QS_QUERY from authentik.flows.views.executor import QS_QUERY
from authentik.lib.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy

View File

@ -5,9 +5,9 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application, Token, TokenIntents from authentik.core.models import Application, Token, TokenIntents
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.middleware import audit_ignore, audit_overwrite_user from authentik.events.middleware import audit_ignore, audit_overwrite_user
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
class TestEventsMiddleware(APITestCase): class TestEventsMiddleware(APITestCase):

View File

@ -6,6 +6,7 @@ from django.urls import reverse
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.crypto.generators import generate_id
from authentik.events.models import ( from authentik.events.models import (
Event, Event,
EventAction, EventAction,
@ -16,7 +17,6 @@ from authentik.events.models import (
NotificationWebhookMapping, NotificationWebhookMapping,
TransportMode, TransportMode,
) )
from authentik.lib.generators import generate_id
from authentik.policies.event_matcher.models import EventMatcherPolicy from authentik.policies.event_matcher.models import EventMatcherPolicy
from authentik.policies.exceptions import PolicyException from authentik.policies.exceptions import PolicyException
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding

View File

@ -7,10 +7,10 @@ from rest_framework.test import APITestCase
from authentik.core.tasks import clean_expired_models from authentik.core.tasks import clean_expired_models
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.models import SystemTask as DBSystemTask from authentik.events.models import SystemTask as DBSystemTask
from authentik.events.models import TaskStatus from authentik.events.models import TaskStatus
from authentik.events.system_tasks import SystemTask from authentik.events.system_tasks import SystemTask
from authentik.lib.generators import generate_id
from authentik.root.celery import CELERY_APP from authentik.root.celery import CELERY_APP

View File

@ -9,6 +9,7 @@ from requests_mock import Mocker
from authentik import get_full_version from authentik import get_full_version
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.crypto.generators import generate_id
from authentik.events.models import ( from authentik.events.models import (
Event, Event,
Notification, Notification,
@ -17,7 +18,6 @@ from authentik.events.models import (
NotificationWebhookMapping, NotificationWebhookMapping,
TransportMode, TransportMode,
) )
from authentik.lib.generators import generate_id
class TestEventTransports(TestCase): class TestEventTransports(TestCase):

View File

@ -2,11 +2,11 @@
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
from authentik.policies.types import PolicyResult from authentik.policies.types import PolicyResult
class FlowNonApplicableException(SentryIgnoredException): class FlowNonApplicableException(NotReportedException):
"""Flow does not apply to current user (denied by policy, or otherwise).""" """Flow does not apply to current user (denied by policy, or otherwise)."""
policy_result: PolicyResult | None = None policy_result: PolicyResult | None = None
@ -19,14 +19,14 @@ class FlowNonApplicableException(SentryIgnoredException):
return "\n".join(self.policy_result.messages) return "\n".join(self.policy_result.messages)
class EmptyFlowException(SentryIgnoredException): class EmptyFlowException(NotReportedException):
"""Flow has no stages.""" """Flow has no stages."""
class FlowSkipStageException(SentryIgnoredException): class FlowSkipStageException(NotReportedException):
"""Exception to skip a stage""" """Exception to skip a stage"""
class StageInvalidException(SentryIgnoredException): class StageInvalidException(NotReportedException):
"""Exception can be thrown in a `Challenge` or `ChallengeResponse` serializer's """Exception can be thrown in a `Challenge` or `ChallengeResponse` serializer's
validation to trigger a `executor.stage_invalid()` response""" validation to trigger a `executor.stage_invalid()` response"""

View File

@ -6,9 +6,9 @@ from django.urls import reverse
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.api.stages import StageSerializer, StageViewSet from authentik.flows.api.stages import StageSerializer, StageViewSet
from authentik.flows.models import Flow, FlowDesignation, FlowStageBinding, Stage from authentik.flows.models import Flow, FlowDesignation, FlowStageBinding, Stage
from authentik.lib.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.stages.dummy.models import DummyStage from authentik.stages.dummy.models import DummyStage

View File

@ -9,6 +9,7 @@ from django.urls import reverse
from authentik.core.models import Group, User from authentik.core.models import Group, User
from authentik.core.tests.utils import create_test_flow, create_test_user from authentik.core.tests.utils import create_test_flow, create_test_user
from authentik.crypto.generators import generate_id
from authentik.flows.markers import ReevaluateMarker, StageMarker from authentik.flows.markers import ReevaluateMarker, StageMarker
from authentik.flows.models import ( from authentik.flows.models import (
FlowDeniedAction, FlowDeniedAction,
@ -25,7 +26,6 @@ from authentik.flows.views.executor import (
SESSION_KEY_PLAN, SESSION_KEY_PLAN,
FlowExecutorView, FlowExecutorView,
) )
from authentik.lib.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.policies.reputation.models import ReputationPolicy from authentik.policies.reputation.models import ReputationPolicy

View File

@ -7,8 +7,8 @@ from django.urls.base import reverse
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.models import FlowDesignation, FlowStageBinding, InvalidResponseAction from authentik.flows.models import FlowDesignation, FlowStageBinding, InvalidResponseAction
from authentik.lib.generators import generate_id
from authentik.stages.dummy.models import DummyStage from authentik.stages.dummy.models import DummyStage
from authentik.stages.identification.models import IdentificationStage, UserFields from authentik.stages.identification.models import IdentificationStage, UserFields

View File

@ -14,6 +14,7 @@ from guardian.shortcuts import get_anonymous_user
from authentik.blueprints.tests import reconcile_app from authentik.blueprints.tests import reconcile_app
from authentik.core.models import User from authentik.core.models import User
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.exceptions import EmptyFlowException, FlowNonApplicableException from authentik.flows.exceptions import EmptyFlowException, FlowNonApplicableException
from authentik.flows.markers import ReevaluateMarker, StageMarker from authentik.flows.markers import ReevaluateMarker, StageMarker
from authentik.flows.models import ( from authentik.flows.models import (
@ -29,7 +30,6 @@ from authentik.flows.planner import (
cache_key, cache_key,
) )
from authentik.flows.stage import StageView from authentik.flows.stage import StageView
from authentik.lib.generators import generate_id
from authentik.lib.tests.utils import dummy_get_response from authentik.lib.tests.utils import dummy_get_response
from authentik.outposts.apps import MANAGED_OUTPOST from authentik.outposts.apps import MANAGED_OUTPOST
from authentik.outposts.models import Outpost from authentik.outposts.models import Outpost

View File

@ -5,10 +5,10 @@ from django.urls import reverse
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_flow from authentik.core.tests.utils import create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.models import Flow, FlowDesignation from authentik.flows.models import Flow, FlowDesignation
from authentik.flows.planner import FlowPlan from authentik.flows.planner import FlowPlan
from authentik.flows.views.executor import SESSION_KEY_APPLICATION_PRE, SESSION_KEY_PLAN from authentik.flows.views.executor import SESSION_KEY_APPLICATION_PRE, SESSION_KEY_PLAN
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider

View File

@ -23,6 +23,7 @@ from sentry_sdk.api import set_tag
from structlog.stdlib import BoundLogger, get_logger from structlog.stdlib import BoundLogger, get_logger
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.common.exceptions import NotReportedException
from authentik.core.models import Application from authentik.core.models import Application
from authentik.events.models import Event, EventAction, cleanse_dict from authentik.events.models import Event, EventAction, cleanse_dict
from authentik.flows.apps import HIST_FLOW_EXECUTION_STAGE_TIME from authentik.flows.apps import HIST_FLOW_EXECUTION_STAGE_TIME
@ -55,7 +56,6 @@ from authentik.flows.planner import (
FlowPlanner, FlowPlanner,
) )
from authentik.flows.stage import AccessDeniedStage, StageView from authentik.flows.stage import AccessDeniedStage, StageView
from authentik.lib.sentry import SentryIgnoredException
from authentik.lib.utils.errors import exception_to_string from authentik.lib.utils.errors import exception_to_string
from authentik.lib.utils.reflection import all_subclasses, class_to_path from authentik.lib.utils.reflection import all_subclasses, class_to_path
from authentik.lib.utils.urls import is_url_absolute, redirect_with_qs from authentik.lib.utils.urls import is_url_absolute, redirect_with_qs
@ -93,7 +93,7 @@ def challenge_response_types():
return mapping return mapping
class InvalidStageError(SentryIgnoredException): class InvalidStageError(NotReportedException):
"""Error raised when a challenge from a stage is not valid""" """Error raised when a challenge from a stage is not valid"""

View File

@ -7,8 +7,8 @@ from jwt import decode
from authentik.blueprints.tests import apply_blueprint from authentik.blueprints.tests import apply_blueprint
from authentik.common.expression.evaluator import BaseEvaluator 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.core.tests.utils import create_test_admin_user, create_test_flow, create_test_user
from authentik.crypto.generators import generate_id
from authentik.events.models import Event from authentik.events.models import Event
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider, ScopeMapping from authentik.providers.oauth2.models import OAuth2Provider, ScopeMapping

View File

@ -2,7 +2,7 @@
from django.test import TestCase from django.test import TestCase
from authentik.lib.sentry import SentryIgnoredException, before_send from authentik.common.exceptions import NotReportedException, before_send
class TestSentry(TestCase): class TestSentry(TestCase):
@ -10,7 +10,7 @@ class TestSentry(TestCase):
def test_error_not_sent(self): def test_error_not_sent(self):
"""Test SentryIgnoredError not sent""" """Test SentryIgnoredError not sent"""
self.assertIsNone(before_send({}, {"exc_info": (0, SentryIgnoredException(), 0)})) self.assertIsNone(before_send({}, {"exc_info": (0, NotReportedException(), 0)}))
def test_error_sent(self): def test_error_sent(self):
"""Test error sent""" """Test error sent"""

View File

@ -5,9 +5,9 @@ from dataclasses import dataclass
from structlog.stdlib import get_logger from structlog.stdlib import get_logger
from authentik import __version__, get_build_hash from authentik import __version__, get_build_hash
from authentik.common.exceptions import NotReportedException
from authentik.events.logs import LogEvent, capture_logs from authentik.events.logs import LogEvent, capture_logs
from authentik.lib.config import CONFIG from authentik.lib.config import CONFIG
from authentik.lib.sentry import SentryIgnoredException
from authentik.outposts.models import ( from authentik.outposts.models import (
Outpost, Outpost,
OutpostServiceConnection, OutpostServiceConnection,
@ -17,7 +17,7 @@ from authentik.outposts.models import (
FIELD_MANAGER = "goauthentik.io" FIELD_MANAGER = "goauthentik.io"
class ControllerException(SentryIgnoredException): class ControllerException(NotReportedException):
"""Exception raised when anything fails during controller run""" """Exception raised when anything fails during controller run"""

View File

@ -1,9 +1,9 @@
"""exceptions used by the kubernetes reconciler to trigger updates""" """exceptions used by the kubernetes reconciler to trigger updates"""
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class ReconcileTrigger(SentryIgnoredException): class ReconcileTrigger(NotReportedException):
"""Base trigger raised by child classes to notify us""" """Base trigger raised by child classes to notify us"""

View File

@ -22,6 +22,7 @@ from structlog.stdlib import get_logger
from authentik import __version__, get_build_hash from authentik import __version__, get_build_hash
from authentik.blueprints.models import ManagedModel from authentik.blueprints.models import ManagedModel
from authentik.brands.models import Brand from authentik.brands.models import Brand
from authentik.common.exceptions import NotReportedException
from authentik.core.models import ( from authentik.core.models import (
USER_PATH_SYSTEM_PREFIX, USER_PATH_SYSTEM_PREFIX,
Provider, Provider,
@ -38,7 +39,6 @@ from authentik.lib.models import (
SerializerModel, SerializerModel,
internal_model, internal_model,
) )
from authentik.lib.sentry import SentryIgnoredException
from authentik.lib.utils.errors import exception_to_string from authentik.lib.utils.errors import exception_to_string
from authentik.outposts.controllers.k8s.utils import get_namespace from authentik.outposts.controllers.k8s.utils import get_namespace
@ -49,7 +49,7 @@ LOGGER = get_logger()
USER_PATH_OUTPOSTS = USER_PATH_SYSTEM_PREFIX + "/outposts" USER_PATH_OUTPOSTS = USER_PATH_SYSTEM_PREFIX + "/outposts"
class ServiceConnectionInvalid(SentryIgnoredException): class ServiceConnectionInvalid(NotReportedException):
"""Exception raised when a Service Connection has invalid parameters""" """Exception raised when a Service Connection has invalid parameters"""

View File

@ -6,7 +6,7 @@ from rest_framework.test import APITestCase
from authentik.blueprints.tests import reconcile_app from authentik.blueprints.tests import reconcile_app
from authentik.core.models import PropertyMapping from authentik.core.models import PropertyMapping
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.outposts.api.outposts import OutpostSerializer from authentik.outposts.api.outposts import OutpostSerializer
from authentik.outposts.apps import MANAGED_OUTPOST from authentik.outposts.apps import MANAGED_OUTPOST
from authentik.outposts.models import Outpost, OutpostType, default_outpost_config from authentik.outposts.models import Outpost, OutpostType, default_outpost_config

View File

@ -3,7 +3,7 @@
from django.test import TestCase from django.test import TestCase
from authentik.blueprints.tests import reconcile_app from authentik.blueprints.tests import reconcile_app
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.outposts.apps import MANAGED_OUTPOST from authentik.outposts.apps import MANAGED_OUTPOST
from authentik.outposts.controllers.k8s.deployment import DeploymentReconciler from authentik.outposts.controllers.k8s.deployment import DeploymentReconciler
from authentik.outposts.controllers.kubernetes import KubernetesController from authentik.outposts.controllers.kubernetes import KubernetesController

View File

@ -1,13 +1,13 @@
"""policy exceptions""" """policy exceptions"""
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class PolicyEngineException(SentryIgnoredException): class PolicyEngineException(NotReportedException):
"""Error raised when a policy engine is configured incorrectly""" """Error raised when a policy engine is configured incorrectly"""
class PolicyException(SentryIgnoredException): class PolicyException(NotReportedException):
"""Exception that should be raised during Policy Evaluation, and can be recovered from.""" """Exception that should be raised during Policy Evaluation, and can be recovered from."""
src_exc: Exception | None = None src_exc: Exception | None = None

View File

@ -6,7 +6,7 @@ from rest_framework.serializers import ValidationError
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from authentik.core.models import Application from authentik.core.models import Application
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.exceptions import PolicyException from authentik.policies.exceptions import PolicyException
from authentik.policies.expression.api import ExpressionPolicySerializer from authentik.policies.expression.api import ExpressionPolicySerializer
from authentik.policies.expression.evaluator import PolicyEvaluator from authentik.policies.expression.evaluator import PolicyEvaluator

View File

@ -1,5 +1,5 @@
from authentik.lib.sentry import SentryIgnoredException from authentik.common.exceptions import NotReportedException
class GeoIPNotFoundException(SentryIgnoredException): class GeoIPNotFoundException(NotReportedException):
"""Exception raised when an IP is not found in a GeoIP database""" """Exception raised when an IP is not found in a GeoIP database"""

View File

@ -3,9 +3,9 @@
from django.urls.base import reverse from django.urls.base import reverse
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.flows.models import FlowDesignation, FlowStageBinding from authentik.flows.models import FlowDesignation, FlowStageBinding
from authentik.flows.tests import FlowTestCase from authentik.flows.tests import FlowTestCase
from authentik.lib.generators import generate_id
from authentik.policies.password.models import PasswordPolicy from authentik.policies.password.models import PasswordPolicy
from authentik.stages.prompt.models import FieldTypes, Prompt, PromptStage from authentik.stages.prompt.models import FieldTypes, Prompt, PromptStage

View File

@ -3,7 +3,7 @@
from django.test import TestCase from django.test import TestCase
from guardian.shortcuts import get_anonymous_user from guardian.shortcuts import get_anonymous_user
from authentik.lib.generators import generate_key from authentik.crypto.generators import generate_key
from authentik.policies.password.models import PasswordPolicy from authentik.policies.password.models import PasswordPolicy
from authentik.policies.types import PolicyRequest, PolicyResult from authentik.policies.types import PolicyRequest, PolicyResult
from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT

View File

@ -3,7 +3,7 @@
from django.test import TestCase from django.test import TestCase
from guardian.shortcuts import get_anonymous_user from guardian.shortcuts import get_anonymous_user
from authentik.lib.generators import generate_key from authentik.crypto.generators import generate_key
from authentik.policies.password.models import PasswordPolicy from authentik.policies.password.models import PasswordPolicy
from authentik.policies.types import PolicyRequest, PolicyResult from authentik.policies.types import PolicyRequest, PolicyResult

View File

@ -3,7 +3,7 @@
from django.test import TestCase from django.test import TestCase
from guardian.shortcuts import get_anonymous_user from guardian.shortcuts import get_anonymous_user
from authentik.lib.generators import generate_key from authentik.crypto.generators import generate_key
from authentik.policies.password.models import PasswordPolicy from authentik.policies.password.models import PasswordPolicy
from authentik.policies.types import PolicyRequest, PolicyResult from authentik.policies.types import PolicyRequest, PolicyResult
from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT from authentik.stages.prompt.stage import PLAN_CONTEXT_PROMPT

View File

@ -3,7 +3,7 @@
from django.test import RequestFactory, TestCase from django.test import RequestFactory, TestCase
from authentik.core.models import User from authentik.core.models import User
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.reputation.api import ReputationPolicySerializer from authentik.policies.reputation.api import ReputationPolicySerializer
from authentik.policies.reputation.models import Reputation, ReputationPolicy from authentik.policies.reputation.models import Reputation, ReputationPolicy
from authentik.policies.reputation.signals import update_score from authentik.policies.reputation.signals import update_score

View File

@ -4,7 +4,7 @@ from django.core.cache import cache
from django.test import TestCase from django.test import TestCase
from authentik.core.tests.utils import create_test_admin_user from authentik.core.tests.utils import create_test_admin_user
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.engine import PolicyEngine from authentik.policies.engine import PolicyEngine
from authentik.policies.exceptions import PolicyEngineException from authentik.policies.exceptions import PolicyEngineException

View File

@ -8,8 +8,8 @@ from django.views.debug import SafeExceptionReporterFilter
from guardian.shortcuts import get_anonymous_user from guardian.shortcuts import get_anonymous_user
from authentik.core.models import Application, Group, User from authentik.core.models import Application, Group, User
from authentik.crypto.generators import generate_id
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.policies.dummy.models import DummyPolicy from authentik.policies.dummy.models import DummyPolicy
from authentik.policies.expression.models import ExpressionPolicy from authentik.policies.expression.models import ExpressionPolicy
from authentik.policies.models import Policy, PolicyBinding from authentik.policies.models import Policy, PolicyBinding

View File

@ -10,9 +10,9 @@ from django.utils.translation import gettext as _
from django.views.generic.base import View from django.views.generic.base import View
from structlog.stdlib import get_logger from structlog.stdlib import get_logger
from authentik.common.exceptions import NotReportedException
from authentik.core.models import Application, Provider, User from authentik.core.models import Application, Provider, User
from authentik.flows.views.executor import SESSION_KEY_APPLICATION_PRE, SESSION_KEY_POST from authentik.flows.views.executor import SESSION_KEY_APPLICATION_PRE, SESSION_KEY_POST
from authentik.lib.sentry import SentryIgnoredException
from authentik.policies.denied import AccessDeniedResponse from authentik.policies.denied import AccessDeniedResponse
from authentik.policies.engine import PolicyEngine from authentik.policies.engine import PolicyEngine
from authentik.policies.types import PolicyRequest, PolicyResult from authentik.policies.types import PolicyRequest, PolicyResult
@ -20,7 +20,7 @@ from authentik.policies.types import PolicyRequest, PolicyResult
LOGGER = get_logger() LOGGER = get_logger()
class RequestValidationError(SentryIgnoredException): class RequestValidationError(NotReportedException):
"""Error raised in pre_permission_check, when a request is invalid.""" """Error raised in pre_permission_check, when a request is invalid."""
response: HttpResponse | None response: HttpResponse | None

View File

@ -7,7 +7,7 @@ from rest_framework.test import APITestCase
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.ldap.models import LDAPProvider from authentik.providers.ldap.models import LDAPProvider

View File

@ -16,8 +16,8 @@ from authentik.common.oauth.constants import (
AMR_WEBAUTHN, AMR_WEBAUTHN,
) )
from authentik.core.models import default_token_duration from authentik.core.models import default_token_duration
from authentik.crypto.generators import generate_id
from authentik.events.signals import get_login_event from authentik.events.signals import get_login_event
from authentik.lib.generators import generate_id
from authentik.stages.password.stage import PLAN_CONTEXT_METHOD, PLAN_CONTEXT_METHOD_ARGS from authentik.stages.password.stage import PLAN_CONTEXT_METHOD, PLAN_CONTEXT_METHOD_ARGS
if TYPE_CHECKING: if TYPE_CHECKING:

View File

@ -5,7 +5,7 @@ from django.conf import settings
from django.db import migrations, models from django.db import migrations, models
import authentik.core.models import authentik.core.models
import authentik.lib.generators import authentik.crypto.generators
import authentik.lib.utils.time import authentik.lib.utils.time
@ -56,7 +56,7 @@ class Migration(migrations.Migration):
( (
"client_id", "client_id",
models.CharField( models.CharField(
default=authentik.lib.generators.generate_id, default=authentik.crypto.generators.generate_id,
max_length=255, max_length=255,
unique=True, unique=True,
verbose_name="Client ID", verbose_name="Client ID",
@ -66,7 +66,7 @@ class Migration(migrations.Migration):
"client_secret", "client_secret",
models.CharField( models.CharField(
blank=True, blank=True,
default=authentik.lib.generators.generate_key, default=authentik.crypto.generators.generate_key,
max_length=255, max_length=255,
verbose_name="Client Secret", verbose_name="Client Secret",
), ),

View File

@ -5,7 +5,7 @@ from django.conf import settings
from django.db import migrations, models from django.db import migrations, models
import authentik.core.models import authentik.core.models
import authentik.lib.generators import authentik.crypto.generators
class Migration(migrations.Migration): class Migration(migrations.Migration):
@ -29,10 +29,12 @@ class Migration(migrations.Migration):
models.DateTimeField(default=authentik.core.models.default_token_duration), models.DateTimeField(default=authentik.core.models.default_token_duration),
), ),
("expiring", models.BooleanField(default=True)), ("expiring", models.BooleanField(default=True)),
("device_code", models.TextField(default=authentik.lib.generators.generate_key)), ("device_code", models.TextField(default=authentik.crypto.generators.generate_key)),
( (
"user_code", "user_code",
models.TextField(default=authentik.lib.generators.generate_code_fixed_length), models.TextField(
default=authentik.crypto.generators.generate_code_fixed_length
),
), ),
("_scope", models.TextField(default="", verbose_name="Scopes")), ("_scope", models.TextField(default="", verbose_name="Scopes")),
( (

View File

@ -5,7 +5,7 @@ from django.conf import settings
from django.db import migrations, models from django.db import migrations, models
import authentik.core.models import authentik.core.models
import authentik.lib.generators import authentik.crypto.generators
import authentik.lib.utils.time import authentik.lib.utils.time
@ -52,7 +52,7 @@ class Migration(migrations.Migration):
migrations.AddField( migrations.AddField(
model_name="refreshtoken", model_name="refreshtoken",
name="token", name="token",
field=models.TextField(default=authentik.lib.generators.generate_key), field=models.TextField(default=authentik.crypto.generators.generate_key),
), ),
migrations.AlterField( migrations.AlterField(
model_name="oauth2provider", model_name="oauth2provider",

View File

@ -40,8 +40,8 @@ from authentik.core.models import (
Provider, Provider,
User, User,
) )
from authentik.crypto.generators import generate_code_fixed_length, generate_id, generate_key
from authentik.crypto.models import CertificateKeyPair from authentik.crypto.models import CertificateKeyPair
from authentik.lib.generators import generate_code_fixed_length, generate_id, generate_key
from authentik.lib.models import SerializerModel, internal_model from authentik.lib.models import SerializerModel, internal_model
from authentik.lib.utils.time import timedelta_string_validator from authentik.lib.utils.time import timedelta_string_validator
from authentik.providers.oauth2.id_token import IDToken, SubModes from authentik.providers.oauth2.id_token import IDToken, SubModes

View File

@ -10,7 +10,7 @@ from rest_framework.test import APITestCase
from authentik.blueprints.tests import apply_blueprint from authentik.blueprints.tests import apply_blueprint
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.oauth2.models import ( from authentik.providers.oauth2.models import (
OAuth2Provider, OAuth2Provider,
RedirectURI, RedirectURI,

View File

@ -11,8 +11,8 @@ from authentik.common.oauth.constants import TOKEN_TYPE
from authentik.common.oauth.errors import AuthorizeError, ClientIdError, RedirectUriError from authentik.common.oauth.errors import AuthorizeError, ClientIdError, RedirectUriError
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_flow
from authentik.crypto.generators import generate_id
from authentik.events.models import Event, EventAction from authentik.events.models import Event, EventAction
from authentik.lib.generators import generate_id
from authentik.lib.utils.time import timedelta_from_string from authentik.lib.utils.time import timedelta_from_string
from authentik.providers.oauth2.models import ( from authentik.providers.oauth2.models import (
AccessToken, AccessToken,

View File

@ -6,7 +6,7 @@ from django.urls import reverse
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_flow from authentik.core.tests.utils import create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider from authentik.providers.oauth2.models import OAuth2Provider
from authentik.providers.oauth2.tests.utils import OAuthTestCase from authentik.providers.oauth2.tests.utils import OAuthTestCase

View File

@ -7,7 +7,7 @@ from rest_framework.test import APIClient
from authentik.core.models import Application, Group from authentik.core.models import Application, Group
from authentik.core.tests.utils import create_test_admin_user, create_test_brand, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_brand, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.policies.models import PolicyBinding from authentik.policies.models import PolicyBinding
from authentik.providers.oauth2.models import DeviceToken, OAuth2Provider from authentik.providers.oauth2.models import DeviceToken, OAuth2Provider
from authentik.providers.oauth2.tests.utils import OAuthTestCase from authentik.providers.oauth2.tests.utils import OAuthTestCase

View File

@ -10,7 +10,7 @@ from django.utils import timezone
from authentik.common.oauth.constants import ACR_AUTHENTIK_DEFAULT from authentik.common.oauth.constants import ACR_AUTHENTIK_DEFAULT
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow from authentik.core.tests.utils import create_test_admin_user, create_test_cert, create_test_flow
from authentik.lib.generators import generate_id from authentik.crypto.generators import generate_id
from authentik.providers.oauth2.models import ( from authentik.providers.oauth2.models import (
AccessToken, AccessToken,
IDToken, IDToken,

View File

@ -11,8 +11,8 @@ from jwt import PyJWKSet
from authentik.core.models import Application from authentik.core.models import Application
from authentik.core.tests.utils import create_test_cert, create_test_flow from authentik.core.tests.utils import create_test_cert, create_test_flow
from authentik.crypto.builder import PrivateKeyAlg from authentik.crypto.builder import PrivateKeyAlg
from authentik.crypto.generators import generate_id
from authentik.crypto.models import CertificateKeyPair from authentik.crypto.models import CertificateKeyPair
from authentik.lib.generators import generate_id
from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode from authentik.providers.oauth2.models import OAuth2Provider, RedirectURI, RedirectURIMatchingMode
from authentik.providers.oauth2.tests.utils import OAuthTestCase from authentik.providers.oauth2.tests.utils import OAuthTestCase

Some files were not shown because too many files have changed in this diff Show More