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 » Mobile Link クイックスタート » Mobile Link チュートリアル » チュートリアル:カスタムユーザ認証用の Java と .NET の使用

 

レッスン 1:カスタム認証用の .NET クラスの作成 (サーバ側)

このレッスンでは、カスタム認証用の .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 クラスの作成 (サーバ側)を参照してください。

 ♦ タスク
  1. 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 で始まるユーザ名を使用してクライアントが統合データベースにアクセスすると、認証に成功します。

  2. コードを保存します。

    このチュートリアルでは、c:\MLauth をサーバサイドコンポーネントの作業フォルダとします。ファイルを MobiLinkAuth.cs という名前でこのディレクトリに保存します。

  3. クラスファイルをコンパイルします

    1. C# ファイルが含まれるディレクトリに移動します。

    2. 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

結果

MobiLinkAuth.dll ファイルが生成されます。

 参照