Product Documentation

SDKs and APIs

Feb 14, 2018

XenApp und XenDesktop Remote PowerShell SDK

Das XenApp und XenDesktop Remote PowerShell SDK automatisiert komplexe und repetitive Aufgaben. Mit ihm kann die XenApp und XenDesktop-Umgebung ohne Studio eingerichtet und verwaltet werden.

Die unterstützten Snap-Ins sind im Abschnitt "Einschränkungen" unten aufgeführt. Der Abschnitt enthält zudem eine Liste der deaktivierten Cmdlets.

Unterschiede zum XenApp und XenDesktop Delivery Controller SDK:

Bei vollständig von Administratoren des Kunden installierten und verwalteten XenApp und XenDesktop-Bereitstellungen führen die Administratoren Cmdlets und Skripts in einer Site aus, die sowohl VDAs als auch Delivery Controller in einer gemeinsamen Domänenstruktur enthält. Beim XenApp und XenDesktop Service sind die VDAs und Controller hingegen auf einen Ressourcenstandort und eine Steuerungsebene aufgeteilt. Aufgrund dieser Aufteilung funktioniert das ursprüngliche XenApp und XenDesktop PS SDK in einer XenApp und XenDesktop Service-Umgebung nicht, denn es kann die Grenze zwischen sicherem Ressourcenstandort und Steuerungsebene nicht passieren.

Die Lösung ist das XenApp und XenDesktop Remote PS SDK. Wenn das Remote PS SDK am Ressourcenstandort ausgeführt wird, greift es auf die Steuerungsebene zu, als sei diese lokal, und bietet dieselbe Funktionalität wie eine einzelne XenApp und XenDesktop-Site. Es gibt nur die niedrigste, nicht sichtbare Kommunikationsschicht, die entweder für den Betrieb in einer einzelnen lokalen Site oder in der Cloud-Umgebung optimiert ist. Die Cmdlets sind die gleichen und die meisten bestehenden Skripts funktionieren unverändert.

Das Cmdlet "Get-XdAuthentication" bietet die Berechtigung zum Passieren der Grenze zwischen sicherem Ressourcenstandort und Steuerungsebene. Standardmäßig fordert Get-XdAuthentication die Benutzer zur Eingabe von CAS-Anmeldeinformationen auf, was einmal pro PowerShell-Sitzung erforderlich ist. Alternativ kann der Benutzer ein mithilfe eines in der Citrix Cloud-Konsole erstellten sicheren Clients für den API-Zugriff ein Authentifizierungsprofil angeben. In beiden Fällen bleiben die Sicherheitsinformationen für die Verwendung in nachfolgenden PS SDK-Aufrufen erhalten. Wenn das Cmdlet nicht explizit ausgeführt wird, wird es vom ersten PS SDK-Cmdlet aufgerufen.

Installieren und Verwenden des Remote PowerShell SDKs

Installieren

Vergewissern Sie sich, dass auf der Maschine PowerShell 3.0 oder höher verfügbar ist.

  1. Laden Sie das Installationsprogramm unter http://download.apps.cloud.com/CitrixPoshSdk.exe herunter. Das Paket enthält eine x86- und eine x64-Implementierung.
  2. Suchen Sie im heruntergeladenen Ordner das Installationsprogramm und führen Sie es aus.
  3. Folgen Sie den Dialogfeldern und führen Sie die Installation durch.

Installationsprotokolle werden in %TEMP%\CitrixLogs\CitrixPoshSdk erstellt. Protokolle können beim Beheben von Installationsproblemen helfen.

Verwenden

Führen Sie das XenApp und XenDesktop Remote PS SDK auf einem Computer in der Domäne innerhalb des Ressourcenstandorts aus:

  • Öffnen Sie eine PowerShell-Eingabeaufforderung. Das Programm muss nicht als Administrator ausgeführt werden.
  • Fügen Sie die Citrix Snapins hinzu: asnp citrix *.
  • Sie können sich explizit über das Cmdlet "Get-XdAuthentication" authentifizieren. Führen Sie alternativ den ersten XenApp und XenDesktop PS SDK-Befehl aus, durch den Sie zur gleichen Authentifizierung wie bei Get-XdAuthentication aufgefordert werden.
  • Zum Umgehen der Authentifizierungsaufforderung können Sie mithilfe eines in der Citrix Cloud-Konsole erstellten sicheren Clients und des Cmdlets "Set-XdCredentials" ein Standardauthentifizierungsprofil erstellen.
  • Fahren Sie mit der Ausführung von PS SDK-Cmdlets oder PS SDK-Automatisierungsskripts fort. Siehe Beispiel unten.

