Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Erste Orientierung » Praktische Einführungen in MobiLink » Praktische Einführung: .NET und Java für benutzerdefinierte Authentifizierung verwenden

 

Lektion 1: Java- oder .NET-Klasse für die benutzerdefinierte Authentifizierung erstellen (serverseitig)

In dieser Lektion kompilieren Sie eine Klasse mit Java- oder .NET-Logik für die benutzerdefinierte Authentifizierung.

MobiLink-Server-API für .NET

Zur Ausführung der .NET-Synchronisationslogik muss der MobiLink-Server Zugriff auf die Klassen in iAnywhere.MobiLink.Script.dll haben. iAnywhere.MobiLink.Script.dll enthält ein Repository von MobiLink .NET API-Klassen, die Sie in Ihren .NET-Methoden verwenden können. Wenn Sie Ihre .NET-Klasse kompilieren, referenzieren Sie iAnywhere.MobiLink.Script.dll.

MobiLink-Server-API für Java

Um Java-Synchronisationslogik auszuführen, muss der MobiLink-Server Zugriff auf die Klassen in mlscript.jar haben. mlscript.jar enthält eine Sammlung von MobiLink Java-Server-API-Klassen zur Verwendung in Ihren Java-Methoden. Wenn Sie Ihre Java-Klasse kompilieren, referenzieren Sie mlscript.jar.

♦  So erstellen Sie Java- oder .NET-Klassen für die benutzerdefinierte Authentifizierung
  1. Erstellen Sie mit Java oder .NET eine Klasse mit dem Namen MobiLinkAuth.

    Die Klasse MobiLinkAuth umfasst die Methode authenticateUser für das Synchronisationsereignis authenticate_user. Das Ereignis authenticate_user enthält Parameter für Benutzer und Kennwort. Sie geben das Authentifizierungsergebnis im INOUT-Parameter authentication_status zurück.

    Geben Sie für Java Folgendes ein:

    import ianywhere.ml.script.*;
    
    public class MobiLinkAuth
    {
    
     public void authenticateUser (
      ianywhere.ml.script.InOutInteger authentication_status,
      String user,
      String pwd,
      String newPwd )
     {
       // to do...
    
     }
    
    }

    Geben Sie für .NET Folgendes ein:

    using iAnywhere.MobiLink.Script;
    
    public class MobiLinkAuth
    {
      public void authenticateUser  (
        ref int authentication_status,
        string user,
        string pwd,
        string newPwd)
      { 
        
       // to do...
    
      }
    }
  2. Schreiben Sie die Methode authenticateUser.

    Diese praktische Einführung beschreibt eine einfache benutzerdefinierte Authentifizierung. Die Authentifizierung ist erfolgreich, wenn der Benutzername mit "ML" beginnt.

    Hinweis

    Sie registrieren die Methode authenticateUser für das Synchronisationsereignis authenticate_user in Lektion 2: Java- oder .NET-Skripten für das Ereignis authenticate_user registrieren

    Geben Sie für Java Folgendes ein:

    public void authenticateUser (
     ianywhere.ml.script.InOutInteger authentication_status,
     String user,
     String pwd,
     String newPwd ) {
    
    if (user.substring(0,2).equals("ML")) {
            // success: an auth status code of 1000
            authentication_status.setValue(1000);
        } else {
            // fail: an authentication_status code of 4000
            authentication_status.setValue(4000);
        }
    }

    Geben Sie für .NET Folgendes ein:

    public void authenticateUser(
     ref int authentication_status,
     string user,
     string pwd,
     string newPwd ) {
    
        if(user.Substring(0,2)=="ML") {
            // success: an auth status code of 1000
            authentication_status = 1000;
        } else { 
            // fail: and authentication_status code of 4000
            authentication_status = 4000;
        }
    }
  3. Kompilieren Sie die MobiLinkAuth-Klasse.

    • Speichern Sie die Datei für Java als MobiLinkAuth.java in c:\mlauth. Navigieren Sie zu c:\mlauth. Führen Sie zum Kompilieren der Datei folgenden Befehl aus:

      javac MobiLinkAuth.java -classpath "Installationsverzeichnis\java\mlscript.jar"

      Die Datei MobiLinkAuth.class wird generiert.

    • Speichern Sie die Datei für .NET als MobiLinkAuth.cs in c:\mlauth.

    • Öffnen Sie eine Eingabeaufforderung und navigieren Sie zum Verzeichnis c:\mlauth. Führen Sie zum Kompilieren der Datei folgenden Befehl aus:

      csc /out:c:\mlauth\MobiLinkAuth.dll /target:library /reference:"%SQLANY11%\Assembly\v2\iAnywhere.MobiLink.Script.dll" MobiLinkAuth.cs

      Die Assembly MobiLinkAuth.dll wird generiert.

Weitere Hinweise

Weitere Hinweise zum Ereignis authenticate_user sowie eine Tabelle mit den Rückgabecodes von authentication_status finden Sie unter authenticate_user (Verbindungsereignis).

Weitere Hinweise zur Implementierung einer benutzerdefinierten Authentifizierung mit Java oder .NET finden Sie unter Benutzerauthentifizierung mit Java und .NET.

Ein ausführliches Beispiel zur benutzerdefinierten Authentifizierung mit Java finden Sie unter Java-Synchronisationsbeispiel.

Ein ausführliches Beispiel zur benutzerdefinierten Authentifizierung mit .NET finden Sie unter .NET-Synchronisationsbeispiel.