enterprise: fix audit middleware import (#9177)

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
This commit is contained in:
Jens L
2024-04-08 15:24:16 +02:00
committed by GitHub
parent d7750d34de
commit 5a5a2a5d69
4 changed files with 26 additions and 5 deletions

View File

@ -13,9 +13,9 @@ class AuthentikEnterpriseAuditConfig(EnterpriseConfig):
verbose_name = "authentik Enterprise.Audit"
default = True
@EnterpriseConfig.reconcile_global
def install_middleware(self):
def ready(self):
"""Install enterprise audit middleware"""
orig_import = "authentik.events.middleware.AuditMiddleware"
new_import = "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware"
settings.MIDDLEWARE = [new_import if x == orig_import else x for x in settings.MIDDLEWARE]
return super().ready()

View File

@ -0,0 +1,18 @@
from django.apps import apps
from django.conf import settings
from django.test import TestCase
class TestEnterpriseAudit(TestCase):
def test_import(self):
"""Ensure middleware is imported when app.ready is called"""
# Revert import swap
orig_import = "authentik.events.middleware.AuditMiddleware"
new_import = "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware"
settings.MIDDLEWARE = [orig_import if x == new_import else x for x in settings.MIDDLEWARE]
# Re-call ready()
apps.get_app_config("authentik_enterprise_audit").ready()
self.assertIn(
"authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware", settings.MIDDLEWARE
)

View File

@ -75,6 +75,9 @@ export class EnterpriseLicenseListPage extends TablePage<License> {
.pf-m-no-padding-bottom {
padding-bottom: 0;
}
.install-id {
word-break: break-all;
}
`,
);
}
@ -255,7 +258,7 @@ export class EnterpriseLicenseListPage extends TablePage<License> {
>
</div>
<div class="pf-c-card__title">${msg("Your Install ID")}</div>
<div class="pf-c-card__body">${installID}</div>
<div class="pf-c-card__body install-id">${installID}</div>
`;
return html`<div class="pf-l-grid__item pf-c-card">

View File

@ -18,7 +18,7 @@ import PFPage from "@patternfly/patternfly/components/Page/page.css";
import PFGrid from "@patternfly/patternfly/layouts/Grid/grid.css";
import PFBase from "@patternfly/patternfly/patternfly-base.css";
import { EventsApi } from "@goauthentik/api";
import { EventToJSON, EventsApi } from "@goauthentik/api";
@customElement("ak-event-view")
export class EventViewPage extends AKElement {
@ -143,7 +143,7 @@ export class EventViewPage extends AKElement {
<div class="pf-c-card pf-l-grid__item pf-m-12-col">
<div class="pf-c-card__title">${msg("Raw event info")}</div>
<div class="pf-c-card__body">
<pre>${JSON.stringify(this.event, null, 4)}</pre>
<pre>${JSON.stringify(EventToJSON(this.event), null, 4)}</pre>
</div>
</div>
</div>