Citrix rät davon ab, die Cmdlets dieses SDKs auf Cloud Connectors auszuführen. Am SDK-Betrieb sind die Cloud Connectors nicht beteiligt.

Deinstallieren

Wählen Sie im Windows-Feature zum Entfernen oder Ändern von Programmen XenApp und XenDesktop Remote PowerShell SDK. Klicken Sie mit der rechten Maustaste und wählen Sie Deinstallieren. Folgen Sie den Dialogfeldern.

Beispiel

Zu den häufigen Aktivitäten gehören das Einrichten von Maschinenkatalogen, Anwendungen und Benutzern. Siehe Beispielskript unten.

Beispielskript für häufige Aktivitäten Kopieren

$users = "xd.local\Domain Users"
$TSVDACatalogName = "TSVDA"

$TSVDADGName = "TSVDA"

$TSVDAMachineName = "xd\ds-tsvda2"

#Create TSVDA Catalog

$brokerUsers = New-BrokerUser -Name $users

$catalog = New-BrokerCatalog -Name $TSVDACatalogName -AllocationType "Random" -Description $TSVDACatalogName -PersistUserChanges "OnLocal" -ProvisioningType "Manual" -SessionSupport "MultiSession" -MachinesArePhysical $true

#Add TSVDA Machine to Catalog

$BrokeredMachine = New-BrokerMachine -MachineName $TSVDAMachineName -CatalogUid $catalog.uid

#Create new desktops & applications delivery group

$dg = New-BrokerDesktopGroup -Name $TSVDADGName -PublishedName $TSVDADGName -DesktopKind "Shared" -SessionSupport "MultiSession" -DeliveryType DesktopsAndApps -Description $TSVDADGName

#Create notepad application

New-BrokerApplication -ApplicationType HostedOnDesktop -Name "Notepad" -CommandLineExecutable "notepad.exe" -DesktopGroup $dg

#Assign users to desktops and applications

New-BrokerEntitlementPolicyRule -Name $TSVDADGName -DesktopGroupUid $dg.Uid -IncludedUsers $brokerUsers -description $TSVDADGName

New-BrokerAccessPolicyRule -Name $TSVDADGName -IncludedUserFilterEnabled $true -IncludedUsers $brokerUsers -DesktopGroupUid $dg.Uid -AllowedProtocols @("HDX","RDP")

New-BrokerAppEntitlementPolicyRule -Name $TSVDADGName -DesktopGroupUid $dg.Uid -IncludedUsers $brokerUsers -description $TSVDADGName

#Add machine to delivery group

Add-BrokerMachine -MachineName $TSVDAMachineName -DesktopGroup $dg

Einschränkungen

Die folgenden PowerShell-Snap-Ins von XenApp und XenDesktop werden in dieser Version unterstützt:

  • Broker
  • Active Directory-Identität
  • Maschinenerstellung
  • Konfiguration
  • Konfigurationsprotokollierung
  • Host
  • Delegierte Administration
  • Analyse

Einzelheiten zu Cmdlets in diesen Snap-Ins finden Sie unter XenApp und XenDesktop SDK.

Nach der Authentifizierung bleibt der Remotezugriff in der aktuellen PowerShell-Sitzung 24 Stunden lang gültig. Nach Ablauf dieser Zeit müssen Sie Ihre Anmeldeinformationen eingeben.

Das XenApp und XenDesktop Remote PS SDK muss auf einem Computer im gleichen Ressourcenstandort ausgeführt werden.

Installieren Sie dieses SDK nicht auf einem on-premises Delivery Controller.

Die folgenden Cmdlets sind bei Remotevorgängen deaktiviert, um die Integrität und Sicherheit der Cloudsteuerungsebene zu gewährleisten.

Snap-in Cmdlets

Citrix.ADIdentity.Admin.V2

Acct:CopyIdentityPool

Acct:GetDBConnection

Acct:GetDBSchema

Acct:GetDBVersionChangeScript

Acct:GetInstalledDBVersion

Acct:RemoveServiceMetadata

Acct:ResetServiceGroupMembership

Acct:SetDBConnection

Acct:SetServiceMetadata

Acct:TestDBConnection

Citrix.Analytics.Admin.V1

Analytics:GetDBConnection

Analytics:GetDBSchema

Analytics:GetDBVersionChangeScript

Analytics:GetInstalledDBVersion

Analytics:ImportDataDefinition

Analytics:RemoveServiceMetadata

Analytics:ResetServiceGroupMembership

Analytics:SetDBConnection

Analytics:SetServiceMetadata

Analytics:SetSite

Analytics:TestDBConnection

Citrix.DelegatedAdmin.Admin.V1

Admin:AddPermission

Admin:AddRight

