我正在为SCOM 2012 SP1定制一个管理包,其中有一个监视器。该监视器基于Microsoft.Windows.PowerShellTriggerOnlyProbe模块和WMI的powershell脚本查询到远程非域服务器。此脚本应该检查远程服务器上的特定进程。
С或响应脚本的р艺术:
$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()
}
当我从SCOM的操作帐户下的powershell控制台运行脚本时,它的工作非常完美,但是当我在ManagementPack中导入它时,我得到了一个错误:$ErrorMSG中的"Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"
。
在远程服务器上使用本地管理凭据。
远程服务器上没有powershell,所以我不能使用powershell远程处理,唯一的方法是使用WMI。求你了救命!
发布于 2017-07-12 19:22:44
您需要尝试以系统的形式运行脚本。这是如果代理使用默认本地系统帐户运行时应该需要的唯一测试。
https://stackoverflow.com/questions/20020175
复制相似问题