Auf der Seite eines Schluessels: Public Key einem Host oder einer Gruppe zuweisen, Private Key (nur Admin) auf einen Quell-Host legen - mit ~/.ssh/config-Eintrag und dem Host-Key des Ziels in known_hosts -, Dry-Run fuer alle Ziele, anwenden und die Verbindung von A nach B testen. Der Kern-Anwendungsfall laeuft damit im Browser durch (E2E). Der Dry-Run nimmt Private-Key-Ziele nur fuer Admins auf: sonst koennte ein Operator einen vorbereiteten Private Key ausrollen lassen. Die Vorschau zeigt je Datei die Aktion; der Inhalt eines Private Keys erreicht den Browser nie. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 lines
725 B
TypeScript
26 lines
725 B
TypeScript
"use client";
|
|
|
|
import { AusrollDialog } from "@/components/ausrollen/AusrollDialog";
|
|
import { PublicZuweisenFormular } from "@/components/ausrollen/PublicZuweisenFormular";
|
|
import type { ZielAuswahl } from "@/server/queries/ziele";
|
|
|
|
/** „+ Ausrollen“ in der Karte „Public Key ausgerollt auf“ (#016). */
|
|
export function PublicAusrollenAktion({
|
|
schluesselId,
|
|
darf,
|
|
auswahl,
|
|
}: {
|
|
schluesselId: string;
|
|
darf: boolean;
|
|
auswahl?: ZielAuswahl;
|
|
}) {
|
|
if (!darf || !auswahl) return null;
|
|
return (
|
|
<AusrollDialog titel="Public Key zuweisen">
|
|
{(schliessen) => (
|
|
<PublicZuweisenFormular schluesselId={schluesselId} auswahl={auswahl} beiErfolg={schliessen} />
|
|
)}
|
|
</AusrollDialog>
|
|
);
|
|
}
|