diff --git a/web/src/admin/users/UserViewPage.ts b/web/src/admin/users/UserViewPage.ts
index 25915b64a..6ef77aa51 100644
--- a/web/src/admin/users/UserViewPage.ts
+++ b/web/src/admin/users/UserViewPage.ts
@@ -14,6 +14,11 @@ import "@goauthentik/app/elements/rbac/ObjectPermissionsPage";
import { DEFAULT_CONFIG } from "@goauthentik/common/api/config";
import { EVENT_REFRESH } from "@goauthentik/common/constants";
import { userTypeToLabel } from "@goauthentik/common/labels";
+import "@goauthentik/components/DescriptionList";
+import {
+ type DescriptionPair,
+ renderDescriptionList,
+} from "@goauthentik/components/DescriptionList";
import "@goauthentik/components/ak-status-label";
import "@goauthentik/components/events/ObjectChangelog";
import "@goauthentik/components/events/UserEvents";
@@ -137,165 +142,91 @@ export class UserViewPage extends AKElement {
const user = this.user;
- const canImpersonate =
- rootInterface()?.config?.capabilities.includes(CapabilitiesEnum.CanImpersonate) &&
- this.user.pk !== this.me?.user.pk;
+ // prettier-ignore
+ const userInfo: DescriptionPair[] = [
+ [msg("Username"), user.username],
+ [msg("Name"), user.name],
+ [msg("Email"), user.email || "-"],
+ [msg("Last login"), user.lastLogin?.toLocaleString()],
+ [msg("Active"), html`