Я делаю пользовательский пакет управления для SCOM 2012 SP1, и в нем есть монитор. Монитор основан на модуле Microsoft.Windows.PowerShellTriggerOnlyProbe и запросах сценария PowerShell WMI к удаленному серверу вне домена. Этот скрипт должен проверять определенный процесс на удаленном сервере.
Соответствующая часть скрипта:
$user = "username"
$password = ConvertTo-SecureString "password" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $user,$password
try {
Get-WmiObject win32_Process -Impersonation Impersonate -Authentication Packet -credential $cred -ComputerName "$serverIP" | Select Name | Where-Object {$_.Name -eq "$Process"}
}
Catch {
$ErrorMSG = $_.Exception.Message.ToString()
}
Скрипт работает отлично, когда я запускаю его из консоли powershell под учетной записью действия SCOM, но когда я импортирую его в ManagementPack, я получаю эту ошибку: "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"
в $ErrorMSG.
Использованы учетные данные локального администратора на удаленном сервере.
На удаленном сервере нет powershell, поэтому я не могу использовать удаленное взаимодействие powershell, единственный способ — использовать WMI. Пожалуйста помоги!