de:loginintegration

Integration der LiveConfig-Anmeldung in eigene Webseiten

Inhalt

Dieser Artikel beschreibt, wie man die Anmeldung an LiveConfig nahtlos in die eigene Website integrieren kann.

Voraussetzungen

Sie benötigen für LiveConfig ein SSL-Zertifikat, welches von allen aktuellen Browsern ohne Rückfrage akzeptiert wird. Ein selbst-signiertes Zertifikat genügt nicht, da die Browser keine Inhalte externer Seiten akzeptieren wenn diese ein praktisch ungültiges Zertifikat besitzen.

Vorgehen

Vor dem eigentlichen Anmelde-Formular müssen Sie etwas JavaScript-Code von LiveConfig laden und einbetten. Zuerst müssen Sie in die Variable LC_prefix die Basisadresse Ihrer LiveConfig-Installation eintragen (https://, der Domainname und ggf. die Portnummer):

<script type="text/javascript">LC_prefix='https://liveconfig.domain:8443';</script>

Anschließend muss der Login-Programmcode von LiveConfig nachgeladen werden. Sie können den nachzuladenden Code nicht statisch in Ihre Seite einbauen, sondern er muss von LiveConfig geladen werden, da sonst die Anmeldedaten nicht an LiveConfig gesendet werden können (bedingt durch Sicherheitseinschränkungen der Browser):

<script type="text/javascript" src="https://liveconfig.domain:8443/res/m/core/login.js"></script>

Nun können Sie Ihr Anmeldeformular beliebig gestalten. Das Eingabefeld für den Benutzernamen muss den Namen l (kleines »L«) haben, und das Passwortfeld den Namen p.

loginformular.html
<form action="https://liveconfig.domain:8443/liveconfig/login" method="post" id="frmLogin">
  <table>
    <tr>
      <th>Benutzername:</th>
      <td><input type="text" name="l" size="20" maxlength="64"/></td>
    </tr>
    <tr>
      <th>Passwort:</th>
      <td><input type="password" name="p" size="20" maxlength="64"/></td>
    </tr>
    <tr>
      <td></td>
      <td>
        <input type="submit" value="anmelden"/>
        <input type="hidden" name="a" value="1"/>
        <input type="hidden" name="exiturl" value="http://meine.domain/abgemeldet"/>
        <input type="hidden" name="lang" value="de"/>
      </td>
    </tr>
  </table>
</form>

Wie Sie sehen, muss außerdem noch ein verstecktes Eingabefeld a mit dem Wert »1« (eins) eingerichtet werden. Optional können Sie noch ein Feld exiturl definieren; an diese Adresse wird der Benutzer dann nach dem Logout weitergeleitet.

Nach der Formulardefinition muss per JavaScript die Anmeldefunktion initialisiert werden. Der nachfolgende Code prüft ob der notwendige Anmeldecode korrekt nachgeladen wurde und initialisiert anschließend die Anmeldefunktion.

<script type="text/javascript">
  if (LC && LC.customLogin) {
    // Login code successfully loaded from LiveConfig server.
    LC.customLogin.init(document.getElementById('frmLogin'));
  }
</script>

Sollte es ein Problem beim Nachladen des Anmelde-Codes gegeben haben, funktioniert die Anmeldung normalerweise trotzdem; in diesem Falle leitet der Browser den Benutzer direkt auf die LiveConfig-Login-Seite weiter.

Neu ab Version 1.2.5: über ein INPUT- oder SELECT-Feld mit dem Namen lang können Sie auch die Sprache einstellen, in der die LiveConfig-Session gestartet werden soll, unabhängig von der Profileinstellung des jeweiligen Benutzers. Wird lang nicht angegeben oder leer gelassen, so wird die Session mit der im Profil gespeicherten Sprache gestartet.

Neu ab Version 1.2.5: über die Funktion LC.i18n.setLanguage() wird außerdem die Sprache für Rückmeldungen eingestellt (also z.B. „Bitte warten…“ oder „Anmeldung fehlgeschlagen“). Mögliche Werte sind derzeit en (Englisch) und de (Deutsch).

<script type="text/javascript">
  if (LC && LC.customLogin) {
    // Login code successfully loaded from LiveConfig server.
    LC.i18n.setLanguage('de');
    LC.customLogin.init(document.getElementById('frmLogin'));
  }
</script>

Neu ab Version 1.3.1: es kann nun mit LC.customLogin.errorHandler() eine eigene Funktion zur Behandlung von Anmeldefehlern festgelegt werden. Diese wird bei Bedarf mit der jeweiligen Fehlermeldung als Parameter aufgerufen. Beispiel:

<script type="text/javascript">
  if (LC && LC.customLogin) {
    // Login code successfully loaded from LiveConfig server.
    LC.customLogin.init(document.getElementById('frmLogin'));
    LC.customLogin.errorHandler(fnError);
  }
    function fnError(msg) {
    // simply display error message
    alert('Anmeldung fehlgeschlagen:\r\n' + msg);
  }
</script>
de/loginintegration.txt · Zuletzt geändert: 2015/05/27 12:33 von wikiadmin

Benutzer-Werkzeuge