UiPath Documentation
studio
latest
false
Studio-Benutzerhandbuch
Wichtig :
Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.

Signieren von Paketen

Sign NuGet packages published from Studio using author or repository signing, and sign the assemblies Studio generates, to ensure the security and integrity of processes and libraries.

Das Signieren von Paketen steht zur Verfügung, um die Sicherheit und Integrität der von Studio veröffentlichten Prozesse und Bibliotheken zu gewährleisten.

NuGet bietet zwei Möglichkeiten, Pakete zu signieren, entweder durch einen Autor oder ein Repository.

Erzwingen der Verwendung signierter Pakete​

Zum Erzwingen der Verwendung von signierten Paketen muss der Parameter signatureValidationMode in der Datei Nuget.config auf require festgelegt werden. Die Datei befindet sich unter %ProgramFiles%\UiPath\Studio. Sie können dies auf zwei Arten tun:

  • Während der Installation über die Befehlszeile mit der Option ENFORCE_SIGNED_EXECUTION=1. Beispielsweise installiert der folgende Befehl Studio sowie einen Roboter als Windows-Dienst und erzwingt die Nutzung signierter Pakete in Ihrer UiPath-Umgebung: UiPathStudio.msi ADDLOCAL=DesktopFeature,Studio,Robot,RegisterService ENFORCE_SIGNED_EXECUTION=1.
  • Nach der Installation durch manuelles Bearbeiten der Nuget.config-Datei. Wenn Sie den Parameter nach der Installation festlegen, müssen Sie Folgendes tun, bevor die Änderungen wirksam werden:
    1. Starten Sie den UiPath-Roboterdienst erneut.
    2. Entfernen Sie alle vorhandenen .NuGet-Pakete aus %ProgramFiles%\UiPath\Studio\Packages und %userprofile%\.nuget\packages.
    3. Starten Sie Studio/Assistant neu.

Standardmäßig werden UiPath-Pakete von einem Repository und Autor signiert. Das bedeutet, dass solche Pakete über Pakete verwalten heruntergeladen und installiert werden können, ohne zusätzliche Aktionen ausführen zu müssen. Weitere Informationen zum Hinzufügen weiterer vertrauenswürdiger Autoren, Repositorys und/oder Besitzer finden Sie in den folgenden Abschnitten auf dieser Seite.

Wichtig:

Wenn mehrere Feeds verwendet werden, wählt NuGet den Feed aus, der am schnellsten reagiert. Wenn einer der Feeds keine signierten Pakete und Abhängigkeiten enthält, erhält der Roboter möglicherweise ein Paket oder eine Abhängigkeit, die nicht signiert ist, was dazu führt, dass die Automatisierung fehlschlägt. Um dies zu vermeiden, stellen Sie sicher, dass bei allen konfigurierten Feeds Pakete und Abhängigkeiten signiert sind.

Adding Trusted Sources​

Um Pakete herunterzuladen, zu installieren und auszuführen, die mit einem bestimmten Zertifikat signiert sind, fügen Sie das Zertifikat als vertrauenswürdige Quelle hinzu Dazu müssen Sie die Datei nuget.config im Installationsordner, und zwar hauptsächlich den Abschnitt <trustedSigners>, ändern.

Hinzufügen eines vertrauenswürdigen Autors​

Um einen vertrauenswürdigen Autor hinzuzufügen, müssen Sie die Datei NuGet.config unter %ProgramFiles%\UiPath\Studio\NuGet.configöffnen. Dann geben Sie certificatefingerprint und hashAlgorithm an. Auf dieser Seite erhalten Sie weitere Informationen über den Zertifikats-Fingerabdruck.

Setzen Sie allowUntrustedRoot auf true oder false:

  • allowUntrustedRoot = "true" – Vertrauenswürdige Unterzeichner können sich mit einem nicht vertrauenswürdigen Stamm verketten.
  • allowUntrustedRoot = "false" – Vertrauenswürdige Unterzeichner können sich nicht mit einem nicht vertrauenswürdigen Stamm verketten.

Die Eingabe sollte wie im nachfolgenden Beispiel aussehen:

<trustedSigners>
<author name="UiPath">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true"/>
</author>
</trustedSigners>
<trustedSigners>
<author name="UiPath">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true"/>
</author>
</trustedSigners>

Weitere Informationen zum Hinzufügen von UiPath als vertrauenswürdigen Unterzeichner finden Sie unter Überprüfung der Paketsignatur im Handbuch zu Robot.

Hinzufügen eines vertrauenswürdigen Repositorys​

Beim Hinzufügen eines vertrauenswürdigen Repositorys gehen Sie ungefähr so wie beim Hinzufügen eines Autors vor, nur mit dem Unterschied, dass serviceIndex ebenfalls hinzugefügt werden muss.

Im nachstehenden Beispiel wird ein vertrauenswürdiges Repository zur Datei NuGet.config hinzugefügt:

<trustedSigners>    
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
</repository>
</trustedSigners>
<trustedSigners>    
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
</repository>
</trustedSigners>

Hinzufügen vertrauenswürdiger Eigentümer​

Ein Repository kann mehrere vom Autor signierte Pakete aufweisen. In diesem Fall kann das <owners>-Tag dazu verwendet werden, nur Pakete zum Installieren zuzulassen, die von vertrauenswürdigen Autoren signiert wurden.

