UiPath Documentation
orchestrator
latest
false
Wichtig :
Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.
UiPath logo, featuring letters U and I in white

Orchestrator-Anleitung

Letzte Aktualisierung 20. Apr. 2026

Der Orchestrator Credentials Proxy

Sie können dem Orchestrator Ihre eigenen Anmeldeinformationsspeicher hinzufügen, um die Sicherheit Ihrer Verbindungsdaten unabhängig zu steuern.

To do that, you can load your desired credential store plugins, in the form of.dll files, to the Orchestrator Credentials Proxy web service. The installation kit contains all plugins supported by UiPath, but you can also develop your own plugin.dll files to load. This service then makes your plugins available to Orchestrator via a proxy, which is created in Orchestrator based on the the public URL and the secret key generated by the proxy.

Bekanntes Problem

Dies gilt nur für Szenarien, in denen der Port des Orchestrator Credentials Proxy auf einen anderen Wert als den Standardwert 443 festgelegt ist.

Wenn Sie ein Upgrade von einer Version zwischen 1.0.0 und 2.0.1 durchführen und einen benutzerdefinierten Port verwendet haben, wird der lokale Port in der Eingangsregel UiPathOrchestratorCredentialsProxy automatisch in 443 geändert (Standard). Dadurch kann die Verbindung mit dem Proxy nicht hergestellt werden.

Um dies zu umgehen, müssen Sie den lokalen Port in der Eingangsregel beim Upgrade manuell ändern.

Installation

The Orchestrator Credentials Proxy can be installed either through an.msi installer or through a Docker image provided by UiPath.

Über das .msi-Installationsprogramm

Voraussetzungen
Hardwareanforderungen

Dies sind die Mindestanforderungen für die Ausführung des Proxys auf einem Windows Server mit IIS. Der tatsächliche Ressourcenbedarf hängt von der individuellen Verwendung ab.

CPU-CoresRAM
24 GB
Softwareanforderungen

Die folgenden Windows Server-Versionen sind für die Installation des Proxys erforderlich:

  • 2012 R2
  • 2016
  • 2019
  • 2022
  • 2025

Folgendes ist erforderlich, um den Proxy verwenden zu können:

  • ASP.NET Core versions 3.1 or later
  • IIS-Version 8.0 oder höher
  • Die folgenden Serverrollen müssen auf Ihrer Maschine installiert sein:
    • IIS-DefaultDocument
    • IIS-HttpErrors
    • IIS-StaticContent
    • IIS-RequestFiltering
    • IIS-URLAuthorization
    • IIS-WindowsAuthentication
    • IIS-ASPNET45
    • IIS-ISAPIExtensions
    • IIS-ISAPIFilter
    • IIS-WebSockets
    • IIS-ApplicationInit
    • IIS-ManagementConsole
Hinweis:
  • Installieren Sie für Windows Server-Maschinen die Rollen mit dem Server-Manager.
  • For Windows 10 or Windows 11 machines, install the roles using the Turn Windows features on or off utility under Control Panel > Programs.
Installationsschritte

Führen Sie die folgenden Schritte aus, um die Installation durchzuführen:

  1. Download the UiPath Orchestrator Credential Proxy installer from the Customer Portal.
  2. Installieren Sie den Proxy.

Verbundener Proxy

  • Public URL - the Orchestrator Credentials Proxy's URL that is publicly exposed
  • SSL Certificate - the Subject or Thumbprint of the SSL certificate used to secure connections with the Orchestrator Credentials Proxy. This is the SSL certificate installed on the computer or web server hosting the proxy.

Note that it must be issued by a public certificate provider, and it needs to be valid for the Public URL.

  • Port - the port corresponding to the Public URL
  • Secret Key - (automatically generated) the key needed for configuring a custom proxy in the Orchestrator interface; make sure to copy it to your clipboard for future use.

Kann manuell geändert werden und ist auch für die Schlüsselrotation geeignet.

Getrennter Proxy

This feature is only available if you are on the Enterprise - Advanced licensing plan for Flex Pricing Plan, or Enterprise or Application Test Enterprise for Unified Pricing Plan.

  • SSL Certificate - the Subject or Thumbprint of the SSL certificate used to secure connections with the Orchestrator Credentials Proxy. This is the SSL certificate installed on the computer or web server hosting the proxy.
  • Port - the port corresponding to the URL
  • Secret Key - (automatically generated) the key needed for configuring a custom proxy in the Orchestrator interface; make sure to copy it to your clipboard for future use.

Kann manuell geändert werden und ist auch für die Schlüsselrotation geeignet.

Nach der Installation wird der Parameter AppSettings.CredentialsProxyType in der Datei appsettings.Production.json auf „Getrennt“ festgelegt. So erkennt der Proxy den Typ beim Start.

Hinweis:

The Anonymous Authentication option must be set to Enabled in IIS for the proxy to work.

Verschlüsseln des Parameters Jwt:Keys

To add an extra layer of security, you can encrypt the Jwt:Keys and SecureStoreConfigurations:Context parameters in your appsettings.json file.

Hinweis:

This requires UiPath.ConfigProtector.exe version 1.0.9 or higher.

Über das Docker-Image

Vorläufige Informationen

Alle Orchestrator-Einstellungen für Credentials Proxy, die bearbeitet werden können, sind in der Datei appsettings.json verfügbar. Die folgenden Parameter sind bei der Ersteinrichtung wichtig:

  • Jwt:Keys – (anfänglich leer) Dieses Array von Strings wird verwendet, um die Authentifizierung des Proxys einzurichten. Dies ist der geheime Schlüssel, den Sie während des Proxy-Erstellungsprozesses verwenden und der es Orchestrator ermöglicht, Daten erfolgreich vom Proxy abzurufen. Alle ungültigen Werte werden ignoriert. Wenn keine gültigen Werte gefunden werden, wird der Proxy nicht gestartet.

Die geheimen Schlüssel müssen sich in base64 befinden und können mithilfe eines der folgenden PowerShell-Skripts generiert werden.

