From 2fd2bb36305942f9cbae076755e4a5458b5b0d58 Mon Sep 17 00:00:00 2001 From: taarly Date: Sat, 13 Dec 2025 15:25:57 +0100 Subject: [PATCH] logging for error messages when creating users --- public/api/create_user.php | 5 ++++- public/api/create_users_csv.php | 3 +++ scripts/powershell/create_user.ps1 | 3 ++- scripts/powershell/create_users_csv.ps1 | 3 ++- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/public/api/create_user.php b/public/api/create_user.php index ce59401..5a83c59 100644 --- a/public/api/create_user.php +++ b/public/api/create_user.php @@ -66,7 +66,7 @@ $cmd = sprintf( // Execute and capture output and exit code $output = []; $returnVar = null; -if (!file_exists($script)) { +if (!file_exists($script)) { $_SESSION['flash_error'] = 'PowerShell-Skript nicht gefunden: ' . $script; @unlink($tmpFile); header('Location: ../index.php?route=createuser'); @@ -82,6 +82,9 @@ if ($exePathCheck === null) { exec($cmd . ' 2>&1', $output, $returnVar); $json = implode("\n", $output); +// Optional: write raw output into logs for debugging +@file_put_contents(__DIR__ . '/../logs/create_user_output.log', date('Y-m-d H:i:s') . ' CMD: ' . $cmd . "\n" . $json . "\n\n", FILE_APPEND | LOCK_EX); + @unlink($tmpFile); // Try to parse JSON output diff --git a/public/api/create_users_csv.php b/public/api/create_users_csv.php index 3b01536..d9acf18 100644 --- a/public/api/create_users_csv.php +++ b/public/api/create_users_csv.php @@ -80,6 +80,9 @@ $json = implode("\n", $output); @unlink($tmpFile); @unlink($metaFile); +// Optional: log the CSV script command and raw output to help debugging +@file_put_contents(__DIR__ . '/../logs/create_users_csv_output.log', date('Y-m-d H:i:s') . ' CMD: ' . $cmd . "\n" . $json . "\n\n", FILE_APPEND | LOCK_EX); + $result = null; if ($json !== '') { $decoded = json_decode($json, true); diff --git a/scripts/powershell/create_user.ps1 b/scripts/powershell/create_user.ps1 index 87f1ce9..b49ec8a 100644 --- a/scripts/powershell/create_user.ps1 +++ b/scripts/powershell/create_user.ps1 @@ -14,7 +14,8 @@ try { } # Default result -$result = @{ success = $false; message = "Unspecified error" } +$actor = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name +$result = @{ success = $false; message = "Unspecified error"; actor = $actor } # Validate if (-not $payload.samaccountname -or -not $payload.password) { diff --git a/scripts/powershell/create_users_csv.ps1 b/scripts/powershell/create_users_csv.ps1 index 66912c7..af438a3 100644 --- a/scripts/powershell/create_users_csv.ps1 +++ b/scripts/powershell/create_users_csv.ps1 @@ -44,6 +44,7 @@ try { exit 1 } +$actor = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name $results = @() $successCount = 0 $failCount = 0 @@ -92,6 +93,6 @@ foreach ($row in $items) { } } -$output = @{ success = $failCount -eq 0; message = "Created $successCount users, $failCount failures"; details = $results } +$output = @{ success = $failCount -eq 0; message = "Created $successCount users, $failCount failures"; details = $results; actor = $actor } Write-Output ($output | ConvertTo-Json -Compress) exit 0