web: fix redirect when accessing authentik URLs authenticated
closes #3174 Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
b7558ae28c
commit
56fd436e5d
|
@ -14,7 +14,9 @@ from authentik.core.views.session import EndSessionView
|
|||
urlpatterns = [
|
||||
path(
|
||||
"",
|
||||
login_required(RedirectView.as_view(pattern_name="authentik_core:if-user")),
|
||||
login_required(
|
||||
RedirectView.as_view(pattern_name="authentik_core:if-user", query_string=True)
|
||||
),
|
||||
name="root-redirect",
|
||||
),
|
||||
path(
|
||||
|
|
|
@ -37,7 +37,7 @@ urlpatterns = [
|
|||
),
|
||||
path(
|
||||
"<slug:application_slug>/end-session/",
|
||||
RedirectView.as_view(pattern_name="authentik_core:if-session-end"),
|
||||
RedirectView.as_view(pattern_name="authentik_core:if-session-end", query_string=True),
|
||||
name="end-session",
|
||||
),
|
||||
path("<slug:application_slug>/jwks/", JWKSView.as_view(), name="jwks"),
|
||||
|
|
|
@ -43,7 +43,10 @@ export function me(): Promise<SessionUser> {
|
|||
},
|
||||
};
|
||||
if (ex.response.status === 401 || ex.response.status === 403) {
|
||||
window.location.assign("/");
|
||||
const relativeUrl = window.location
|
||||
.toString()
|
||||
.substring(window.location.origin.length);
|
||||
window.location.assign(`/flows/-/default/authentication/?next=${encodeURIComponent(relativeUrl)}`);
|
||||
}
|
||||
return defaultUser;
|
||||
});
|
||||
|
|
|
@ -100,6 +100,11 @@ export class AdminInterface extends LitElement {
|
|||
});
|
||||
});
|
||||
this.version = new AdminApi(DEFAULT_CONFIG).adminVersionRetrieve();
|
||||
me().then((u) => {
|
||||
if (!u.user.isSuperuser && u.user.pk > 0) {
|
||||
window.location.assign("/if/user");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
render(): TemplateResult {
|
||||
|
@ -150,11 +155,6 @@ export class AdminInterface extends LitElement {
|
|||
}
|
||||
|
||||
renderSidebarItems(): TemplateResult {
|
||||
me().then((u) => {
|
||||
if (!u.user.isSuperuser) {
|
||||
window.location.assign("/if/user");
|
||||
}
|
||||
});
|
||||
return html`
|
||||
${until(
|
||||
this.version.then((version) => {
|
||||
|
|
Reference in New Issue