$bytes = [System.Security.Cryptography.RandomNumberGenerator]::GetBytes(64)
$jwtSigningKey = [Convert]::ToBase64String($bytes);
Write-Host $jwtSigningKey
$bytes = [System.Security.Cryptography.RandomNumberGenerator]::GetBytes(64)
$jwtSigningKey = [Convert]::ToBase64String($bytes);
Write-Host $jwtSigningKey

Das obige Skript generiert 64 zufällige Bytes (mit SeccureRandom) und konvertiert sie in einen base64-String.

[Byte[]] $bytes = 1..64
$rng = New-Object System.Security.Cryptography.RNGCryptoServiceProvider
$rng.GetBytes($bytes)
$jwtSigningKey = [Convert]::ToBase64String($bytes);
Write-Host $jwtSigningKey
[Byte[]] $bytes = 1..64
$rng = New-Object System.Security.Cryptography.RNGCryptoServiceProvider
$rng.GetBytes($bytes)
$jwtSigningKey = [Convert]::ToBase64String($bytes);
Write-Host $jwtSigningKey
  • appSettings:Plugins.SecureStores – (ursprünglich auf die im Orchestrator verfügbaren Standard-Anmeldeinformationsspeicher festgelegt) Dies ist ein CSV-String, der verwendet wird, um anzugeben, welche DLL- vom Datenträger (von path/plugins) geladen werden sollen, damit sichere Speicher vom Proxy verwendet werden können. Das Hinzufügen ungültiger Assemblys zur Liste unterbricht den Start nicht, aber Sie erhalten Protokollfehler, wenn Sie versuchen, sie bereitzustellen.
  • appSettings:SigningCredentialSettings:FileLocation:SigningCredential:FilePath und appSettings:SigningCredentialSettings:FileLocation:SigningCredential:Password – (zunächst ausgeblendet) werden zum Verschlüsseln der Parameter Jwt:Keys und SecureStoreConfigurations:Context verwendet. Dies stellt den Dateipfad zu Ihrem Signaturzertifikat dar.
  • appSettings:SigningCredentialSettings:StoreLocation:Name, appSettings:SigningCredentialSettings:StoreLocation:Location, appSettings:SigningCredentialSettings:StoreLocation:NameType – (zunächst ausgeblendet) werden zum Verschlüsseln der Parameter Jwt:Keys und SecureStoreConfigurations:Context verwendet.

Einrichten und Ausführen des Docker-Images

Führen Sie die folgenden Schritte aus, um den Orchestrator Credentials Proxy mit Docker auszuführen.

  1. Docker-Image herunterladen

You can download the image from http://registry.uipath.com/.

Hinweis:

Make sure to include the required version of the Orchestrator Credentials Proxy in the URL. For example, to download the image for version 2.1.4, use:

http://registry.uipath.com/orchestrator-credentialsproxy:2.1.4
http://registry.uipath.com/orchestrator-credentialsproxy:2.1.4

Diese URL verweist auf ein Docker-Image und muss über die Docker CLI und nicht über einen Webbrowser aufgerufen werden.

Beachten Sie, dass Version 1.0.0 nur den verbundenen Proxy unterstützt, während die Versionen 2.0.0+ auch den getrennten Proxy unterstützen.

Verwenden Sie diesen Befehl, um das Image abzurufen:

$bytes = [System.Security.Cryptography.RandomNumberGenerator]::GetBytes(64);
$jwtSigningKey = [Convert]::ToBase64String($bytes);
docker run -e LICENSE_AGREEMENT=accept -e Jwt__Keys__0=$jwtSigningKey -p 8000:8080 registry.uipath.com/orchestrator-credentialsproxy:1.0.0
$bytes = [System.Security.Cryptography.RandomNumberGenerator]::GetBytes(64);
$jwtSigningKey = [Convert]::ToBase64String($bytes);
docker run -e LICENSE_AGREEMENT=accept -e Jwt__Keys__0=$jwtSigningKey -p 8000:8080 registry.uipath.com/orchestrator-credentialsproxy:1.0.0

Das ist das standardmäßige UiPath-Image, das die Anmeldeinformationsspeicher enthält, die bereits in Ihrem Cloud-Konto verfügbar sind. Sie können das Image in der Cloud-Umgebung Ihrer Wahl bereitstellen.

Der obige Befehl generiert auch den geheimen Schlüssel.

  1. Erstellen Sie Ihr eigenes benutzerdefiniertes Docker-Image

Sie können Ihr eigenes Docker-Image mit zusätzlichen Assemblys erstellen, das auf dem von UiPath bereitgestellten und in Schritt 1 heruntergeladenen Image basiert. Folgendes ist dafür notwendig:

  1. Erstellen Sie eine neue Dockerfile (zur Veranschaulichung nennen wir sie CustomDockerfile) und fügen Sie Folgendes hinzu:
    FROM {docker-image-path}
    RUN rm -rf ./plugins 
    COPY --chown=1001:0 {path of your custom assemblies} ./plugins 
    ENTRYPOINT ["dotnet", "UiPath.OrchestratorCredentialsProxy.dll"]
    FROM {docker-image-path}
    RUN rm -rf ./plugins 
    COPY --chown=1001:0 {path of your custom assemblies} ./plugins 
    ENTRYPOINT ["dotnet", "UiPath.OrchestratorCredentialsProxy.dll"]
    
    • Ersetzen Sie {docker-image-path} durch den Pfad zum ursprünglichen Docker-Image, das von UiPath bereitgestellt wird.
    • Replace {path of your custom assemblies} with the path to your own credential store .dll files.Find out how Visual Studio uses this Dockerfile to build your images for faster debugging.
  2. Generieren Sie das Docker-Image mit diesem Befehl, der den Namen der neu erstellten Dockerfile enthält:
    docker build -f CustomDockerfile . -t customproxy
    docker build -f CustomDockerfile . -t customproxy
    
  3. Führen Sie das Docker-Image aus:
    docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey -e appSettings__Plugins.SecureStores="{your-list-of-assemblies}" customproxy
    docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey -e appSettings__Plugins.SecureStores="{your-list-of-assemblies}" customproxy
    
    • Ersetzen Sie {your-list-of-assemblies} durch die DLL-Dateien der benutzerdefinierten Anmeldeinformationsspeicher, die Sie dem Orchestrator hinzufügen möchten.

So führen Sie das Image mit einem Jwt:Keys-Parameter aus:

  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey {docker-image-name}
  ```
  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey {docker-image-name}
  ```

So führen Sie das Image mit mehreren Jwt:Keys-Parametern aus:

  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0==$jwtSigningKey" -e Jwt__Keys__1==$jwtSigningKey" -e Jwt__Keys__2==$jwtSigningKey ... {docker-image-name}
  ```
  * Replace `{docker-image-name}` with the name you set for your custom Docker image.
  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0==$jwtSigningKey" -e Jwt__Keys__1==$jwtSigningKey" -e Jwt__Keys__2==$jwtSigningKey ... {docker-image-name}
  ```
  * Replace `{docker-image-name}` with the name you set for your custom Docker image.

Um das Image mit einem benutzerdefinierten Wert für den Parameter appSettings:Plugins.SecureStores auszuführen (d. h. mit Ihrem gewünschten Anmeldeinformationsspeicher), ersetzen Sie den Inhalt dieses Parameters durch Ihre eigenen DLL-Dateien für den Anmeldeinformationsspeicher:

  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey -e appSettings__Plugins.SecureStores="UiPath.Orchestrator.CyberArk.dll;UiPath.Orchestrator.AzureKeyVault.SecureStore.dll" {docker-image-name}
  ```
  ```
  docker run --publish 8000:8080 -e LICENSE_AGREEMENT="accept" -e Jwt__Keys__0=$jwtSigningKey -e appSettings__Plugins.SecureStores="UiPath.Orchestrator.CyberArk.dll;UiPath.Orchestrator.AzureKeyVault.SecureStore.dll" {docker-image-name}
  ```

4. (Optional) Test the new Docker image

Um Ihr Image zu testen, greifen Sie auf die Swagger-Schnittstelle auf http://localhost:8000/swagger/index.html zu und überprüfen Sie, ob der dedizierte unauthentifizierte Endpunkt /Health funktioniert. Eine erfolgreiche Anforderung gibt eine leere Antwort mit einem HTTP-Status-Code 200 OK zurück.

Konfiguration

Verbundener und getrennter Proxy

Der erste Schritt beim Konfigurieren Ihres Proxy besteht darin, dass Sie benutzerdefinierte .dll- Plugins, die Sie verwenden möchten, dem Ordner C:\Program Files\UiPath\CredentialsProxy\plugins hinzufügen.

Bei einigen Anmeldeinformationsspeichern müssen Sie möglicherweise Einstellungen auf Anwendungs-, Host- oder Proxyebene konfigurieren. Die Einstellungen entsprechen ihren Orchestrator-Pendants. Sie müssen diese Einstellungen in der appsettings.Production.json-Datei des Proxys angeben.

CyberArk

Sie müssen Einstellungen auf Hostebene wie CLIPasswordSDKExePath, UsePowerShellCLI und AdditionalAllowedCharacters unter dem Parameter Appsettings in der appsettings.Production.json-Datei hinzufügen:

{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath": "D:\\PathName\\CLIPasswordSDK.exe",
    // ...
  }
  // ...
}
{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath": "D:\\PathName\\CLIPasswordSDK.exe",
    // ...
  }
  // ...
}

CyberArk CCP

Wenn Sie das CyberArkCCP nicht über den Proxy abrufen können, fügen Sie der appsettings.Production.json-Datei den folgenden Parameter hinzu:

{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArkCCP.KeyStorageFlags": "MachineKeySet",
    // ...
  }
  // ...
}
{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArkCCP.KeyStorageFlags": "MachineKeySet",
    // ...
  }
  // ...
}

HashiCorp Vault

Um das Kerberos-Authentifizierungsprotokoll zu aktivieren und die Knotenweiterleitung für HashiCorp Vault zu aktivieren, fügen Sie der appsettings.Production.json-Datei folgende Parameter hinzu:

// ...
  "AppSettings": {
    "Plugins.SecureStores.HashiCorp Vault.KerberosEnabled": "true", // Optional, for Kerberos enablement
    "Plugins.SecureStores.HashiCorp Vault.ForwardToActiveNode": "true", // Optional, for forwarding to active node
    // ...
  }
  // ...
}
// ...
  "AppSettings": {
    "Plugins.SecureStores.HashiCorp Vault.KerberosEnabled": "true", // Optional, for Kerberos enablement
    "Plugins.SecureStores.HashiCorp Vault.ForwardToActiveNode": "true", // Optional, for forwarding to active node
    // ...
  }
  // ...
}

HashiCorp Vault (schreibgeschützt)

Um das Kerberos-Authentifizierungsprotokoll zu aktivieren und die Knotenweiterleitung für HashiCorp Vault (schreibgeschützt) zu aktivieren, fügen Sie der appsettings.Production.json-Datei folgende Parameter hinzu:

// ...
  "AppSettings": {
    "Plugins.SecureStores.HashiCorp Vault (read only).KerberosEnabled": "true", // Optional, for Kerberos enablement
    "Plugins.SecureStores.HashiCorp Vault (read only).ForwardToActiveNode": "true", // Optional, for forwarding to active node
    // ...
  }
  // ...
}
// ...
  "AppSettings": {
    "Plugins.SecureStores.HashiCorp Vault (read only).KerberosEnabled": "true", // Optional, for Kerberos enablement
    "Plugins.SecureStores.HashiCorp Vault (read only).ForwardToActiveNode": "true", // Optional, for forwarding to active node
    // ...
  }
  // ...
}

Nur Proxy getrennt

Dieser Proxytyp ist vollständig vom Orchestrator getrennt, deshalb müssen Sie die Informationen für die Anmeldeinformationstresore lokal in der Konfigurationsdatei appsettings.Production.json angeben. Sie finden die Dateien am folgenden Speicherort: C:\Program Files\UiPath\OrchestratorCredentialsProxy\appsettings.Production.json.

Sie müssen die folgenden Felder in der genannten Datei im Abschnitt AppSettingsSecureStoreConfigurations bearbeiten:

  • Key – Der Bezeichnerschlüssel für die Konfiguration
  • Type – Der Anmeldeinformationstresortyp, wie in den .dll- Dateien, konfiguriert über den Parameter Plugins.SecureStores in appsettings.json (siehe Beispiele unten)
  • Context – Die Verbindungsinformationen bezüglich der Implementierung des sicheren Speichers
    Wichtig:

    Nachdem Sie die Konfigurationsdatei bearbeitet haben, müssen Sie den Dienst über IIS neu starten.

Konfigurationsbeispiele

Sie müssen die folgenden Beispiele zur Konfigurationsdatei appsettings.Production.json hinzufügen, um den getrennten Proxy zu starten. Andernfalls wird der Dienst nicht gestartet.

Wählen Sie das geeignete Beispiel basierend auf Ihrem Anmeldeinformationsspeichertyp aus oder fügen Sie mehrere Anmeldeinformationsspeicher hinzu, indem Sie das allerletzte Beispiel auf dieser Seite verwenden.

Sie müssen die folgenden Felder in der genannten Datei im Abschnitt AppSettingsSecureStoreConfigurations bearbeiten:

  • Key – Der Bezeichnerschlüssel für die Konfiguration
  • Type – Der Anmeldeinformationstresortyp, wie in den .dll- Dateien, konfiguriert über den Parameter Plugins.SecureStores in appsettings.json (siehe Beispiele unten)
  • Context – Die Verbindungsinformationen bezüglich der Implementierung des sicheren Speichers
    Wichtig:

    Nachdem Sie die Konfigurationsdatei bearbeitet haben, müssen Sie den Dienst über IIS neu starten.

Hinweis:

Bevor Sie Änderungen an der Datei appsettings.Production.json vornehmen, stellen Sie sicher, dass Sie eine Sicherungskopie der Originaldatei erstellen.Auf diese Weise können Sie die ursprüngliche Konfiguration einfach wiederherstellen oder Änderungen vergleichen, wenn während der Einrichtung Probleme auftreten.

AWS Secrets Manager/AWS Secrets Manager (schreibgeschützt)
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyAwsStore>",
        "Type": "AWS Secrets Manager" / "AWS Secrets Manager (read only)",
        "Context": {
          "UseDefaultCredentials": "true",
          "AccessKey": "<AccessKey>",
          "SecretKey": "<SecretKey>",
          "Region": "<SelectedRegion>"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyAwsStore>",
        "Type": "AWS Secrets Manager" / "AWS Secrets Manager (read only)",
        "Context": {
          "UseDefaultCredentials": "true",
          "AccessKey": "<AccessKey>",
          "SecretKey": "<SecretKey>",
          "Region": "<SelectedRegion>"
        }
      },
    ]
...
Azure Key Vault (schreibgeschützt)
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyAzureStore>",
        "Type": "AzureKeyVault (read only)",
        "Context": {
          "KeyVaultUri": "<KeyVaultUri>",
          "DirectoryId": "<DirectoryId>",
          "ClientId": "<ClientId>",
          "ClientSecret": "<ClientSecret>"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyAzureStore>",
        "Type": "AzureKeyVault (read only)",
        "Context": {
          "KeyVaultUri": "<KeyVaultUri>",
          "DirectoryId": "<DirectoryId>",
          "ClientId": "<ClientId>",
          "ClientSecret": "<ClientSecret>"
        }
      },
    ]
...
Wichtig:

Azure Key Vault (lesen/schreiben) wird nicht unterstützt.

BeyondTrust Password Safe – Verwaltete Konten
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyBeyondTrustManagedAccountsSafe>",
        "Type": "BeyondTrust Password Safe - Managed Accounts",
        "Context": {
          "Hostname": "<HostName>",
          "APIRegistrationKey": "<ApiRegistrationKey>",
          "APIRunAsUsername": "<Username>",
          "DefaultManagedSystemName": "", // can be empty or a string
          "SystemAccountDelimiter": "/", // default account delimiter is "/", but it can be changed
          "ManagedAccountType": "<ManagedAccountType>" // expected value is one of "system", "domainlinked", "database", "cloud", "application"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyBeyondTrustManagedAccountsSafe>",
        "Type": "BeyondTrust Password Safe - Managed Accounts",
        "Context": {
          "Hostname": "<HostName>",
          "APIRegistrationKey": "<ApiRegistrationKey>",
          "APIRunAsUsername": "<Username>",
          "DefaultManagedSystemName": "", // can be empty or a string
          "SystemAccountDelimiter": "/", // default account delimiter is "/", but it can be changed
          "ManagedAccountType": "<ManagedAccountType>" // expected value is one of "system", "domainlinked", "database", "cloud", "application"
        }
      },
    ]
...
BeyondTrust Password Safe – Team-Kennwörter
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyBeyondTrustTeamPasswordSafe>",
        "Type": "BeyondTrust Password Safe - Team Passwords",
        "Context": {
          "Hostname": "<HostName>",
          "APIRegistrationKey": "<ApiRegistrationKey>",
          "APIRunAsUsername": "<Username>",
          "FolderPathPrefix" : "/", // default delimiter is "/", but it can be changed
          "FolderPasswordDelimiter" : "/" // default delimiter is "/", but it can be changed
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyBeyondTrustTeamPasswordSafe>",
        "Type": "BeyondTrust Password Safe - Team Passwords",
        "Context": {
          "Hostname": "<HostName>",
          "APIRegistrationKey": "<ApiRegistrationKey>",
          "APIRunAsUsername": "<Username>",
          "FolderPathPrefix" : "/", // default delimiter is "/", but it can be changed
          "FolderPasswordDelimiter" : "/" // default delimiter is "/", but it can be changed
        }
      },
    ]
...
CyberArk – AIM
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyCyberArk>",
        "Type": "CyberArk",
        "Context": {
          "ApplicationId": "<App_MyCyberArk>",
          "Safe": "<Passwords>",
          "Folder": "<MyFolder>"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyCyberArk>",
        "Type": "CyberArk",
        "Context": {
          "ApplicationId": "<App_MyCyberArk>",
          "Safe": "<Passwords>",
          "Folder": "<MyFolder>"
        }
      },
    ]
...

Alle Einstellungen auf Hostebene, wie z. B. CLIPasswordSDKExePath, UsePowerShellCLI oder AdditionalAllowedCharacters müssen unter dem Parameter Appsettings gespeichert werden, ähnlich wie bei Orchestrator.

{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath": "D:\\<MyPath>\\CLIPasswordSDK.exe",
    "Plugins.SecureStores": "UiPath.Orchestrator.CyberArk.dll;UiPath.Orchestrator.AzureKeyVault.SecureStore.dll;UiPath.Orchestrator.SecureStore.CyberArkCCP.dll;UiPath.Orchestrator.SecureStore.CyberArkConjur.dll;UiPath.Orchestrator.SecureStore.HashiCorpVault.dll;UiPath.Orchestrator.SecureStore.ThycoticSecretServer.dll;UiPath.Orchestrator.SecureStore.BeyondTrust.dll;UiPath.Orchestrator.SecureStore.AWSSecretsManager.dll",
    "CredentialsProxyType": "Disconnected"
    // ...
  }
  // ...
{
// ...
  "AppSettings": {
    "Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath": "D:\\<MyPath>\\CLIPasswordSDK.exe",
    "Plugins.SecureStores": "UiPath.Orchestrator.CyberArk.dll;UiPath.Orchestrator.AzureKeyVault.SecureStore.dll;UiPath.Orchestrator.SecureStore.CyberArkCCP.dll;UiPath.Orchestrator.SecureStore.CyberArkConjur.dll;UiPath.Orchestrator.SecureStore.HashiCorpVault.dll;UiPath.Orchestrator.SecureStore.ThycoticSecretServer.dll;UiPath.Orchestrator.SecureStore.BeyondTrust.dll;UiPath.Orchestrator.SecureStore.AWSSecretsManager.dll",
    "CredentialsProxyType": "Disconnected"
    // ...
  }
  // ...
CyberArk – CCP
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyCyberArkCCPStore>",
        "Type": "CyberArkCCP",
        "Context": {
          "ApplicationId": "<ApplicationId>",
          "Safe": "<CyberArkSafe>",
          "Folder": "<CyberArkFolder>",
          "WebServiceUrl": "<CentralCredentialProviderUrl>",
          "WebServiceName": "<WebServiceName>",
          "SerializedClientCertificate": "<ClientCertificate>", // must be the ".pfx" file's content as base64 string
          "ClientCertificatePassword": "<ClientCertificatePassword>",
          "SerializedRootCA": "<someServerRootCA>" // must be the ".crt" or ".cer" file's content as base64 string
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyCyberArkCCPStore>",
        "Type": "CyberArkCCP",
        "Context": {
          "ApplicationId": "<ApplicationId>",
          "Safe": "<CyberArkSafe>",
          "Folder": "<CyberArkFolder>",
          "WebServiceUrl": "<CentralCredentialProviderUrl>",
          "WebServiceName": "<WebServiceName>",
          "SerializedClientCertificate": "<ClientCertificate>", // must be the ".pfx" file's content as base64 string
          "ClientCertificatePassword": "<ClientCertificatePassword>",
          "SerializedRootCA": "<someServerRootCA>" // must be the ".crt" or ".cer" file's content as base64 string
        }
      },
    ]
...

Je nach Ihrer IIS-Konfiguration müssen Sie eventuell zusätzliche KeyStorageFlags wie folgt konfigurieren:

"AppSettings": {
...
"Plugins.SecureStores.CyberArkCCP.KeyStorageFlags": "MachineKeySet",
...
}
"AppSettings": {
...
"Plugins.SecureStores.CyberArkCCP.KeyStorageFlags": "MachineKeySet",
...
}

Sie können eine PFX-, CRT- oder CER-Datei wie folgt in eine Zeichenfolge base64 umwandeln:

$fileContentBytes = get-content 'C:\path\to\the.pfx' -Encoding Byte
[System.Convert]::ToBase64String($fileContentBytes) | Out-File 'C:\path\to\the.txt'
$fileContentBytes = get-content 'C:\path\to\the.pfx' -Encoding Byte
[System.Convert]::ToBase64String($fileContentBytes) | Out-File 'C:\path\to\the.txt'
CyberArk® Conjur Cloud (schreibgeschützt)
...
"SecureStoreConfigurations": [
      {
        "Key": "MyCyberArkConjur",
        "Type": "CyberArk Conjur Cloud (read only)",
        "Context": {
          "ServiceUrl": "https://{myCyberArkConjurUrl}/",
          "LoginName": "{myLoginName}",
          "ApiKey": "{myApiKey}",
          "VariableIdPrefix": "{myPrefix}"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "MyCyberArkConjur",
        "Type": "CyberArk Conjur Cloud (read only)",
        "Context": {
          "ServiceUrl": "https://{myCyberArkConjurUrl}/",
          "LoginName": "{myLoginName}",
          "ApiKey": "{myApiKey}",
          "VariableIdPrefix": "{myPrefix}"
        }
      },
    ]
...
CyberArk® Conjur (schreibgeschützt)
...
"SecureStoreConfigurations": [
  {
    "Key": "MyCyberArkConjur",
    "Type": "CyberArk Conjur (read only)",
    "Context": {
      "ApplianceUrl": "https://{company}.secretsmgr.cyberark.cloud/api",
      "Account": "{myAccount}",
      "AuthenticationType": "{Jwt|ApiKey}",
      "JWT":  {
          "JwtServiceId": "{myJwtServiceId}",
          "IdentityProviderUrl": "{myIdentityProviderUrl}",
          "ClientId": "{myClientId}",
          "ClientSecret": "{myClientSecret}",
          "Scope": "{myScope}"
      },
      "ApiKey": {
          "LoginName": "{myLoginName}",
          "Key": "{myApiKey}"
      },
      "HostId": "{myHostId}",
      "VariableIdPrefix": "{myPrefix}"
    }
  },
]
...
...
"SecureStoreConfigurations": [
  {
    "Key": "MyCyberArkConjur",
    "Type": "CyberArk Conjur (read only)",
    "Context": {
      "ApplianceUrl": "https://{company}.secretsmgr.cyberark.cloud/api",
      "Account": "{myAccount}",
      "AuthenticationType": "{Jwt|ApiKey}",
      "JWT":  {
          "JwtServiceId": "{myJwtServiceId}",
          "IdentityProviderUrl": "{myIdentityProviderUrl}",
          "ClientId": "{myClientId}",
          "ClientSecret": "{myClientSecret}",
          "Scope": "{myScope}"
      },
      "ApiKey": {
          "LoginName": "{myLoginName}",
          "Key": "{myApiKey}"
      },
      "HostId": "{myHostId}",
      "VariableIdPrefix": "{myPrefix}"
    }
  },
]
...
HashiCorp Vault/HashiCorp Vault (schreibgeschützt)
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyHashiCorp>",
        "Type": "HashiCorp Vault" / "HashiCorp Vault (read only)",
        "Context": {
          "VaultUri": "<VaultUri>",
          "AuthenticationType": "<AppRole>",
          "RoleId": "<RoleId>",
          "SecretId": "<SecretId>",
          "Username": "<Username>",
          "Password": "<Password>",
          "Token": "<Token>",
          "SecretsEngine": "<KeyValueV2>",
          "SecretsEngineMountPath": "<Secret>",
          "DataPath": "<applications/orchestrator>",
          "Namespace": "<orchestrator>"
          "LdapUseDynamicCredentials" : "true"
          "KerberosSPN": "HTTP/vault-spn"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyHashiCorp>",
        "Type": "HashiCorp Vault" / "HashiCorp Vault (read only)",
        "Context": {
          "VaultUri": "<VaultUri>",
          "AuthenticationType": "<AppRole>",
          "RoleId": "<RoleId>",
          "SecretId": "<SecretId>",
          "Username": "<Username>",
          "Password": "<Password>",
          "Token": "<Token>",
          "SecretsEngine": "<KeyValueV2>",
          "SecretsEngineMountPath": "<Secret>",
          "DataPath": "<applications/orchestrator>",
          "Namespace": "<orchestrator>"
          "LdapUseDynamicCredentials" : "true"
          "KerberosSPN": "HTTP/vault-spn"
        }
      },
    ]
...

Alle Einstellungen auf Hostebene, wie z. B. Plugins.SecureStores.HashiCorp Vault.KerberosEnabled, Plugins.SecureStores.HashiCorp Vault (read only).KerberosEnabled, Plugins.SecureStores.HashiCorp Vault (read only).ForwardToActiveNode oder Plugins.SecureStores.HashiCorp Vault.ForwardToActiveNode, müssen unter dem Appsettings-Parameter festgelegt werden, ähnlich wie für Orchestrator.

{
// ...
  "AppSettings": {
    // Optional, for Kerberos Enablement
    "Plugins.SecureStores.HashiCorp Vault.KerberosEnabled": "true",
    "Plugins.SecureStores.HashiCorp Vault (read only).KerberosEnabled": "true"
    // Optional, for Forwarding to Active node
    "Plugins.SecureStores.HashiCorp Vault.ForwardToActiveNode": "true",
    "Plugins.SecureStores.HashiCorp Vault (read only).ForwardToActiveNode": "true"
    // ...
  }
  // ...
}
{
// ...
  "AppSettings": {
    // Optional, for Kerberos Enablement
    "Plugins.SecureStores.HashiCorp Vault.KerberosEnabled": "true",
    "Plugins.SecureStores.HashiCorp Vault (read only).KerberosEnabled": "true"
    // Optional, for Forwarding to Active node
    "Plugins.SecureStores.HashiCorp Vault.ForwardToActiveNode": "true",
    "Plugins.SecureStores.HashiCorp Vault (read only).ForwardToActiveNode": "true"
    // ...
  }
  // ...
}
Thycotic Secret Server
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyThicoticServer>",
        "Type": "Thycotic Secret Server",
        "Context": {
          "SecretServerUrl": "<ServerUrl>",
          "RuleName": "<Rule>",
          "RuleKey": "<Key>",
          "UsernameField": "<Username>",
          "PasswordField": "<Password>"
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<MyThicoticServer>",
        "Type": "Thycotic Secret Server",
        "Context": {
          "SecretServerUrl": "<ServerUrl>",
          "RuleName": "<Rule>",
          "RuleKey": "<Key>",
          "UsernameField": "<Username>",
          "PasswordField": "<Password>"
        }
      },
    ]
...
Google Secret Manager
...
"SecureStoreConfigurations": [
      {
        "Key": "<GoogleSecretManager>",
        "Type": "Google Secret Manager",
        "Context": {
          "ProjectId": "<ProjectId>",
          "ServiceAccountKeyJson": "<ServiceAccountKeyJson>",
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<GoogleSecretManager>",
        "Type": "Google Secret Manager",
        "Context": {
          "ProjectId": "<ProjectId>",
          "ServiceAccountKeyJson": "<ServiceAccountKeyJson>",
        }
      },
    ]
...
Google Secret Manager (schreibgeschützt)
...
"SecureStoreConfigurations": [
      {
        "Key": "<GoogleSecretManager>",
        "Type": "Google Secret Manager (read only)",
        "Context": {
          "ProjectId": "<ProjectId>",
          "ServiceAccountKeyJson": "<ServiceAccountKeyJson>",
        }
      },
    ]
...
...
"SecureStoreConfigurations": [
      {
        "Key": "<GoogleSecretManager>",
        "Type": "Google Secret Manager (read only)",
        "Context": {
          "ProjectId": "<ProjectId>",
          "ServiceAccountKeyJson": "<ServiceAccountKeyJson>",
        }
      },
    ]
...
Mehrere Anmeldeinformationsspeicher

Wenn Sie mehrere Anmeldeinformationsspeicher verwenden, können Sie einen unter dem anderen wie folgt hinzufügen:

{
...
  "AppSettings": {
  ...
    "SecureStoreConfigurations": [
      {
        "Key": "<SecureStoreKey1>",
        "Type": "AzureKeyVault (read only)",
        "Context": {
          "KeyVaultUri": "<Uri>",
          "DirectoryId": "<DirectoryId>",
          "ClientId": "<ClientId>",
          "ClientSecret": "<ClientSecret>"
        }
      },
      {
        "Key": "<SecureStoreKey2>",
        "Type": "BeyondTrust Password Safe - Managed Accounts",
        "Context": {
          "Hostname": "<Host>",
          "APIRegistrationKey": "<ApiKey>",
          "APIRunAsUsername": "<ApiUsername>",
          "DefaultManagedSystemName": "",
          "SystemAccountDelimiter": "/",
          "ManagedAccountType": "system"
        }
      }
    ]
  ...
  }
}
{
...
  "AppSettings": {
  ...
    "SecureStoreConfigurations": [
      {
        "Key": "<SecureStoreKey1>",
        "Type": "AzureKeyVault (read only)",
        "Context": {
          "KeyVaultUri": "<Uri>",
          "DirectoryId": "<DirectoryId>",
          "ClientId": "<ClientId>",
          "ClientSecret": "<ClientSecret>"
        }
      },
      {
        "Key": "<SecureStoreKey2>",
        "Type": "BeyondTrust Password Safe - Managed Accounts",
        "Context": {
          "Hostname": "<Host>",
          "APIRegistrationKey": "<ApiKey>",
          "APIRunAsUsername": "<ApiUsername>",
          "DefaultManagedSystemName": "",
          "SystemAccountDelimiter": "/",
          "ManagedAccountType": "system"
        }
      }
    ]
  ...
  }
}

Validierung

Wichtig:

Das gilt nur für den getrennten Credentials Proxy.

Der Proxy validiert die Konfiguration beim Start, wenn der erkannte Typ Disconnected ist.

Das sind einige der Validierungsschritte, die der Proxy ausführt:

  • The proxy ensures that that appsettings.Production.json contains the expected configurations, as detailed in the Configuration section above.
  • Der Proxy stellt sicher, dass SecureStoreConfigurations keine doppelten Key-Parameter enthält, d. h., dass die in der appsettings.Production.json-Datei konfigurierten Anmeldeinformationsspeicher eindeutig sind.
  • Der Parameter SecureStoreConfigurations ist ein Array von Konfigurationen. Sie können beliebig viele Anmeldeinformationsspeicher hinzufügen, auch vom gleichen Typ. Beispielsweise können Sie mehrere Azure Key Vault-Instanzen (schreibgeschützt) konfigurieren, sofern das Feld Key eindeutig ist.
  • Der Proxy überprüft, ob alle Type-Werte gültig sind.
  • Basierend auf der Implementierung jedes sicheren Speichers prüft der Proxy, ob der Tresor erfolgreich erreicht werden kann.

Protokollierung

Orchestrator Credentials Proxy-Protokolle werden lokal im Ordner C:\Program Files\UiPath\OrchestratorCredentialsProxy gespeichert, wenn der Anwendungspool des Proxys über Schreibberechtigungen für diesen Pfad verfügt. Diese werden in IIS konfiguriert.

Wenn Sie diesem Ordner keine Schreibberechtigungen erteilen möchten, können Sie einen relativen oder absoluten Pfad Ihrer Wahl über den Parameter NLog.targets.logfile.fileName in appsettings.Production.json angeben.

Auf Windows-Maschinen speichert der Proxy auch Protokolle in der Windows-Ereignisanzeige.

Sicherheitsüberlegungen

  • Der Orchestrator lässt nur sichere URLs (HTTPS) für den Proxy zu. Das HTTPS-Zertifikat muss gültig und von einer allgemein anerkannten Zertifizierungsstelle signiert sein. Zertifikate, die selbstsigniert oder von einer internen Stelle signiert sind, werden nicht unterstützt.
  • Der Orchestrator wird über einen geheimen Clientschlüssel validiert, der vom Orchestrator Credentials Proxy generiert wird. Der geheime Clientschlüssel wird in einer Konfigurationsdatei auf der Maschine gespeichert, auf der der Orchestrator Credentials Proxy installiert ist, und wird von Orchestrator verschlüsselt und in der Datenbank gespeichert.
  • Wenn Sie einen Anmeldeinformationsspeicherproxy im Orchestrator bearbeiten und seine URL ändern, müssen Sie den geheimen Clientschlüssel eingeben.
  • Aktionen des Orchestrator Credentials Proxy 2.0.0+ werden in der Windows-Ereignisanzeige protokolliert.
  • Binärdateien müssen auf der Windows-Maschine signiert werden.
  • Das Docker-Image muss signiert sein.

Verwenden des Orchestrator Credentials Proxy mit einem Lastausgleich

Wenn Sie den Proxy in Kombination mit einem Lastausgleich verwenden, stellen Sie sicher, dass Sie die gleiche Konfiguration auf allen Knoten beibehalten.

Elemente, die für alle Knoten identisch bleiben müssen

  • Die Version des Proxy-Installationsprogramms. Wenn Sie z. B. Version 1.0.0 verwenden, müssen auch alle Lastausgleichsknoten 1.0.0 verwenden.
  • Die Einstellungen in den Anwendungskonfigurationsdateien. In den meisten Fällen sind das appsettings.json und appsettings.Production.json. Beachten Sie, dass appsettings.Production.json für jede Installation einzigartig ist, deshalb müssen Sie diese Datei manuell zu jedem Knoten hinzufügen, um die Konsistenz sicherzustellen.
  • Die zu path/plugins hinzugefügten Anmeldeinformationsspeicher-Plugins. Alle von uns unterstützten Plugins befinden sich bereits in diesem Ordner, sodass Sie nur auf die benutzerdefinierten Plugins achten müssen, die Sie hinzufügen.

Wichtige Punkte, die zu beachten sind

  • Wenn Sie Änderungen an der Docker-Image-Konfiguration vornehmen möchten, die wir für die Installation des Proxys bereitstellen, empfehlen wir dringend, stattdessen ein benutzerdefiniertes Docker-Image zu erstellen. Sie sollten dieses benutzerdefinierte Image dann verwenden, um den Proxy auf allen Knoten bereitzustellen.
  • Einige Umgebungsvariablen können Auswirkungen auf die Laufzeit haben. Zum Beispiel Umgebungsvariablen, die appsettings.json-Konfigurationswerte überschreiben, oder solche, die sich auf die .NET-Umgebung auswirken.
  • Sie können den speziellen nicht authentifizierten Endpunkt https://{YourOrchestratorCredentialsProxyURL}/api/v1/Health verwenden, um zu überprüfen, ob der Orchestrator Credentials Proxy noch ausgeführt wird.

Aktualisieren des Orchestrator Credentials Proxy-Zertifikats

Aktualisieren Sie bei Installationen mit einem einzelnen Knoten das SSL-Zertifikat wie folgt:

  1. Import the new certificate into the Personal folder, under Certificates, in the local machine's certificate console (certlm.msc).
  2. In the IIS Management Console, expand Sites, and select UiPath Orchestrator Credential Proxy.
  3. From the right-side panel, select Bindings....
  4. From the Bindings... view, select the default https record, then use the Select... button to choose a certificate.
  5. In the Select Certificate pop-up window, select the newly added certificate.
  6. Select OK until you complete the setup.
    Hinweis:

    Stellen Sie bei Installationen mit mehreren Knoten sicher, dass Sie das Zertifikat auf allen Maschinen aktualisieren.

Um das Zertifikat für Installationen mit einem Lastausgleich zu aktualisieren, verwenden Sie die gleichen oben beschriebenen Schritte. Da Orchestrator Credentials Proxy zustandslos ist, entfernen Sie den Knoten aus dem Lastenausgleich, wenn Sie das Zertifikat aktualisieren.

Schlüsselrotation

Schlüsselrotation mit Ausfallzeit

Hinweis:

This operation requires stopping and restarting the running Orchestrator Credentials Proxy. This can have an impact on any live requests done by Orchestrator.

  1. Generieren Sie einen neuen geheimen Schlüssel gemäß den Standards des Orchestrator Credentials Proxy.
  2. Stoppen Sie Ihren Orchestrator Credentials Proxy.
  3. Bearbeiten Sie die appsettings.Production.json Datei und überschreiben Sie Ihren vorhandenen Schlüssel mit dem neuen Schlüssel.
  4. Starten Sie Ihren Orchestrator Credentials Proxy.
  5. Gehen Sie in Orchestrator zu Ihrem Orchestrator Credentials Proxy und bearbeiten Sie das Secret Feld, indem Sie Ihr neues Geheimnis eintragen.

Schlüsselrotation ohne Ausfallzeit

Hinweis:

This operation requires an Orchestrator Credentials Proxy with a load balancer and a minimum of two Orchestrator Credentials Proxy instances. For more information, check the Installation section.

  1. Generieren Sie einen neuen geheimen Schlüssel gemäß den Standards des Orchestrator Credentials Proxy.
  2. Fügen Sie den neu generierten Schlüssel zu Ihren Credentials Proxy-Instanzen hinzu. Führen Sie für jede Instanz dieses Verfahren durch:
    1. Entfernen Sie eine Orchestrator Credentials Proxy-Instanz aus dem Load Balancer.
    2. Stoppen Sie diese Orchestrator Credentials Proxy-Instanz.
    3. Öffnen Sie die appsettings.Production.json Datei. Die Datei sollte einen Code enthalten, der dem folgenden ähnelt:
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}"
              ],
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}"
              ],
      
    4. Fügen Sie den neu generierten Schlüssel hinzu und behalten Sie den vorhandenen bei. Der Keys Parameter unterstützt mehrere durch Kommas getrennte Werte:
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}",
                  "{{NewKey}}"
              ],
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}",
                  "{{NewKey}}"
              ],
      
    5. Starten Sie den Orchestrator Credentials Proxy.
    6. Fügen Sie die Orchestrator Credentials Proxy-Instanz wieder in den Load Balancer ein.
  3. Gehen Sie in Orchestrator zu Ihrem Orchestrator Credentials Proxy und bearbeiten Sie das Secret Feld, indem Sie Ihr neues Geheimnis eintragen.
  4. Entfernen Sie nach einiger Zeit Ihren alten Schlüssel aus den Credentials Proxy-Instanzen.Führen Sie für jede Instanz dieses Verfahren durch:
    1. Entfernen Sie eine Orchestrator Credentials Proxy-Instanz aus dem Load Balancer.
    2. Stoppen Sie diese Orchestrator Credentials Proxy-Instanz.
    3. Öffnen Sie die appsettings.Production.json Datei. Die Datei sollte zwei Schlüssel enthalten, wie in den vorherigen Schritten beschrieben:
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}",
                  "{{NewKey}}"
              ],
      {
          "Jwt": {
              "Keys": [
                  "{{OldKey}}",
                  "{{NewKey}}"
              ],
      
    4. Entfernen Sie den alten Schlüssel aus der Datei:{ "Jwt": { "Keys": [ "{{NewKey}}"],
    5. Starten Sie den Orchestrator Credentials Proxy.
    6. Fügen Sie die Orchestrator Credentials Proxy-Instanz wieder in den Load Balancer ein.

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben