update fix deadcode, security
This commit is contained in:
@@ -57,19 +57,6 @@ class PowerShellService
|
||||
}
|
||||
}
|
||||
|
||||
public function loginSSH(): bool
|
||||
{
|
||||
$conn = $this->LoginAuth();
|
||||
|
||||
if ($conn) {
|
||||
Log::info("✅ Connected to vCenter via SSH successfully");
|
||||
return true;
|
||||
}
|
||||
|
||||
Log::error("❌ Failed to connect to vCenter via SSH");
|
||||
return false;
|
||||
}
|
||||
|
||||
public function runPsCommand(string $psCommand): string
|
||||
{
|
||||
$auth = $this->LoginAuth();
|
||||
@@ -202,34 +189,6 @@ PS;
|
||||
return "Error: " . $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
public function resetGuestPasswordViaPs1(string $vmName, string $guestUser, string $guestPassword, string $newPassword, string $targetUser = 'Administrator'): array|string
|
||||
{
|
||||
$psFile = "C:\\CLISave\\AssignIP\\SetGuestPwd.ps1";
|
||||
|
||||
$args = ' -VMName ' . PowerShellEscaper::singleQuote($vmName);
|
||||
$args .= ' -GuestUser ' . PowerShellEscaper::singleQuote($guestUser);
|
||||
$args .= ' -GuestPassword ' . PowerShellEscaper::singleQuote($guestPassword);
|
||||
$args .= ' -TargetUser ' . PowerShellEscaper::singleQuote($targetUser);
|
||||
$args .= ' -NewPassword ' . PowerShellEscaper::singleQuote($newPassword);
|
||||
|
||||
$cmd = '& ' . PowerShellEscaper::singleQuote($psFile) . "{$args} | Out-String";
|
||||
|
||||
$raw = $this->CommandRSP($cmd);
|
||||
if ($raw === 'Login_Fail' || $raw === false || $raw === null) {
|
||||
return "Login_Fail";
|
||||
}
|
||||
|
||||
$trim = trim($raw);
|
||||
$data = json_decode($trim, true);
|
||||
if (json_last_error() !== JSON_ERROR_NONE) {
|
||||
if (preg_match('/(\{.*\}|\[.*\])/s', $trim, $m)) {
|
||||
$data = json_decode($m[1], true);
|
||||
}
|
||||
}
|
||||
|
||||
return $data ?: $raw;
|
||||
}
|
||||
|
||||
public function changeRDPPortWindows(string $vmName, string $guestUser, string $guestPassword, string $newPort): array|string
|
||||
{
|
||||
@@ -328,27 +287,4 @@ PS;
|
||||
|
||||
return (string) $this->CommandRSP($Command);
|
||||
}
|
||||
|
||||
public function getWindowsRdpPort(string $vmwareId, string $guestUser, string $guestPassword): ?int
|
||||
{
|
||||
$ps = "(Get-ItemProperty 'HKLM:\\System\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp' -Name PortNumber).PortNumber";
|
||||
|
||||
$cmd = 'Invoke-VMScript -VM ' . PowerShellEscaper::singleQuote($vmwareId)
|
||||
. ' -ScriptText ' . PowerShellEscaper::singleQuote($ps)
|
||||
. ' -ScriptType Powershell'
|
||||
. ' -GuestUser ' . PowerShellEscaper::singleQuote($guestUser)
|
||||
. ' -GuestPassword ' . PowerShellEscaper::singleQuote($guestPassword);
|
||||
|
||||
$output = $this->CommandRSP($cmd);
|
||||
|
||||
if (!$output || str_contains($output, 'Login_Fail')) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (preg_match('/\b(\d{2,5})\b/', $output, $m)) {
|
||||
return (int) $m[1];
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user