In dieser Lektion kompilieren Sie eine Klasse mit Java- oder .NET-Logik für die benutzerdefinierte Authentifizierung.
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.
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.
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... } } |
Schreiben Sie die Methode authenticateUser.
Diese praktische Einführung beschreibt eine einfache benutzerdefinierte Authentifizierung. Die Authentifizierung ist erfolgreich, wenn der Benutzername mit "ML" beginnt.
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; } } |
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 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.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |