Zum Inhalt

SSO per Injektion in Webanwendungen mit dem Werkzeug CyberElements SSO Configurator konfigurieren

Die Konfiguration des SSO (Single Sign-On) in Webanwendungen sieht sich heute einer zunehmenden Vielfalt und Komplexität der Anmeldeformulare gegenüber, weshalb die Konfiguration beim Anlegen der Webanwendung in der Konsole manuell vorgenommen werden muss.

Um diese Einschränkung zu überwinden, hat unser Team die Erweiterung CyberElements SSO Configurator entwickelt, mit der sich die Konfiguration der Anmeldeseite mühelos auslesen lässt.

type:youtube

Installation der Erweiterung

Die Erweiterung CyberElements SSO Configurator ist mit auf Chromium basierenden Browsern (Google Chrome, Opera GX, Microsoft Edge usw.) und mit Firefox kompatibel.

  • Laden Sie das .zip-Archiv aus der Toolbox der Administrationskonsole herunter und entpacken Sie es.

  • Rufen Sie das Modul zur Verwaltung der Erweiterungen auf.
  • Klicken Sie auf die Schaltfläche „Load unpacked extension“.

Hinweis

Ist die Schaltfläche „Load unpacked extension“ nicht sichtbar, prüfen Sie, ob der Entwicklermodus aktiviert ist.

  • Wählen Sie den entpackten Ordner aus.

  • Klicken Sie in dem Fenster, das im Browser erscheint, auf die Schaltfläche „Add“.

  • Die Erweiterung ist Ihrem Browser hinzugefügt.

  • Laden Sie die Datei .xpi aus der Toolbox der Administrationskonsole herunter.

  • Öffnen Sie diese Datei durch Doppelklick auf die heruntergeladene Datei.
  • Es öffnet sich ein Firefox-Fenster, und ein Dialogfenster fragt, ob Sie die Erweiterung hinzufügen möchten. Klicken Sie auf die Schaltfläche „Add“.
  • Die Erweiterung ist Ihrem Browser hinzugefügt.

Die Web-SSO-Konfiguration mit CyberElements SSO Configurator auslesen

Einfaches Anmeldeformular

Hinweis

In diesem Abschnitt dient die SSO-Konfiguration für die Website MySystancia als Beispiel.

Rufen Sie zunächst das Anmeldeformular Ihrer Webanwendung auf.

Starten Sie anschließend die Erweiterung durch Klick auf die Schaltfläche type:inline.

Die Erweiterung öffnet sich in einem Bereich am linken Rand Ihres Browsers.

Die Erweiterung erkennt automatisch die Felder für den Benutzernamen, das Passwort und die Schaltfläche „Log in“ und hebt die entsprechenden Felder hervor.

Prüfen Sie, ob die erkannten Felder zutreffen, und klicken Sie auf die Schaltfläche type:inline, um die Konfiguration in der Zwischenablage zu speichern.

Anmeldeformular über mehrere Seiten

Hinweis

In diesem Abschnitt dient die SSO-Konfiguration für die Anwendung Microsoft Outlook als Beispiel.

Die Anmeldeformulare der Webanwendungen von Microsoft sind komplexer und verteilen sich über mehrere Seiten. Die von der Erweiterung CyberElements SSO Configurator erkannte Konfiguration muss daher angepasst werden.

Rufen Sie zunächst das Anmeldeformular Ihrer Webanwendung auf.

Starten Sie anschließend die Erweiterung durch Klick auf die Schaltfläche type:inline.

Die Erweiterung öffnet sich in einem Bereich am linken Rand Ihres Browsers.

Die Erweiterung erkennt automatisch die Felder für den Benutzernamen, das Passwort und die Schaltfläche „Log in“ und hebt die entsprechenden Felder hervor.

In unserem Beispiel ist auf der ersten Seite nur das Feld für die Kennung vorhanden.

Beachten Sie, dass die Schaltfläche „Log in“ nicht richtig erkannt wurde und auf den Link zur Kontoerstellung verweist. Klicken Sie auf das Symbol type:inline der Aktion button und wählen Sie die Schaltfläche „Next“ aus.

Da die Konfiguration nach demselben Prinzip wie ein Skript funktioniert, muss die angelegte Aktion anschließend vor das Passwortfeld verschoben werden. Ziehen Sie das hinzugefügte Feld per Drag-and-drop an die zweite Stelle.

Geben Sie danach eine E-Mail-Adresse ein und klicken Sie auf die Schaltfläche „Next“, um zur nächsten Seite zu gelangen und auf das Passwortfeld zuzugreifen.

Klicken Sie auf die Schaltfläche type:inline der Aktion password und wählen Sie das Passwortfeld aus.

Fügen Sie anschließend mit der Schaltfläche type:inline eine Aktion hinzu, klicken Sie auf die Schaltfläche type:inline der hinzugefügten Aktion und wählen Sie die Schaltfläche „Connect“ aus.

Klicken Sie auf die Schaltfläche type:inline, um die Konfiguration in der Zwischenablage zu speichern.

Anmeldeformular mit zufälligen Feldern

Hinweis

In diesem Abschnitt dient die SSO-Konfiguration für eine auf GLPI basierende Anwendung als Beispiel.

Je nach Webanwendung ist es möglich, dass die Kennungen der Felder des Anmeldeformulars zufällig erzeugt werden und daher bei einer erneuten Anmeldung nicht mehr übereinstimmen.

Um herauszufinden, ob Ihre Anwendung die Kennungen bestimmter Felder zufällig erzeugt, lesen Sie die Konfiguration des Anmeldeformulars ein erstes Mal aus und fügen Sie sie in eine Textdatei ein.

Laden Sie danach die Anmeldeseite neu und lesen Sie die Konfiguration des Anmeldeformulars erneut aus. Fügen Sie sie in eine andere Textdatei ein.

Vergleichen Sie anschließend die beiden Konfigurationen:

Konfiguration 1 Konfiguration 2
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  "https://glpi.domain.local/index.php": {
    "login": {
      "id": "login_name",
      "name": "fielda67a46f7296fa6",
      "type": "text",
      "value": "",
      "order": 1,
      "objectType": "input",
      "tag": "input"
    },
    "password": {
      "id": "login_password",
      "name": "fieldb67a46f7296fa9",
      "type": "password",
      "value": "",
      "order": 2,
      "objectType": "input",
      "tag": "input"
    },
    "button": {
      "id": "",
      "name": "submit",
      "type": "submit",
      "value": "",
      "order": 3,
      "objectType": "button",
      "tag": "button"
    }
  }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  "https://glpi.domain.local/index.php": {
    "login": {
      "id": "login_name",
      "name": "fieldb78b57f83a70b7",
      "type": "text",
      "value": "",
      "order": 1,
      "objectType": "input",
      "tag": "input"
    },
    "password": {
      "id": "login_password",
      "name": "fieldc79b57083a70ba",
      "type": "password",
      "value": "",
      "order": 2,
      "objectType": "input",
      "tag": "input"
    },
    "button": {
      "id": "",
      "name": "submit",
      "type": "submit",
      "value": "",
      "order": 3,
      "objectType": "button",
      "tag": "button"
    }
  }
}

Beachten Sie, dass die Elemente login und password unterschiedliche Namen tragen: Es handelt sich also um zufällig erzeugte Felder. Damit die Konfiguration funktioniert, ändern Sie sie manuell und entfernen Sie die Bezeichnung der zufälligen Felder:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
    "https://glpi.domain.local/index.php": {
        "login": {
            "id": "login_name",
            "name": "",
            "type": "text",
            "value": "",
            "order": 1,
            "objectType": "input",
            "tag": "input"
        },
        "password": {
            "id": "login_password",
            "name": "",
            "type": "password",
            "value": "",
            "order": 2,
            "objectType": "input",
            "tag": "input"
        },
        "button": {
            "id": "",
            "name": "submit",
            "type": "submit",
            "value": "",
            "order": 3,
            "objectType": "button",
            "tag": "button"
        }
    }
}

Die Anwendung in CyberElements anlegen

Aktivieren Sie beim Anlegen der Webanwendung in der Konsole CyberElements das SSO für die Anwendung, indem Sie im Auswahlmenü die Option „Enabled“, „Request“ oder „Fixed“ auswählen.

Aktivieren Sie anschließend das Kontrollkästchen „SSO on classic HTML forms“.

Wählen Sie zuletzt den SSO-Typ „Injection“ aus und fügen Sie die im vorherigen Abschnitt ausgelesene Konfiguration in das Feld „Injection settings“ ein.

Das SSO ist nun für Ihre Anwendung konfiguriert.