このレッスンでは、カスタム認証用の .NET 論理を記述するクラスをコンパイルします。
前提条件
.NET 同期論理を実行するには、Mobile Link サーバが iAnywhere.MobiLink.Script.dll 内のクラスにアクセスできることが必要です。iAnywhere.MobiLink.Script.dll には、.NET メソッドで利用する Mobile Link .NET サーバ API クラスのレポジトリが入っています。.NET クラスをコンパイルするときは、iAnywhere.MobiLink.Script.dll を参照します。
このレッスンでは、このチュートリアルの開始時に、権限のセクションで一覧されているロールと権限を持っていることを前提としています。 チュートリアル:カスタムユーザ認証用の Java と .NET の使用
内容と備考
顧客認証用の .NET クラスを作成するには、レッスン 1:カスタム認証用の Java クラスの作成 (サーバ側)を参照してください。
MobiLinkAuth というクラスを作成し、authenticateUser メソッドを作成します。
MobiLinkAuth クラスには、authenticate_user 同期イベントで使用する authenticateUser メソッドが含まれています。authenticate_user イベントは、ユーザパラメータとパスワードパラメータを提供します。認証結果は、authentication_status inout パラメータを使用して返します。
authenticate_user 同期イベントの authenticateUser メソッドは、レッスン 2:authenticate_user イベント用の Java または .NET スクリプトの登録 で登録します。
アプリケーションサーバに次のコードを使用します。
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; } } } |
このコードは、簡単なカスタムユーザ認証の例を示します。128 で始まるユーザ名を使用してクライアントが統合データベースにアクセスすると、認証に成功します。
コードを保存します。
このチュートリアルでは、c:\MLauth をサーバサイドコンポーネントの作業フォルダとします。ファイルを MobiLinkAuth.cs という名前でこのディレクトリに保存します。
クラスファイルをコンパイルします
C# ファイルが含まれるディレクトリに移動します。
MobiLinkAuth クラスをコンパイルし、Mobile Link サーバ .NET API ライブラリを参照します。
次のコマンドを実行して、C:\Program Files\SQL Anywhere 16\ を SQL Anywhere 16 ディレクトリに置き換えます。
csc /out:MobiLinkAuth.dll /target:library /reference:"C:\Program Files\SQL Anywhere 16\Assembly\v2\iAnywhere.MobiLink.Script.dll" MobiLinkAuth.cs |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |