PowerShell

PowerShell offre un accès distant au périphérique surveillé et la possibilité d'utiliser les modules PowerShell et les bibliothèques .NET qui y sont installées.

Conditions préalables

WhatsUp Gold utilise un moteur PowerShell de 32 bits (autrement dit, « x86 »). Seuls les composants logiciels enfichables PowerShell de 32 bits sont pris en charge et les composants logiciels enfichables de 64 bits ne fonctionneront pas correctement. Les composants logiciels enfichables qui fonctionnent sur les systèmes d'exploitation de 32 et 64 bits sont configurés par défaut pour les systèmes de 64 bits et doivent être configurés manuellement pour le moteur PowerShell de 32 bits afin de fonctionner correctement avec WhatsUp Gold.

Exigences en matière de connexion distante

Assurez-vous que les éléments suivants sont renseignés pour que la machine WhatsUp Gold puisse se connecter au périphérique de destination (interrogé) via PowerShell.

Configuration de l'analyseur

Les champs de configuration de cet analyseur actif incluent :

Objets et attributs d'analyseur disponibles

Les scripts d'analyseur actif PowerShell ont deux objets de session instanciés disponibles.

Obtention ou définition de propriétés à partir d'un objet contextuel

Vous pouvez extraire des valeurs pour des propriétés contextuelles au moyen de scripts d'analyseur actif PowerShell.

Syntaxe

Valeur-Propriété = Context.GetProperty("Nom-Propriété")

Context.SetProperty("Nom-Propriété","Valeur-Propriété")

Exemple

$DeviceIpAddress = $Context.GetProperty("Adresse")

$Context.SetProperty("Délai", "180")

Définition d'une chaîne de résultat et d'un indicateur d'état d'analyseur

La chaîne de résultat que vous définissez sera ajoutée à la description dans la modification d'état de l'analyseur. L'indicateur d'état défini comme étant disponible/indisponible (0, 1) détermine l'indicateur figurant sur la chronologie des changements d'état.

# Après l'obtention réussie de l'IP du périphérique, l'utiliser comme résultat et définir l'indicateur de réussite...

$Context.SetResult(0, "L'adresse IP du périphérique est : " + $DeviceIpAddress)

Propriétés d'objet contextuel

Les propriétés suivantes sont accessibles à partir de l'objet de connexion créé lors de l'exécution de PowerShell.

Nom de la propriété

Description

DeviceID

Chaîne d'identification de périphérique WhatsUp Gold.

Adresse

IP Address (Adresse IP).

Délai

Valeur du délai pour cette session (en secondes).

Propriétés d'informations d'identification d'objet contextuel

Les propriétés d'informations d'identification suivantes peuvent être définies pour PowerShell. Ces propriétés sont utiles lorsque vous devez vous connecter à d'autres services, plateformes ou applications une fois la connexion PowerShell initiale établie à l'aide de l'analyseur actif.

Nom de la propriété

Description

CredWindows:DomainAndUserid

Domaine et utilisateur des informations d'identification Windows.

CredWindows:Password

Définit le mot de passe Windows.

CredSnmpV1:ReadCommunity

Chaîne de communauté en lecture SNMPv1.

CredSnmpV1:WriteCommunity

Chaîne de communauté en écriture SNMPv1.

CredSnmpV2:ReadCommunity

Chaîne de communauté en lecture SNMPv2.

CredSnmpV2:WriteCommunity

Chaîne de communauté en écriture SNMPv2.

CredSnmpV3:AuthPassword

Mot de passe SNMPv3.

CredSnmpV3:AuthProtocol(valeur-entière)

Protocole d'authentification SNMPv3.
Valeurs : 1 = aucun, 2 = MD5, 3 = SHA

CredSnmpV3:EncryptProtocol(valeur-entière)

Valeurs entières possibles :

  • 1 = Aucun
  • 2 = DES56
  • 3 = AES128
  • 4 = AES192
  • 5 = AES256
  • 6 = THREEDES

CredSnmpV3:EncryptPassword

Mot de passe crypté SNMPv3.

CredSnmpV3:Username

Utilisateur SNMPv3.

CredSnmpV3:Context

Contexte SNMPv3.

CredADO:Password

Mot de passe ADO.

CredADO:Username

Nom d'utilisateur ADO.

CredSSH:Username

Nom d'utilisateur SSH.

CredSSH:Password

Mot de passe SSH.

CredSSH:EnablePassword

Indicateur de mot de passe activé.

CredSSH:Port

Port SSH si différent du port par défaut.

CredSSH:Timeout

Délai de la session SSH.

CredVMware:Username

Nom d'utilisateur VMware.

CredVMware:Password

Mot de passe VMware.

CredTelnet:Timeout

Délai de la connexion Telnet.

CredTelnet:Port

Port Telnet (si différent du port par défaut).

CredTelnet:Username

Nom d'utilisateur Telnet.

CredTelnet:Password

Mot de passe Telnet.

CredJMX:Username

Nom d'utilisateur des extensions de gestion Java.

CredJMX:Password

Mot de passe des extensions de gestion Java.

CredSMIS:Timeout

Délai de gestion de stockage.

CredSMIS:Port

Port de gestion de stockage.

CredSMIS:Protocol

 

Protocole de gestion de stockage.

CredSMIS:Username

 

Nom d'utilisateur de gestion de stockage.

CredSMIS:Password

 

Mot de passe de gestion de stockage.

CredAWS:AccessKeyID

 

ID de compte des services Web Amazon.

CredAWS:SecureAccessKey

 

Clé d'accès aux services Web Amazon.

CredAzure:TenantID

 

ID d'abonnement Azure.

CredAzure:ClientID

 

ID de compte de client Azure.

CredAzure:SecureKey

Clé de compte Azure.

CredRestAPI : nom d'utilisateur

Nom d'utilisateur nécessaire pour vous authentifier à un périphérique.

CredRestAPI : mot de passe

Mot de passe associé au nom d'utilisateur.

CredUbiquiti : nom d'utilisateur

Nom d'utilisateur utilisé pour s'authentifier auprès du contrôleur Ubiquiti Unifi.

CredUbiquiti : mot de passe

Mot de passe associé au nom d'utilisateur.

CredUbiquiti : port

Numéro de port utilisé par le contrôleur Ubiquiti Unifi pour répondre aux demandes de l'API.

Exemple : vérification de l'exécution d'un service

Créez un analyseur actif PowerShell qui indique l'état Disponible uniquement si un client DNS est en cours d'exécution en utilisant les informations d'identification stockées.

# Périphérique à interroger

$DeviceIpAddress = $Context.GetProperty("Adresse")

# Définir directement le nom de l'ordinateur, ou...

# $CompName = mydb02.corpnet.exemple.com (par exemple)

# ...l'obtenir par WMI...

$WmiRes = Invoke-Command -NomOrdinateur $DeviceIpAddress -ScriptBlock { Get-WmiObject Win32_Computersystem }

$CompName = $WMIRes.PSComputerName

# Exécuter la commande sur un périphérique distant

$PsResult = Invoke-Command -NomOrdinateur $DeviceName -ScriptBlock { Get-Service | where { $_.Name -match "Dnscache" } }

# Vérifier la condition d'« exécution »

if ($PsResult.Status -match 'Running') {

$RespondingMessage = "Le processus'" + $processName + "' exécuté sur " + $DeviceIpAddress + " répond."

$Context.SetResult(0, $RespondingMessage )

} else {

$NotRunningMessage = "Le processus '" + $processName + "' exécuté sur " + $DeviceIpAddress + " ne répond pas."

$Context.SetResult(1, $NotRunningMessage )

}

See Also

Analyseurs actifs

Script actif (Actif)

Onduleur APC (actif)

État de l'homologue BGP

Analyseur de ressources basées sur le cloud

DNS

Adresse de courrier électronique

Exchange 2003

Exchange

Ventilateur

Contenu de fichier

File Properties (Propriétés de fichier)

Dossier

FTP

HTTP Content (Contenu HTTP)

JMX (Actif)

Analyseur actif d'état de périphérique Meraki

Network Statistics (Statistiques réseau)

Service

Gigue inter-arrivée ping

Ping

Alimentation électrique

Imprimante

Processus

SMI-S

SNMP étendu

SNMP (actif)

Requête SQL (active)

SQL Server

SSH (Actif)

Certificat SSL

Analyseur d'intégrité du contrôleur de stockage

TCPIP

Telnet

Température

VoIP

Radio WAP

Au format WMI

WMI

Définition des propriétés d'interrogation

Appliquer une action à l'analyseur

Utiliser des stratégies d'action

Stratégie d'action implicite