Admin:GetAdministrator

Admin:GetDBConnection

Admin:GetDBSchema

Admin:GetDBVersionChangeScript

Admin:GetInstalledDBVersion

Admin:ImportRoleConfiguration

Admin:NewAdministrator

Admin:NewRole

Admin:NewScope

Admin:RemoveAdministrator

Admin:RemoveAdministratorMetadata

Admin:RemovePermission

Admin:RemoveRight

Admin:RemoveRole

Admin:RemoveRoleMetadata

Admin:RemoveScope

Admin:RemoveScopeMetadata

Admin:RemoveServiceMetadata

Admin:ResetServiceGroupMembership

Admin:SetAdministrator

Admin:SetAdministratorMetadata

Admin:SetDBConnection

Admin:SetRole

Admin:SetRoleMetadata

Admin:SetScope

Admin:SetScopeMetadata

Admin:SetServiceMetadata

Admin:TestDBConnection

Citrix.Broker.Admin.V2

Broker:GetDBConnection

Broker:GetDBSchema

Broker:GetDBVersionChangeScript

Broker:GetInstalledDBVersion

Broker:GetLease

Broker:NewMachineConfiguration

Broker:RemoveControllerMetadata

Broker:RemoveLease

Broker:RemoveLeaseMetadata

Broker:RemoveMachineConfigurationMetadata

Broker:RemoveMachineConfiguration

Broker:RemoveSiteMetadata

Broker:RemoveUserFromApplication

Broker:ResetLicensingConnection

Broker:ResetServiceGroupMembership

Broker:SetControllerMetadata

Broker:SetDBConnection

Broker:SetLeaseMetadata

Broker:SetMachineConfiguration

Broker:SetMachineConfigurationMetadata

Broker:SetSite

Broker:SetSiteMetadata

Broker:TestDBConnection

Broker:TestLicenseServer

Broker:UpdateBrokerLocalLeaseCache

Citrix.Configuration.Admin.V2

Config:ExportFeatureTable

Config:GetDBConnection

Config:GetDBSchema

Config:GetDBVersionChangeScript

Config:GetInstalledDBVersion

Config:GetServiceGroup

Config:ImportFeatureTable

Config:RegisterServiceInstance

Config:RemoveRegisteredServiceInstanceMetadata

Config:RemoveServiceGroup

Config:RemoveServiceGroupMetadata

Config:RemoveServiceMetadata

Config:RemoveSiteMetadata

Config:ResetServiceGroupMembership

Config:SetDBConnection

Config:SetRegisteredServiceInstance

Config:SetRegisteredServiceInstanceMetadata

Config:SetServiceGroupMetadata

Config:SetServiceMetadata

Config:SetSite

Config:SetSiteMetadata

Config:TestDBConnection

Config:UnregisterRegisteredServiceInstance

Citrix.Host.Admin.V2

Hyp:GetDBConnection

Hyp:GetDBSchema

Hyp:GetDBVersionChangeScript

Hyp:GetInstalledDBVersion

Hyp:RemoveServiceMetadata

Hyp:ResetServiceGroupMembership

Hyp:SetDBConnection

Hyp:SetServiceMetadata

Hyp:TestDBConnection

Citrix.ConfigurationLogging.Admin.V1

Log:ExportReport

Log:GetDBConnection

Log:GetDBSchema

Log:GetDBVersionChangeScript

Log:GetHighLevelOperation

Log:GetInstalledDBVersion

Log:GetLowLevelOperation

Log:GetSummary

Log:RemoveOperation

Log:RemoveServiceMetadata

Log:RemoveSiteMetadata

Log:ResetDataStore

Log:ResetServiceGroupMembership

Log:SetDBConnection

Log:SetServiceMetadata

Log:SetSite

Log:SetSiteMetadata

Log:TestDBConnection

Citrix.MachineCreation.Admin.V2

Prov:GetDBConnection

Prov:GetDBSchema

Prov:GetDBVersionChangeScript

Prov:GetInstalledDBVersion

Prov:GetServiceConfigurationData

Prov:RemoveServiceConfigurationData

Prov:RemoveServiceMetadata

Prov:ResetServiceGroupMembership

Prov:SetDBConnection

Prov:SetServiceConfigurationData

Prov:SetServiceMetadata

Prov:TestDBConnection

Citrix.EnvTest.Admin.V1

EnvTest:GetDBConnection

EnvTest:GetDBSchema

EnvTest:GetDBVersionChangeScript

EnvTest:GetInstalledDBVersion

EnvTest:RemoveServiceMetadata

EnvTest:ResetServiceGroupMembership

EnvTest:SetDBConnection

EnvTest:SetServiceMetadata

EnvTest:TestDBConnection

