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

SAP Sybase SQL Anywhere 16.0 (Deutsch) » MobiLink - Erste Orientierung » Praktische Einführungen in MobiLink » Praktische Einführung: Der Einsatz von Java oder .NET für die benutzerdefinierte Authentifizierung

 

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

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

Voraussetzungen

Der MobiLink-Server muss Zugriff auf die Klassen in iAnywhere.MobiLink.Script.dll haben, damit die .NET-Synchronisationslogik ausgeführt werden kann. iAnywhere.MobiLink.Script.dll enthält eine Sammlung von MobiLink .NET-Server-API-Klassen zur Verwendung in Ihren .NET-Methoden. Wenn Sie Ihre .NET-Klasse kompilieren, referenzieren Sie iAnywhere.MobiLink.Script.dll.

In dieser Lektion wird davon ausgegangen, dass Sie die Rollen und Privilegien haben, die im Abschnitt "Privilegien" am Anfang dieser praktischen Einführung aufgeführt sind: Praktische Einführung: Der Einsatz von Java oder .NET für die benutzerdefinierte Authentifizierung.

Kontext und Bemerkungen

Hinweise zum Erstellen von .NET-Klassen für die benutzerdefinierte Authentifizierung finden Sie unter Lektion 1: Eine Java-Klasse für die benutzerdefinierte Authentifizierung (serverseitig) erstellen.

 Aufgabe
  1. Erstellen Sie eine Klasse mit dem Namen MobiLinkAuth und schreiben Sie eine authenticateUser-Methode.

    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.

    Hinweis

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

    Verwenden Sie den folgenden Code für Ihre Serveranwendung:



    using iAnywhere.MobiLink.Script;
    
    public class MobiLinkAuth {
        public void authenticateUser(
            ref int authentication_status,
            string user,
            string pwd,
            string newPwd ) {
    
            if(user.StartsWith("128")) {
                // success: an auth status code of 1000
                authentication_status = 1000;
            } else { 
                // fail: and authentication_status code of 4000
                authentication_status = 4000;
            }
        }
    }

    Dieser Programmcode zeigt einen einfachen Fall einer angepassten Benutzerauthentifizierung. Die Authentifizierung ist erfolgreich, wenn der Client auf die konsolidierte Datenbank über einen Benutzernamen zugreift, der mit 128 beginnt.

  2. Speichern Sie den Programmcode.

    In dieser praktischen Einführung wird davon ausgegangen, dass c:\MLauth das Arbeitsverzeichnis für serverseitige Komponenten ist. Speichern Sie die Datei als MobiLinkAuth.cs in diesem Verzeichnis.

  3. Kompilieren Sie Ihre Klassendatei.

    1. Navigieren Sie zu dem Verzeichnis, das Ihre C#-Datei enthält.

    2. Kompilieren Sie die MobiLinkAuth-Klasse und verweisen Sie auf die MobiLink-Server .NET API-Bibliothek.

      Führen Sie den folgenden Befehl aus, wobei Sie C:\Program Files\SQL Anywhere 16\ durch Ihr SQL Anywhere 16-Verzeichnis ersetzen:

      csc /out:MobiLinkAuth.dll /target:library /reference:"C:\Program Files\SQL Anywhere 16\Assembly\v2\iAnywhere.MobiLink.Script.dll" MobiLinkAuth.cs

Ergebnisse

Die Assembly MobiLinkAuth.dll wird generiert.

 Siehe auch