Implement managed browser security, individual agents and observability
This commit is contained in:
1 parent
ff482ebe23
commit
ea448de2d4
172 files changed
+5404
-347
No files matched your search
@@ -9,6 +9,8 @@ import {GroupAssignmentSchema} from './policy-groups.mjs';
|
||||
import {DiagnosticsSchema} from './diagnostics.mjs';
|
||||
import {FileTransfersSchema} from './file-transfer.mjs';
|
||||
import {UserAccessSchema} from './user-profiles.mjs';
|
||||
import {LibraryPolicySchema} from './library.mjs';
|
||||
import {BrandSchema,StartPageSchema} from './branding.mjs';
|
||||
|
||||
const host = z.string().max(253).regex(/^(\*\.)?[a-z0-9](?:[a-z0-9.-]*[a-z0-9])?$/i);
|
||||
export const PolicySchema = z.object({
|
||||
@@ -16,9 +18,12 @@ export const PolicySchema = z.object({
|
||||
assignment:GroupAssignmentSchema.optional(),
|
||||
userAccess:UserAccessSchema,
|
||||
diagnostics:DiagnosticsSchema.prefault({}),
|
||||
evidence:z.object({enabled:z.boolean().default(false),captureDownloads:z.boolean().default(false)}).strict().prefault({}),
|
||||
fileTransfers:FileTransfersSchema.prefault({}),
|
||||
library:LibraryPolicySchema,
|
||||
expiresAt: z.string().datetime(),
|
||||
brand: z.object({ name: z.string().min(1).max(40), color: z.string().regex(/^#[0-9a-f]{6}$/i) }),
|
||||
brand: BrandSchema,
|
||||
startPage:StartPageSchema,
|
||||
browser: z.object({
|
||||
homeUrl: z.string().url(), allowedHosts: z.array(host).max(200), blockedHosts: z.array(host).max(200),
|
||||
allowDownloads: z.boolean(), allowDevTools: z.boolean(), allowWebSockets: z.boolean(),
|
||||
|
||||
Reference in new issue
Block a user