Service Principal Name (SPN)-Konfiguration für Kerberos-Authentifizierung

Wenn Sie die folgenden Verbindungsmodi mit einer Blue Prism Server Verbindung verwenden, muss ein Service Principal Name (SPN) für das AD-Konto (Active Directory) konfiguriert werden, unter dem jede Blue Prism Server Dienstinstanz ausgeführt wird:

  • WCF: SOAP mit Nachrichtenverschlüsselung und Windows-Authentifizierung
  • WCF: SOAP mit Transportverschlüsselung und Windows-Authentifizierung
  • .NET Remoting: Sicher

Der Grund dafür ist, dass das Microsoft Negotiate Security Package verwendet wird, um den besten Security Support Provider (SSP) für die Authentifizierung der Verbindung auszuwählen, wenn sich ein interaktiver Blue Prism Client oder eine Laufzeitressource über einen der oben genannten Verbindungsmodi mit einem Anwendungsserver verbindet. Der interne Code des interaktiven Blue Prism Clients stellt die erwartete SPN für das Microsoft Negotiation Security Package bereit, das Microsoft Negotiation auffordert, den Kerberos SSP über den New Technology LAN Manager (NTLM) SSP auszuwählen, vorausgesetzt, die SPN ist in Active Directory vorhanden. Wenn die SPN in Active Directory nicht vorhanden ist, schlägt die Kerberos-Authentifizierung fehl. Weitere Informationen zum Windows-Sicherheitsupdate für CVE-2022-21920, das sich auf dieses Verhalten auswirkt, finden Sie in diesem Knowledge Base-Artikel. Wenn in Blue Prism 7.0.2 die SPN nicht in Active Directory vorhanden ist und wenn /forcentlm <flag>in Automate C eingestellt ist, wird der NTLM SSP verwendet.

Es wird empfohlen, sich an das IT-Team Ihrer Organisation zu wenden, um Unterstützung bei dieser Konfiguration zu erhalten und die Konfiguration zunächst in einer Nicht-Produktionsumgebung zu testen.

Diese Konfiguration gilt für alle Blue Prism Umgebungen. Wenn sich jedoch das Active Directory-Konto, unter dem Ihre BP Server-Instanzen ausgeführt werden, in einer anderen Domain befindet als das Active Directory-Konto, das für den interaktiven Blue Prism Client und die Laufzeitressource verwendet wird, empfehlen wir die Installation des Windows-Sicherheitsupdates für CVE-2022-21920 nicht. Wenn Sie es bereits installiert haben, empfehlen wir Ihnen, es zu deinstallieren. Ab Blue Prism 7.0.2 ist die unten beschriebene zusätzliche Konfiguration in Automate C erforderlich.

Um die SPN zu konfigurieren, befolgen Sie die folgenden Schritte für jede Blue Prism Serverdienst-Instanz:

  1. Melden Sie sich beim Blue Prism Server mit einem privilegierten Windows-Benutzerkonto an, das Mitglied der Gruppe Domain-Admins oder Unternehmens-Admins ist.

    Weitere Details, einschließlich der erforderlichen Berechtigungen, finden Sie in der Microsoft-Dokumentation in diesem Thema. Dies ist ein wesentlicher Schritt, den Sie mit dem IT-Team Ihrer Organisation besprechen müssen, um sicherzustellen, dass der Befehl Setspn nicht aufgrund von fehlenden Kontoberechtigungen fehlschlägt.

  2. Öffnen Sie die Eingabeaufforderung als Administrator auf dem Anwendungsserver und führen Sie den folgenden Befehl aus.

    Wenn der Blue Prism Server als lokales Systemkonto ausgeführt wird:

    Kopieren
    Setspn -S HTTP/SERVER_FQDN:SERVER_PORT/BPServer COMPUTER_HOSTNAME 

    Wenn der Blue Prism Server als Benutzerkonto ausgeführt wird:

    Kopieren
    Setspn -S HTTP/SERVER_FQDN:SERVER_PORT/BPServer DOMAIN\Username

    Dabei gilt:

    • HTTP-Konten für HTTP und HTTPS. Ändern Sie den Befehl nicht, um HTTPS einzuschließen, da die Konfiguration fehlschlägt.

    • SERVER_FQDN:SERVER_PORT muss der vollständig qualifizierte Domain-Name (FQDN) des Blue Prism Anwendungsservers sein.
    • COMPUTER_HOSTNAME ist der Hostname des Computers, wenn der BP Serverdienst als lokales Systemkonto ausgeführt wird.

    • DOMAIN\Username ist der Domain-Benutzername, wenn der BP Serverdienst als Benutzerkonto ausgeführt wird.

      Dies sollte mit der Einstellung Anmelden als im Fenster Blue Prism Servereigenschaften (Lokaler Computer) übereinstimmen.

    Beispiel mit lokalem System:

    Beispiel mit DOMAIN\Username:

  3. Nachdem Sie die SPN festgelegt haben, müssen Sie warten, bis der Kerberos-Ticket-Cache erneuert wird (die Standardeinstellung ist 15 Minuten, kann aber über die Gruppenrichtlinie geändert werden). Weitere Informationen finden Sie in der Kerberos-Authentifizierungsdokumentation.

    Alternativ können Sie entweder:

    • Starten Sie den interaktiven Blue Prism Client oder die Laufzeitressource neu; oder
    • Öffnen Sie auf dem Computer, auf dem der interaktive Client oder die Laufzeitressource ausgeführt wird, die Eingabeaufforderung und führen Sie die Klist-Löschung aus, um die Kerberos-Tickets zu aktualisieren.

      Dieser Befehl sollte nicht innerhalb einer erhöhten Eingabeaufforderung ausgeführt werden, da er nicht alle Kerberos-Tickets des Benutzers löscht.

  4. Stellen Sie sicher, dass dies wie erwartet funktioniert, indem Sie sich über einen interaktiven Blue Prism Client, der auf einem anderen Computer ausgeführt wird, mit dem Blue Prism Server verbinden.
  5. Wiederholen Sie die obigen Schritte für jede Instanz des Blue Prism Serverdienstes, die auf jedem Blue Prism Server ausgeführt wird.

