2009-06-16 11 views
1

J'ai des problèmes avec Get-WmiObject et l'utilisation de cet objet. Dans le cas, je me connecte à un ordinateur distant - qui n'est pas dans AD, mais sur Internet.Powershell - appelant des objets WMI distants - Erreur RPC HRESULT: 0x800706BA (serveur RPC non disponible)

J'utilise les informations d'identification et je suis en mesure de récupérer la liste des classes WMI ou objet (pour être précis, je veux travailler avec Win32_Process) via des commandes:

$credential = Get-Credential 
$class = Get-WmiObject -list -computer "xyz" -credential $credential | Where-Object {$_.Name -eq "Win32_Process" } 
$object = Get-WmiObject -class Win32_Process -computer "xyz" -credential $credential 

Quand je change le nom d'hôte ou des informations d'identification, alors j'ai eu et erreur de "RPC non disponible", ou un accès non autorisé. Par conséquent, je suppose que ce serveur RPC et la récupération des objets WMI & classes fonctionne. Mais quand je les récupère, je ne suis pas capable de travailler avec eux. Dans tous les cas de l'essayer (méthode d'appel ou Get-membres), il jette des cette erreur:

"Server RPC není k dispozici. (Výjimka na základě hodnoty HRESULT: 0x800706BA)" 
(It's a czech localization of: Server RPC is not available. (Exception based on the value of HRESULT: 0x800706BA) 

Je n'ai trouvé aucun autre exemple d'erreur semblable. J'utilise PowerShell 1.0 sur Vista Ent. machine. La machine cible est Win2003 R2 (le serveur de produit sera Win Serv Serveur 2008 - pas encore testé).

J'apprécierais n'importe quel conseil. Je vous remercie.

+0

Pour clarifier, vous pouvez obtenir avec succès les variables $ et $ object et les écrire en sortie, mais l'exécution d'une méthode sur eux vous donne cette erreur? Pouvez-vous être plus précis dans quelle (s) méthode (s) vous tentez d'appeler? –

Répondre

1

I got and error of "RPC not available", or unauthorized access. Therefore I assume, that RPC server and retrieving of WMI objects & classes works.

Malheureusement, ce n'est pas une hypothèse sûre. Si vous essayez de vous connecter via WMI à un espace de noms sur une machine inexistante, par ex. foo ("\ foo \ root \ cimv2"), vous obtiendrez exactement cette erreur:

0x800706BA ("The RPC server is unavailable.") 

En plus:

I'm connecting to remote computer - which is not in AD, but in the internet.

Notez que WMI sur Internet va être difficile à obtenir travail. Même si vous pouvez exécuter une commande ping sur la machine cible, cela ne signifie pas que vous serez en mesure de vous connecter via WMI. DCOM utilise un tas de ports que le pare-feu, les routeurs NAT, etc. bloqueront volontiers. Si vos mêmes appels fonctionnent pour un hôte local, mais pas sur Internet, vous avez un problème. Si vous contrôlez les pare-feu, vous pouvez envisager de restreindre les ports utilisés par DCOM, puis d'ouvrir ces ports. Si vous n'utilisez que l'Internet sauvage, peut-être que vous voudrez peut-être envisager de mettre en place un VPN, ce qui, je pense, devrait éliminer le problème «Internet»?