import type { Metadata } from "next"; import { oeffentlicheAdresse } from "@/lib/adressen"; import { Karte } from "@/components/karte"; import { Status } from "@/components/status"; import { oidcEinstellungen } from "@/server/auth/oidc"; import { darf } from "@/server/auth/rechte"; import { seiteSchuetzen } from "@/server/auth/zugang"; import { benutzerListe } from "@/server/services/benutzer"; import { schluesselFuer } from "@/server/services/schluessel"; import { tokensVon } from "@/server/services/tokens"; import { BenutzerVerwaltung } from "./benutzer-verwaltung"; import { PasswortAendern } from "./passwort-aendern"; import { SchluesselVerwaltung } from "./schluessel-verwaltung"; import { TokenVerwaltung } from "./token-verwaltung"; export const metadata: Metadata = { title: "Einstellungen" }; /** Einstellungen: eigene SSH-Schlüssel, CLI-Tokens, Passwort; für Admins die Benutzer. */ export default async function Einstellungen({ searchParams }: { searchParams: Promise<{ sso?: string }> }) { const benutzer = await seiteSchuetzen("eigeneZugaenge", "/einstellungen"); const sso = oidcEinstellungen(); const ssoFehler = (await searchParams).sso; const admin = darf(benutzer.rolle, "benutzerVerwalten"); return (
Angemeldet als {benutzer.benutzername} · {benutzer.rolle === "ADMIN" ? "Admin" : "Operator"}
Dein Konto ist noch nicht mit {sso.anzeigename} verknüpft. Danach kannst du dich auch dort anmelden; die Rolle kommt dann aus den Gruppen beim Identity Provider.
> )}