Cette entrée est un "synchronisateur" puissant et "hybride" qui vous permet d'utiliser des scripts PowerShell pour remplir des coffres, synchroniser des descriptions, appliquer des modèles et plus encore. Vous pouvez synchroniser à partir de sources pour lesquelles nous n'avons pas de synchronisateur dédié. Il utilise des classes de proxy pour interagir avec des objets de connexion riches de Remote Desktop Manager.
Fournir l'hôte, le nom, la description et le groupe tout en utilisant le type RDP par défaut. Utiliser alternativement un modèle pour promouvoir la réutilisation et la standardisation. Voici un exemple :
# obtain or generate your list of sessions to create, here we assume a $data table
# has been filled by querying an external source.
Foreach($row in $data)
{
# create a new session, the only mandatory property is 'Name' so we require it as a parameter in the Add method
$session = $RDM.Add($row.Name)
# set the other properties using $session.<property>
$session.Host = $row.Name
$session.Description = $row.Description
$session.Group = $row.Group # it can be multiple levels i.e. 'Folder1\Folder1a'
}
Pour définir les identifiants, utiliser : $session.SetCredentials($row.Username, $row.Password, $row.Domain);.
Pour définir uniquement le mot de passe, utiliser : $session.SetPassword($row.Password);.
Le mot de passe ne peut pas être défini en utilisant $session.Password.
Voici des champs couramment utilisés pour référence rapide :
string CustomStatus
string Description
bool Encrypt
string Group
string Host
bool IncludeInFavorite
string Name
bool OpenEmbedded
bool ShowInTrayIcon
int SortPriority
<Color>#FF0000</Color>
string GroupTab
string Status
string TabTitle
En utilisant la méthode décrite dans la rétro-ingénierie de la structure d'une entrée, créer une entrée avec toutes les informations requises dans les champs appropriés et observer comment assigner des valeurs en utilisant PowerShell.
Par exemple, voici une entrée Hôte pour laquelle de nombreux champs de la section Vue – Actif ont été remplis:
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfConnection>
<Connection>
<AppVersion>~SET AUTOMATICALLY~</AppVersion>
<Color>#FF0000</Color>
<ConnectionType>Host</ConnectionType>
<CreatedBy>~SET AUTOMATICALLY~</CreatedBy>
<CreationDateTime>~SET AUTOMATICALLY~</CreationDateTime>
<Description>phDescription</Description>
<GroupTab>phTabGroupName</GroupTab>
<ID>~SET AUTOMATICALLY~</ID>
<Name>phName</Name>
<OpenEmbedded>true</OpenEmbedded>
<SortPriority>100</SortPriority>
<Status>{123A44CB-7EDC-4ecb-926B-031793668148}</Status>
<TabTitle>phTabPageTitle</TabTitle>
<HostDetails>
<Host>phName</Host>
</HostDetails>
<MetaInformation>
<AssetSubType>Desktop</AssetSubType>
<Domain>metadomain</Domain>
<IP>metaIP</IP>
<Keywords>MyTag1</Keywords>
<MAC>metamac</MAC>
<MachineName>metaHost</MachineName>
<NetworkDHCPRange>MetaDHCPRange</NetworkDHCPRange>
<NetworkDHCPServer>MetaDHCPServer</NetworkDHCPServer>
<NetworkFirewallZone>MetaFirewall</NetworkFirewallZone>
<NetworkGateway>MetaGateway</NetworkGateway>
<NetworkIPRange>metaIPRange</NetworkIPRange>
<NetworkSubnet>metaSubnet</NetworkSubnet>
<NetworkVLANID>MetaVlan</NetworkVLANID>
<OS>metaos</OS>
</MetaInformation>
</Connection>
</ArrayOfConnection>
Vous pouvez voir quelques objets "complexes", à savoir HostDetails et MetaInformation. Le premier est spécifique au type d'entrée Hôte, et le second est un conteneur pour tout ce qui se trouve dans la section Vue – Actif. Ajouter le nom de la section comme préfixe pour écrire dans les champs internes.
Foreach($row in $data)
{
$session = $RDM.Add($row.Name)
$session.Kind = "Host"
$session.HostDetails.Host = $row.Name
$session.MetaInformation.AssetSubType = "Desktop"
$session.MetaInformation.IP = "10.10.1.25"
}
Notez que les propriétés
NameetHostDetails.Hostpartagent la même valeur. C'est une caractéristique de l'entrée Hôte, et il faut faire attention en travaillant avec d'autres types d'entrée également.Certains champs, comme
MetaInformation.AssetSubTypesont liés à une énumération et doivent contenir la chaîne exacte. D'autres, commeMetaInformation.NetworkGatewaysont de simples chaînes et peuvent contenir n'importe quoi. Voilà le défi de regarder le XML. N'hésitez pas à contacter notre équipe de soutien si vous avez d'autres questions.