SSO via Office 365

Nutzen Sie Single-Sign-On via Microsoft Office 365, um sich bei Ihrer Enginsight Installation anzumelden.

Enginsight im Azure AD registrieren

Registrieren Sie Enginsight zunächst als neue APP in Ihrem Azure Active Directory. Dazu können Sie einfach der Step by Step Anleitung von Microsoft folgen.

Fügen Sie, wie im Screenshot abgebildet, eine Umleitungs-URl hinzu und ergänzen Sie diese durch Ihre API Domain.

Nachdem Sie Enginsight erfolgreich registriert haben müssen Sie lediglich Ihre clientId, clientSecret oder Ihr clientCertificate in der Enginsight Konfiguration hinterlegen

Anpassen der Enginsight Konfiguration

Wenn Sie auf dem Applikationsserver eine Konfigurationsdatei anpassen, muss im nachhinein immer die setup.sh ausgeführt werden. Erst dann werden die Einstellungen wirksam.

  1. Öffnen Sie die Konfigurationsdatei in einem Editor Ihrer Wahl, zum Beispiel nano.

nano /opt/enginsight/enterprise/conf/services/config.json
  1. Tragen Sie im Abschnitt "microsoftAuthenticationLibrary" die Daten aus Ihrem Azure AD ein.

"microsoftAuthenticationLibrary": [{
    "scope": "\\@.*",
    "clientId": "",
    "clientSecret": "",
    "clientCertificate": {
      "thumbprint": "",
      "privateKey": ""
    },
    "authority": "https://login.microsoftonline.com/<TENANT_ID>"
  }],

Mit dem scope können Sie die Konfiguration auf eine bestimmte AD Domain einschränken. In den meisten Fällen wird keine Einschränkung nötig sein und Sie brauchen den Wert nicht anpassen.

Die clientId erhalten Sie aus Ihrem Azure AD, dort auch als AnwendungsId bezeichnet.

Gleiches gilt für clientSecret.

Alternativ zuclientSecret kann auch mit einem clientCertificate gearbeitet werden. Folgen Sie hierzu bitte der Microsoft Dokumentation, um ein Zertifikat auszustellen.

Die TENANT_ID ist Ihre Azure AD VerzeichnisId

Beispiel einer korrekten Konfiguration:

"microsoftAuthenticationLibrary": [{
    "scope": "\\@.*",
    "clientId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
    "clientSecret": "xxxxx~xxxxxxxxx.xxxxxxxxx",
    "authority": "https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
  }],
  1. Speichern Sie die neue Konfigurationsdatei (Strg+o) und bestätigen Sie den Speicherprozess. Schließen Sie nano (Strg+x).

  2. Öffnen Sie /opt/enginsight/enterprise/conf/ui-m1/environment.js

  3. Tragen Sie im Abschnitt "var ENV = {" die folgende Zeile ein:

loginVia: ['ssoOffice365', 'usernamePassword'],


Das gesamte Script sollte nun wie folgt aussehen:


module.exports = function (environment) {
  var ENV = {
    loginVia: ['ssoOffice365', 'usernamePassword'],
    hinting: true,
    modulePrefix: 'ngs-ui-m1',
    environment: environment,
    rootURL: '/',
    locationType: 'auto',
    recaptchaKey: '',
    EmberENV: {
      FEATURES: {}
    },

    APP: {}
  };

  ENV.apiDomain = '%%API_URL%%';
  ENV.onpremise = {
    version: 1
  };

  return ENV;
};
  1. Navigieren Sie in /opt/enginsight/enterprise

./setup.sh

Login via Microsoft Office 365

Beachten Sie bitte das alle Nutzer, für die der SSO greifen soll zuvor in der Enginsight App unter Einstellungen // Teammitglieder angelegt sein müssen.

Wählen Sie nach erfolgreicher Einrichtung einfach die entsprechende Authentifizierungsmethode aus und loggen Sie sich mit ihr Mail Adresse ein.

Deaktivierung des Standard-Login

Nach dem erfolgreichen Test der Authentifizierung via SSO besteht die Möglichkeit den Standard-Login Ihrer On-Premises Instanz zu deaktivieren. Gehen Sie hierzu wie folgt vor:

  1. Öffnen Sie die Konfigurationsdatei in einem Editor Ihrer Wahl, zum Beispiel nano.

nano /opt/enginsight/enterprise/conf/ui-m1/environment.js
  1. Ändern Sie die 3. Zeile zu:

loginVia: ['ssoOffice365'],
  1. Speichern Sie die neue Konfigurationsdatei (Strg+o) und bestätigen Sie den Speicherprozess. Schließen Sie nano (Strg+x).

  2. Navigieren Sie in /opt/enginsight/enterprise

./setup.sh

Last updated