Fügen Sie die vertrauenswürdigen Autoren zwischen den <owners>-Tags hinzu, wie im folgenden Beispiel veranschaulicht.

<trustedSigners>
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
<owners>Author1;Author2</owners> 
</repository>
</trustedSigners>
<trustedSigners>
<repository name="UiPath Repository" serviceIndex="https://uipath.repository">
<certificate fingerprint="1234512345123451234512345123123123123123123123123123112312312E5" hashAlgorithm="SHA256" allowUntrustedRoot="true" />
<owners>Author1;Author2</owners> 
</repository>
</trustedSigners>

Signieren von Paketen​

  1. In Studio kann die Paketsignatur sowohl für Prozesse als auch für Bibliotheken über das Fenster Veröffentlichen oder die Registerkarte Zertifikatsignatur erfolgen.

  2. Fügen Sie im Abschnitt Zertifikatsignatur den Zertifikatspfad auf Ihrem lokalen Computer hinzu. Navigieren Sie mit der Schaltfläche Schaltfläche, um zum Pfad zu navigieren, falls erforderlich zum Pfad, falls erforderlich. Nur .pfx- und .p12-Zertifikatsdateiformate werden akzeptiert.

  3. Fügen Sie außerdem das Zertifikatpasswort und bei Bedarf einen optionalen Zertifikatzeitstempel hinzu. Wählen Sie Veröffentlichen aus. Die resultierende .nupkg -Datei ist mit einem Zertifikat und einem Zeitstmpel signiert, wenn ein solcher angegeben wurde.

Ergebnis​

Das Paket wird als signierte .nupkg -Datei veröffentlicht.

Zeitstempel sind eine sichere Möglichkeit, Datum und Uhrzeit zu verfolgen, zu der ein Paket signiert wurde. Um mehr über Zeitstempel im Kontext der NuGet-Paketsignierung zu erfahren, aktivieren Sie diesen Link.

Ist der Zeitstempel des Zertifikats ungültig, wird in Studio eine Fehlermeldung mit dem Projektnamen ausgegeben, nachdem Sie auf die Schaltfläche Veröffentlichen geklickt haben. Im Ausgabebereich wird eine Fehlermeldung protokolliert.

Hinweis:

Vor Version 2019.4 mit Studio erstellte Prozesse werden noch ausgeführt, egal ob signiert oder nicht, falls die Signaturverifizierung NICHT erzwungen wird.

Verwenden Sie das Befehlszeilentool für Massenaktualisierung, um mehrere Pakete zu signieren und sie dann an einem Speicherort zu veröffentlichen.

Hinweis:

Eine nicht signierte Abhängigkeit im Projekt kann verhindern, dass andere Abhängigkeiten aufgelöst werden, wenn die Funktion Abhängigkeit reparieren verwendet wird. Entfernen Sie das nicht signierte Paket aus dem Projekt, um signierte Abhängigkeiten aufzulösen.

Signing Assemblies​

Studio can sign the assemblies it generates for a project with your own code signing certificate, both in published packages and when you run or debug the project. Environments with application control policies that allow only signed code, such as Windows Defender Application Control (WDAC), can then load these assemblies.

Assembly signing requires one of the following signing tools:

  • signtool.exe - Set its path in Sign Tool Path in Settings > Locations, or in the SIGNTOOL_PATH environment variable. Sign Tool Path takes precedence over the environment variable.
  • osslsigncode - Set its path in the OSSLSIGNCODE_PATH environment variable. It is used when signtool is not configured.

Signing the assemblies of a published package​

To sign the assemblies in a package when you publish it, set the signing tool, and then select Sign assemblies in the Publish window. The Sign assemblies option is available only when Sign Tool Path points to an existing file.

  1. In Settings > Locations, set Sign Tool Path to the path of signtool.exe.
  2. In the Publish window, open the Certificate signing tab and enter the certificate details, as described in Signing a Package.
  3. Select Sign assemblies, and then select Publish.

The assemblies in the package are signed with the certificate, password, and timestamper from the Certificate signing tab before the package is created. To pre-fill the certificate path in the Publish window, set Default Publish Certificate in Settings > Locations.

When you publish from the command line, use the --sign-assemblies option together with --cer-path.

Signing assemblies when running and debugging​

To run and debug a project from signed assemblies, set the certificate that Studio uses to sign them. This is available for projects with the Windows and cross-platform compatibility.

  1. In Settings > Locations, set Dynamic DLLs Certificate to the path of a .pfx or .p12 certificate.
  2. Run or debug the project.
  3. In the Certificate Password dialog, enter the password of the certificate.

Studio copies the assemblies compiled for the project to the .local_signed folder, signs them, and runs the project from the signed copies. Only the assemblies that changed since the previous run are signed again. The certificate password is stored in Windows Credential Manager. If you cancel the Certificate Password dialog, the execution does not start. The .local_signed folder is not included in published packages.

Automation Ops policies and the governance file can set the three locations. For details, refer to Governance.

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support(opens in new window)

Möchten Sie lernen? UiPath Academy(opens in new window)

Haben Sie Fragen? UiPath-Forum(opens in new window)

Auf dem neuesten Stand bleiben