SSO für mehrere Anbieter mit Edge Encryption einrichten

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 3 Minuten Lesedauer
  • Richten Sie SSO für mehrere Anbieter ein, um die Anmeldung über die Edge Encryption Proxy-Server-URL oder Instanz-URL zu ermöglichen. Wenn Sie Single Sign-on (SSO) für mehrere Anbieter mit aktiviertem Edge Encryption implementieren, müssen sich einige Benutzer möglicherweise über den Proxy-Server Edge Encryption bei Ihrer Instanz anmelden, andere Benutzer hingegen nicht.

    Vorbereitungen

    • Aktivieren Sie das Plugin für die Installation des Single Sign-On-Installationsprogramms für mehrere Anbieter (com.snc.integration.sso.multi.installer).
    • Aktivieren Sie das Plugin Edge Encryption (com.glide.edgeencryption) und stellen Sie sicher, dass ein oder mehrere Proxy-Server in Ihrem Netzwerk eingerichtet sind.
    • Bestimmen Sie die URL für den Edge Encryption Proxy-Server, über den sich Benutzer mit SSO mehrerer Anbieter anmelden. Zum Ermitteln der URL eines Edge Encryption Proxy-Servers, siehe Edge Encryption wird installiert.
    Erforderliche Rolle: admin

    Warum und wann dieser Vorgang ausgeführt wird

    Der Benutzer, der sich anmeldet, muss die entsprechende URL verwenden, um sich anzumelden, entweder mit dem Edge-Proxy oder nicht mit dem Edge-Proxy.

    • Wenn alle Benutzer über den Edge Encryption Proxy-Server geleitet werden, richten Sie Ihren Anbieter-Identifizierungsdatensatz ein und definieren Sie die Proxy-Server-URL in den Feldern ServiceNow Homepage, Entitäts-ID/Aussteller und URI der Zielgruppe.
    • Um einige Benutzer über den Proxy-Server und einige Benutzer an die Instanz weiterzuleiten, erstellen Sie zwei Anbieter-Identifizierungsdatensätze. Beide Datensätze verwenden den gleichen Wert im Feld URL des Identitätsanbieters. Einer der Datensätze wird jedoch über den Proxy-Server geleitet, während der andere zur Instanz führt.
      • Melden Sie sich über den Instanznamen an: https:// <instance name> .service-now.com/login_with_sso.do?glide_sso_id= <sys_id des IdP-Datensatzes für Nicht-Edge-Proxy
      • Melden Sie sich über den Edge-Proxy an: https:// <edge hostname> :<port> /login_with_sso.do?glide_sso_id= <sys_id des IdP-Datensatzes für den Edge-Proxy

    Prozedur

    1. Aktivieren Sie die Duplizierung von Identitätsanbieter-URLs in Identitätsanbieter-Datensätzen.
      Eine eindeutige Einschränkung verhindert die Duplizierung der Identitätsanbieter-URL in zwei verschiedenen Identitätsanbieter-Datensätzen. Sie können die Duplizierung der URL des Identitätsanbieters in mehreren IdP-Datensätzen aktivieren, indem Sie ein Feld auf „false“ setzen.
      1. Navigieren zu Systemdefinition > Lexikon.
      2. Öffnen Sie Identitätsanbietertabelle [saml2_update1_properties] den Definitionsdatensatz für das Feld idp.
      3. Konfigurieren Sie das Formular, um das Feld Eindeutig hinzuzufügen.
      4. Stellen Sie sicher, dass der Wert im Feld Eindeutig auf Falsch gesetzt ist.
    2. Navigieren zu Mehrfachanbieter-SSO > Identity Provider.
    3. Erstellen Sie zwei Identitätsanbieter-Datensätze für denselben Identitätsanbieter: einen mit der Instanz-URL und einen mit der Edge Encryption Proxy-Server-URL.
      Informationen zum Erstellen eines Identitätsanbieter-Datensatzes finden Sie unter Externe Identitätsanbieter erstellen.
      1. Füllen Sie für die Edge Encryption Proxy-Server-URL das Formular mit diesen Werten aus.
        Feld Wert
        URL des Identitätsanbieters Importiert aus den IdP-Metadaten.

        ServiceNow Homepage

        Die URL für Ihre Proxy-Server-Startseite. Zum Beispiel: https://<proxy hostname>:<port>/navpage.do
        Entitäts-ID/Aussteller https://<proxy hostname>:<port>
        Zielgruppen-URI https://<proxy hostname>:<port>
      2. Klicken Sie auf Absenden.
      3. Füllen Sie für die Instanz-URL das Formular mit diesen Werten aus.
        Feld Wert
        URL des Identitätsanbieters Importiert aus den IdP-Metadaten.

        ServiceNow Homepage

        https://<instance>.service-now.com/navpage.do
        Entitäts-ID/Aussteller https://<instance>.service-now.com/navpage.do
        Zielgruppen-URI https://<instance>.service-now.com/navpage.do
      4. Klicken Sie auf Absenden.
    4. Wahlweise: Wenn Sie mehrere Identitätsanbieter verwenden, ändern Sie den MultiSSO-Installations-Exit.
      1. Navigieren zu Systemdefinition > Installationsausgänge.
        Das System zeigt die aktuelle Liste der Installations-Exits an.
      2. Öffnen Sie MultiSSO Installations-Exit.
      3. Lokalisieren Sie die folgende Anweisung im Feld Skript.
        var samlResponseTxt = request.getParameter("SAMLResponse");
        if (!GlideSession.get().isLoggedIn() && GlideStringUtil.notNil(samlResponseTxt)) {
            var idpRecord = this.getIdPRecord(request);
            if (idpRecord) {
                SSO_Helper.debug("IdP found based on SAML response: " + idpRecord.getUniqueValue());
                return new SSO_Helper(idpRecord.getUniqueValue(), false, null, true);
            }
        }
      4. Ersetzen Sie die Anweisung durch den folgenden Code.
        var samlResponseTxt = request.getParameter("SAMLResponse");
        if (!GlideSession.get().isLoggedIn() && GlideStringUtil.notNil(samlResponseTxt)) {
           /* // You have two profiles that use the same IdP entity id it cannot use
           // the IdP issuer / entity id from the response otherwise it may result in the
           // wrong IdP profile. IdP initiated login will not work
           var idpRecord = this.getIdPRecord(request);
           if (idpRecord) {
              SSO_Helper.debug("IdP found based on SAML response: " + idpRecord.getUniqueValue());
              return new SSO_Helper(idpRecord.getUniqueValue(), false, null, true);
              }*/
           return new SSO_Helper(null, true);
           }
        Hinweis:
        Die durch IdP initiierte Anmeldung funktioniert in dieser Konfiguration nicht.
      5. Klicken Sie auf Aktualisieren.
    5. Wahlweise: Wenn Sie mehr als ein Unternehmen verwenden, konfigurieren Sie Benutzer für Multi-Provider-SSO und aktualisieren Sie die sys_id des Identitätsanbieter-Datensatzes abhängig vom Benutzer.

      Weitere Informationen finden Sie unter Benutzer für Mehrfachanbieter-SSO konfigurieren.

      • Um einen Benutzer für die Anmeldung über den Edge Encryption Proxy-Server zu konfigurieren, verwenden Sie die sys_id des Identitätsanbieter-Datensatzes, der die Edge Encryption Proxy-Server-URL verwendet.
      • Um einen Benutzer für die Anmeldung an der Instanz zu konfigurieren, verwenden Sie die sys_id des Identitätsanbieter-Datensatzes, der die Instanz-URL verwendet.
      Tabelle : 1. Login-URLs
      URL Login-Ziel
      https://<proxy hostname>:<port>/login_with_sso.do?glide_sso_id=<sys_id of the IdP record for the proxy server URL> Meldet sich über den Proxy-Server an.
      https://<instance name>.service-now.com/login_with_sso.do?glide_sso_id=<sys_id of IdP record for the instance URL> Meldet sich über die Instanz an.