In dieser Lektion kompilieren Sie eine Klasse mit Java- oder .NET-Logik für die benutzerdefinierte Authentifizierung.
Der MobiLink-Server muss Zugriff auf die Klassen in mlscript.jar haben, damit die Java-Synchronisationslogik ausgeführt werden kann. 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 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.
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
Verwenden Sie den folgenden Code für Ihre Serveranwendung:
import ianywhere.ml.script.*; public class MobiLinkAuth { public void authenticateUser ( ianywhere.ml.script.InOutInteger authentication_status, String user, String pwd, String newPwd ) { if (user.substring(0,2).equals("128")) { // success: an auth status code of 1000 authentication_status.setValue(1000); } else { // fail: an authentication_status code of 4000 authentication_status.setValue(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.
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.java in diesem Verzeichnis.
Kompilieren Sie Ihre Klassendatei.
Navigieren Sie zu dem Verzeichnis, das Ihre Java-Datei enthält.
Kompilieren Sie MobiLinkAuth und verweisen Sie auf die MobiLink-Server Java API-Bibliothek
Führen Sie den folgenden Befehl aus, wobei Sie C:\Programme\SQL Anywhere 12\ durch Ihr SQL Anywhere 12 Verzeichnis ersetzen:
javac MobiLinkAuth.java -classpath "C:\Programme\SQL Anywhere 12\java\mlscript.jar" |
Die Datei MobiLinkAuth.class wird generiert.
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.
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.
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
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.Substring(0,2)=="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.
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.
Kompilieren Sie Ihre Klassendatei.
Navigieren Sie zu dem Verzeichnis, das Ihre C#-Datei enthält.
Kompilieren Sie MobiLinkAuth und verweisen Sie auf die MobiLink-Server .NET API-Bibliothek
Führen Sie den folgenden Befehl aus, wobei Sie C:\Programme\SQL Anywhere 12\ durch Ihr SQL Anywhere 12 Verzeichnis ersetzen:
csc /out:MobiLinkAuth.dll /target:library /reference:"C:\Programme\SQL Anywhere 12\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.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |