Add governed encryption administration

This commit is contained in:
2026-08-04 01:27:52 +02:00
parent 42f35f8d00
commit ba92d8bf32
15 changed files with 1472 additions and 4 deletions
+38
View File
@@ -0,0 +1,38 @@
import { createElement, lazy } from "react";
import type { AdminSectionsUiCapability, PlatformWebModule } from "@govoplan/core-webui";
import "./styles/encryption.css";
const EncryptionAdminPanel = lazy(() => import("./features/EncryptionAdminPanel"));
const adminSections: AdminSectionsUiCapability = {
sections: [
{
id: "tenant-encryption",
moduleId: "encryption",
kind: "management",
surfaceId: "encryption.admin.operations",
label: "Encryption",
group: "TENANT",
order: 78,
anyOf: ["encryption:vault:admin", "encryption:recovery:approve"],
render: ({ settings, auth }) => createElement(EncryptionAdminPanel, { settings, auth })
}
]
};
export const encryptionModule: PlatformWebModule = {
id: "encryption",
label: "Encryption",
version: "0.1.14",
dependencies: [],
optionalDependencies: ["access", "audit", "policy", "identity_trust", "notifications"],
viewSurfaces: [
{ id: "encryption.admin.operations", moduleId: "encryption", kind: "section", label: "Encryption administration", order: 10 },
{ id: "encryption.admin.vaults", moduleId: "encryption", kind: "section", label: "Key vaults", parentId: "encryption.admin.operations", order: 20 },
{ id: "encryption.admin.migrations", moduleId: "encryption", kind: "section", label: "Protection migrations", parentId: "encryption.admin.operations", order: 30 },
{ id: "encryption.admin.recovery", moduleId: "encryption", kind: "section", label: "Recovery ceremonies", parentId: "encryption.admin.operations", order: 40 }
],
uiCapabilities: { "admin.sections": adminSections }
};
export default encryptionModule;