From 2204090d78696db2037580271d46406bd72b30c2 Mon Sep 17 00:00:00 2001 From: alphaeusmote <41258468-alphaeusmote@users.noreply.replit.com> Date: Fri, 11 Apr 2025 14:49:09 +0000 Subject: [PATCH] Improve LDAP connection handling and add permission checks. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 705f2157-ef97-4fbd-89e4-8c7f2ecaea90 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/7ed01c5f-a82d-405a-b728-b2e3d127c60c/9f1689f9-354e-48da-9155-329f0295a865.jpg --- server/routes.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/server/routes.ts b/server/routes.ts index b2c669d..9554589 100644 --- a/server/routes.ts +++ b/server/routes.ts @@ -25,7 +25,8 @@ import { requireAuth, requirePermission, requireAdmin, - initializeRBAC + initializeRBAC, + checkPermission } from "./authorization"; import { ldapClient } from "./ldap"; import { @@ -34,9 +35,19 @@ import { parseFilter, parsePagination } from "./query-parser"; + import { eq, sql, count } from "drizzle-orm"; + import { v4 as uuidv4 } from "uuid"; +// Helper function to connect to LDAP server +async function connectToLdap(connection: any) { + if (!ldapClient.isConnectionActive(connection.id)) { + await ldapClient.connect(connection); + } + return ldapClient.getClient(connection.id); +} + // Extend Express Request to include user property interface Request extends ExpressRequest { user: {