- Erste Schritte
- Anforderungen
- Best Practices
- Installation
- Wird aktualisiert
- Identity Server
- Fehlerbehebung bei Startfehlern
Veröffentlichen auf Identity Server
In der folgenden Tabelle sind alle Parameter beschrieben, die mit dem Skript Publish-IdentityServer.ps1 verwendet werden können.
| Parameter | Beschreibung |
|---|---|
|
|
Obligatorisch. Gibt den Typ des Szenarios an, das Sie starten möchten. Die folgenden Optionen sind verfügbar:
|
|
|
Mandatory. The Azure service principal ID. Please note that the used service principal needs to be assigned the Contributor role to the app service at the subscription scope. |
|
|
Obligatorisch. Das Azure-Tokenkennwort für die Dienstprinzipal-ID. |
|
|
Obligatorisch. Die Azure-Abonnement-ID für den App Service, der Orchestrator hostet. |
|
|
Obligatorisch. Die Azure-Mandanten-ID. |
|
|
Obligatorisch. Die URL der Orchestrator-Instanz. |
|
|
Obligatorisch. Die URL des Identity Servers. /identity in lowercase. Example: https://[identity_server]/identity
|
|
|
Dieser Parameter ist eine Hashtabelle, die die folgenden Werte enthält:
|
|
|
Dieser Parameter ist eine Hashtabelle, die die folgenden Werte enthält:
|
|
|
Obligatorisch. Geben Sie den vollständigen Pfad oder relativen Pfad des Archivs |
|
|
Obligatorisch. Geben Sie den vollständigen Pfad oder relativen Pfad des Archivs |
|
|
Optional. Kann nur verwendet werden, wenn sich der Bereitstellungs-Slot des App Service für Identity Server von dem durch Azure festgelegten Standard-Produktionsslot von App-Service unterscheidet. |
|
|
Optional. Wenn vorhanden, wird die Anwendung vor der Bereitstellung angehalten und nach Abschluss der Bereitstellung gestartet. |
|
|
Optional. Wenn vorhanden, wird die Bereitstellung ohne Benutzerbestätigung fortgesetzt. |
|
|
Optional: Ermöglicht das Festlegen eines Verzeichnisses, in dem benötigte Dateien heruntergeladen und entpackt werden. |
|
|
Optional. Ermöglicht Ihnen die Veröffentlichung im Azure App-Dienst, indem Sie sich auf Ihre eigene Benutzeridentität verlassen, ohne einen Dienstprinzipal erstellen zu müssen. Wenn dieser Parameter verwendet wird, ist der Parametersatz |
-azureUSGovernmentLogin | Optional. Dieser Parameter wird nur für Bereitstellungen der US-Regierung verwendet. |
Das Skript Publish-IdentityServer.ps1 wird für die anfängliche Bereitstellung oder Aktualisierung von Identity Server verwendet. Das Skript geht davon aus, dass die Web-App bereits die Datenbankverbindungszeichenfolge DefaultConnection konfiguriert hat.
.\Publish-IdentityServer.ps1 `
-action Deploy `
-orchestratorUrl "<orchestrator_address>" `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-azureSubscriptionId "<subscription_id>" `
-azureAccountTenantId "<azure_tenant_id>" `
-azureAccountApplicationId "<azure_application_id>" `
-azureAccountPassword "<azure_account_password>" `
-package "UiPath.IdentityServer.Web.zip" `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-stopApplicationBeforePublish `
-unattended
.\Publish-IdentityServer.ps1 `
-action Deploy `
-orchestratorUrl "<orchestrator_address>" `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-azureSubscriptionId "<subscription_id>" `
-azureAccountTenantId "<azure_tenant_id>" `
-azureAccountApplicationId "<azure_application_id>" `
-azureAccountPassword "<azure_account_password>" `
-package "UiPath.IdentityServer.Web.zip" `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-stopApplicationBeforePublish `
-unattended
Stellen Sie nach dem Ausführen des obigen Skripts sicher, dass Sie die unten aufgeführten zusätzlichen Schritte ausführen, um eine erfolgreiche Erstbereitstellung zu ermöglichen.
Führen Sie nach der Veröffentlichung von Identity Server die folgenden Schritte aus:
-
Wechseln Sie zum Azure-Portal.
-
Wählen Sie Ihren Identity Server-App-Service aus.
-
Wechseln Sie im Menü Zertifikate zu Eigene Zertifikate einbringen.
-
Laden Sie die
.pfx-Zertifikatdatei eines privaten Schlüssels mit einem gültigen Kennwort hoch.Hinweis:Dieses Zertifikat wird zum Signieren der Zugriffstoken und der ID-Token verwendet.
-
Fügen Sie unter dem Konfigurationsmenü die folgenden Anwendungseinstellungen genau wie in der Spalte Anwendungseinstellungen geschrieben hinzu:
Anwendungseinstellung Wert Beschreibung AppSettings__IdentityServerAddresshttps://[identity_server]/identity Die öffentliche URL von Identity Server.
The URL must contain the address of Identity Server + the suffix/identityin lowercase.AppSettings__SigningCredentialSettings__StoreLocation__LocationCurrentUser Dies muss auf CurrentUser verweisen. AppSettings__SigningCredentialSettings__StoreLocation__NameXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Der Fingerabdruckwert Ihres Zertifikats, das Sie zuvor hochgeladen haben. AppSettings__SigningCredentialSettings__StoreLocation__NameTypeThumbprintGeben Sie Thumbprintals Typ des vorherigen Felds ein.AppSettings__LoadBalancerSettings__RedisConnectionStringXXXXXXXXXXXX:XXXX,password=XXXXXXEin Verbindungszeichenfolge, um Ihren Redis-Server einzurichten, und die die URL des Servers, das Kennwort und den mit Redis verwendeten Port enthält. Überdies besteht die Möglichkeit, mit SSL verschlüsselte Verbindungen zwischen den Orchestrator-Knoten und dem Redis-Dienst zu aktivieren. AppSettings__LoadBalancerSettings__SlidingExpirationTimeInSecondsAnzahl der Sekunden Die gleitende Ablaufzeit eines Elements im Cache. Diese Ablaufzeit gilt sowohl für Redis Cache als auch für InMemory Cache. AppSettings__RedisSettings__UseRedisStoreCachetrue/falseLegen Sie den Wert auf truefest, um das Redis-Caching von OAuth-Clientdaten zu aktivieren. Dies verhindert Leistungsprobleme bei der Verwendung der interaktiven Anmeldung, um eine große Anzahl von Robotern in kurzer Zeit zu verbinden. Dieser Cache verwendet dieselbe Redis-Verbindungszeichenfolge, die inAppSettings__LoadBalancerSettingsangegeben ist.
Dies wird nicht empfohlen, wenn Sie die Funktion Externe Anwendungen verwenden, da diese Einstellung Clients zwischenspeichert und Aktualisierungen für externe Anwendungen nicht widergespiegelt werden.AppSettings__RedisSettings__UseRedisStoreClientCachetrue/falseLegen Sie den Wert auf „true“ fest, um das Redis-Caching für Erstanbieter-Clients (UiPath-Anwendungen) oder Drittanbieter-Clients (externe Anwendungen) zu aktivieren. Wenn Sie eine umfangreiche Bereitstellung haben, wird empfohlen, dieses Flag zu aktivieren. App__Saml2ValidCertificateOnlytrue/falseFür Orchestrator-Bereitstellungen über eine Azure Web-App muss dieser Parameter auf falsefestgelegt werden. Dies liegt daran, dass SAML2 erfordert, dass Zertifikate zu seinem Truststore hinzugefügt werden, aber Azure Web-Apps lassen diese Aktion nicht zu. Das Festlegen des Werts auffalsebedeutet, dass die Zertifikatsprüfung umgangen wird.WEBSITE_LOAD_CERTIFICATESXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Der Fingerabdruckwert Ihres Zertifikats, das Sie zuvor hochgeladen haben. WEBSITE_LOAD_USER_PROFILE1 Das Benutzerprofil. -
Speichern Sie die Änderungen.
Weitere Informationen finden Sie in der Microsoft Azure-Dokumentation.
Ersetzen des Zertifikats mit privatem Schlüssel
Wenn Sie ein Zertifikat mit privatem Schlüssel durch ein neues ersetzen, stellen Sie sicher, dass Sie die folgenden Schritte ausführen:
- Ersetzen Sie die Werte der Parameter
AppSettings__SigningCredentialSettings__StoreLocation__NameundWEBSITE_LOAD_CERTIFICATESdurch den Fingerabdruck des neuen Zertifikats. - Starten Sie den Identitäts-App-Dienst neu.
- Starten Sie den Orchestrator-App-Dienst neu.
Migrieren zu Identity Server
In der folgenden Tabelle sind alle Parameter beschrieben, die mit MigrateTo-IdentityServer.ps1 verwendet werden können.
| Parameter | Beschreibung |
|---|---|
|
|
Obligatorisch. Geben Sie den vollständigen Pfad oder relativen Pfad des Archivs |
|
|
Dieser Parameter ist eine Hashtabelle, die die folgenden Werte enthält:
|
|
|
Dieser Parameter ist eine Hashtabelle, die die folgenden Werte enthält:
|
|
|
Dieser Parameter ist eine Hashtabelle, die die folgenden Werte enthält:
|
|
|
Obligatorisch. Die öffentliche Adresse von Identity Server. /identity in lowercase. Example: https://[identity_server]/identity
|
|
|
Obligatorisch. Die öffentliche Adresse von Orchestrator. |
|
|
Optional: Ermöglicht das Festlegen eines Verzeichnisses, in dem benötigte Dateien heruntergeladen und entpackt werden. |
|
|
Mandatory only for fresh deployments, when |
|
|
Optional. Ermöglicht Ihnen, das Zurücksetzen eines Passworts nach dem ersten Anmelden des Host-Administrators zu erzwingen. Wenn Sie diesen Parameter weglassen, ist das Host-Administrator-Passwort nicht einmalig. |
|
|
Mandatory only for fresh deployments, when |
|
|
Optional. Ermöglicht Ihnen, das Zurücksetzen eines Passworts nach dem ersten Anmelden des Host-Administrators zu erzwingen. Wenn Sie diesen Parameter weglassen, ist das Tenant-Administrator-Passwort nicht einmalig. |
|
|
Optional. Ermöglicht Ihnen die Veröffentlichung im Azure App-Dienst, indem Sie sich auf Ihre eigene Benutzeridentität verlassen, ohne einen Dienstprinzipal erstellen zu müssen. Wenn dieser Parameter verwendet wird, ist der Parametersatz |
Das Skript MigrateTo-IdentityServer.ps1 wird verwendet, um Benutzerdaten vom Orchestrator zum Identity Server zu migrieren und die Konfigurationen für beide festzulegen. Es überträgt die Identifikationsautorität des Orchestrators auf den Identity Server und erstellt die Clientkonfiguration für den Orchestrator im Identity Server.
Das Skript geht davon aus, dass Orchestrator und Identity Server bereits veröffentlicht wurden.
.\MigrateTo-IdentityServer.ps1 `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-azureDetails @{azureSubscriptionId = "<subscription_id>"; azureAccountTenantId = "<azure_tenant_id>"; azureAccountApplicationId = "<azure_application_id>"; azureAccountPassword = "<azure_account_password>" } `
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-orchestratorUrl "https://<OrchestratorURL>" `
-hostAdminPassword "12345qwert" `
-defaultTenantAdminPassword "12345qwert"
.\MigrateTo-IdentityServer.ps1 `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-azureDetails @{azureSubscriptionId = "<subscription_id>"; azureAccountTenantId = "<azure_tenant_id>"; azureAccountApplicationId = "<azure_application_id>"; azureAccountPassword = "<azure_account_password>" } `
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-orchestratorUrl "https://<OrchestratorURL>" `
-hostAdminPassword "12345qwert" `
-defaultTenantAdminPassword "12345qwert"