Citrix.Monitor.Admin.V1

Monitor:GetConfiguration

Monitor:GetDBConnection

Monitor:GetDBSchema

Monitor:GetDBVersionChangeScript

Monitor:GetDataStore

Monitor:GetDataStore

Monitor:GetInstalledDBVersion

Monitor:RemoveServiceMetadata

Monitor:ResetDataStore

Monitor:ResetServiceGroupMembership

Monitor:SetConfiguration

Monitor:SetDBConnection

Monitor:SetServiceMetadata

Monitor:TestDBConnection

Citrix.Storefront.Admin.V1

Sf:BuildCluster

Sf:GetClusters

Sf:GetDBConnection

Sf:GetDBSchema

Sf:GetDBVersionChangeScript

Sf:GetInstalledDBVersion

Haftungsausschluss

Diese Software bzw. der Mustercode wird wie besehen und ohne Zusicherungen, Gewährleistungen und Bedingungen zur Verfügung gestellt. Verwendung, Modifizierung und Verteilung erfolgen auf eigene Gefahr. CITRIX SCHLIESST SÄMTLICHE AUSDRÜCKLICHEN, STILLSCHWEIGENDEN, GESETZLICHEN ODER ANDERWEITIGEN GEWÄHRLEISTUNGEN AUS. HIERZU ZÄHLEN U. A. DIE HAFTUNG FÜR RECHTSMÄNGEL, DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT UND DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK, DIE RECHTSGEWÄHRLEISTUNG UND DIE GEWÄHRLEISTUNG DER NICHTVERLETZUNG. Unbeschadet der Allgemeingültigkeit des vorstehend Gesagten anerkennen Sie und erklären sich einverstanden, dass (a) die Software bzw. der Mustercode Fehler, Mängel oder andere Probleme aufweisen kann, die zu Datenverlusten oder Eigentumsbeschädigung führen können, (b) es ggf. nicht möglich ist, die Software bzw. den Mustercode vollfunktional zu verwenden und (c) Citrix ohne Ankündigung und oder Haftung die aktuelle Version und/oder zukünftige Versionen die Software bzw. des Mustercodes zurückziehen kann. Die Software bzw. der Mustercode darf unter keinen Umständen im Rahmen risikobehafteter Aktivitäten, zum Beispiel bei der Lebenserhaltung oder für Sprengungen, eingesetzt werden. CITRIX UND VON CITRIX ABHÄNGIGE UNTERNEHMEN SOWIE REPRÄSENTANTEN VON CITRIX ÜBERNEHMEN IM RAHMEN VERTRAGLICHER VERPFLICHTUNGEN ODER JEGLICHER ANDERER HAFTUNGSTHEORIE KEINERLEI HAFTUNG FÜR SCHÄDEN, DIE DURCH DIE VERWENDUNG DER SOFTWARE BZW. DES MUSTERCODES ENTSTEHEN. DAZU GEHÖREN DIREKTE UND SPEZIELLE SCHÄDEN, NEBENSCHÄDEN, SCHADENSERSATZ MIT STRAFWIRKUNG, FOLGESCHÄDEN UND ANDERE SCHÄDEN, SELBST WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE. Sie erklären sich damit einverstanden, Citrix gegen jegliche Ansprüche, die aus einer Verwendung, Modifikation oder Verteilung des Codes durch Sie entstehen, zu verteidigen und schadlos zu halten.

XenApp und XenDesktop Service-API: Technische Vorschau der Katalogservice-APIs

Eine technische Vorschau der Katalogservice-APIs von XenApp und XenDesktop Service finden Sie unter https://developer.cloud.com/_xenapp_and_xendesktop_service/xenapp_and_xendesktop_service.html

Überwachungsdienst-OData-API

Zusätzlich zur Anzeige von Verlaufsdaten über die Überwachungsfunktionen können Sie Daten mit der API des Überwachungsdiensts abfragen. Sie können die API für Folgendes verwenden:

  • Analysieren historischer Trends für die Planung
  • Durchführen einer eingehenden Problembehandlung bei Verbindungs- und Maschinenfehlern
  • Extrahieren von Informationen für die Eingabe in andere Tools und Prozesse, z. B. wenn PowerPivot-Tabellen in Microsoft Excel für die Anzeige von Daten auf verschiedene Weise verwendet werden
  • Erstellen einer benutzerdefinierten Benutzeroberfläche auf der Basis der von der API bereitgestellten Daten

Weitere Informationen finden Sie unter Überwachungsdienst-OData-API.Anweisungen zum Zugriff auf die Überwachungsdienst-API finden Sie unter Access Monitor Service data using the OData v4 endpoint in Citrix Cloud.