Überprüfen Sie die SPN-Eingaben und entfernen Sie eine falsche SPN

  1. Um SPN-Einträge für Fehlerbehebungszwecke zu überprüfen, können Sie eine Liste der hinzugefügten SPNs auf dem Anwendungsserver mit dem folgenden Befehl sehen:

    Kopieren

    Setspn -L KONTONAME

  2. Beispiel einer SPN-Liste:

  3. Überprüfen Sie die Einträge für die SPNs, die Sie für den BP Serverdienst hinzugefügt haben. Sie können den Fehler entfernen, indem Sie den unten aufgeführten Befehl verwenden:

    Kopieren
    Setspn -D SPN_NAME ACCOUNTNAME

    Wobei SPN_NAME der Name ist, der in der SPN-Eingabeliste angezeigt wird, z. B. HTTP/SERVER_FQDN:SERVER_PORT/BPServer.

Zusätzliche Konfiguration für Blue Prism Anwendungsserver in lastausgeglichenen Umgebungen

Es ist wichtig, dass alle Instanzen des Blue Prism Serverdienstes im gleichen Load Balancer-Pool unter demselben Dienstkonto ausgeführt werden und die SPN für dieses Konto registriert ist.

Darüber hinaus wird empfohlen, SPNs für die FQDNs des Anwendungsservers auf demselben Dienstkonto zu registrieren, da dies das Testen einer direkten Verbindung zu den Anwendungsservern ermöglicht. Weitere Informationen finden Sie unter SPN-Fehlerbehebung.

Zusätzliche Konfiguration für Active Directory-Authentifizierung in Umgebungen mit mehreren Gesamtstrukturen

Diese Funktion ist nur ab Blue Prism 7.0.2 verfügbar.

Um die Kerberos-Authentifizierung in Blue Prism Umgebungen zu unterstützen, die für die Verwendung der Active Directory-Authentifizierung in mehreren Gesamtstruktursystemen konfiguriert sind, müssen die folgenden Einstellungen in Automate C konfiguriert werden:

  • /setkerberosrealm – Zum Beispiel /setkerberosrealm meinunternehmen.de. Muss für jede BP Server Verbindung im interaktiven Client konfiguriert werden, bei der sich der Kerberos-Bereich des Benutzers von dem des Benutzerkontos unterscheidet, das für die Ausführung vom BP Server konfiguriert ist.

    Der Kerberos-Bereich ist in der Regel derselbe wie der Domain-Name. Bitte erkundigen Sie sich jedoch bei Ihrem IT-Team nach dem richtigen Wert. Dabei sollte es sich um den Bereich des Dienstkontos handeln, dass den Blue Prism Server Dienst ausführt. In einigen Umgebungen kann es erforderlich sein, dieselbe Konfiguration anzuwenden, in der das Dienstkonto in einer anderen Domain innerhalb derselben Gesamtstruktur vorhanden ist. Sie können überprüfen, ob der Kerberos-Bereich angegeben werden muss, indem Sie einen „klist get“-Befehl für einen SPN ausführen. Weitere Informationen finden Sie unter SPN-Fehlerbehebung.

  • /forcentlm <flag> – Zum Beispiel /forcentlm true. Zwingt das Microsoft Negotiate Security Package dazu, bei der Authentifizierung der Blue Prism Serververbindung „New Technology LAN Manager (NTLM)“ als Security Support Provider (SSP) für die zuletzt verwendete oder angegebene Verbindung (mit dem Switch /dbconname) auszuwählen. Diese Option wird bereitgestellt, damit NTLM verwendet werden kann, wenn Kerberos nicht verfügbar oder nicht konfiguriert ist.

    Bitte wenden Sie sich an Ihr Sicherheitsteam, bevor Sie diese Option aktivieren, da NTLM als weniger sicheres Protokoll gilt.