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 (中文) » MobiLink - 入门 » MobiLink 教程 » 教程:使用 Java 或 .NET 进行自定义用户验证

 

第 1 课:创建用于自定义验证的 Java 类(服务器端)

在本课中,您将编译包含 Java 逻辑的类用以进行自定义验证。

前提条件

要执行 Java 同步逻辑,MobiLink 服务器必须有权访问 mlscript.jar 中的类。mlscript.jar 包含要在 Java 方法中使用的 MobiLink Java 服务器 API 类的存储库。编译 Java 类时,将引用 mlscript.jar

本课假定您拥有在教程教程:使用 Java 或 .NET 进行自定义用户验证开头的权限部分中列出的角色和特权。

上下文和注释

要创建用于客户身份验证的 .NET 类,请参见第 1 课:创建用于自定义验证的 .NET 类(服务器端)

 任务
  1. 创建一个名为 MobiLinkAuth 的类,并编写 authenticateUser 方法。

    MobiLinkAuth 类包括用于 authenticate_user 同步事件的 authenticateUser 方法。authenticate_user 事件可为用户和口令提供参数。在 authentication_status inout 参数中返回验证结果。

    注意

    您将在第 2 课:为 authenticate_user 事件注册 Java 或 .NET 脚本内注册 authenticate_user 同步事件的 authenticateUser 方法。

    为服务器应用程序使用以下代码:



    import ianywhere.ml.script.*;
    
    public class MobiLinkAuth {
        public void authenticateUser (
            ianywhere.ml.script.InOutInteger authentication_status,
            String user,
            String pwd,
            String newPwd ) {
    
            if (user.startsWith("128")) {
                // success: an auth status code of 1000
                authentication_status.setValue(1000);
            } else {
                // fail: an authentication_status code of 4000
                authentication_status.setValue(4000);
            }
        }
    }

    该代码说明一个简单的自定义用户验证情况。当客户端使用以 128 开头的用户名访问统一数据库后,验证成功。

  2. 保存您的代码。

    此教程将 c:\MLauth 假定为服务器端组件的工作目录。在此目录中,将文件另存为 MobiLinkAuth.java

  3. 编译您的类文件。

    1. 浏览到包含 Java 文件的目录。

    2. 编译 MobiLinkAuth 类并引用 MobiLink 服务器 Java API 库。

      运行以下命令,将 C:\Program Files\SQL Anywhere 16\ 替换为 SQL Anywhere 16 目录:

      javac MobiLinkAuth.java -classpath "C:\Program Files\SQL Anywhere 16\java\mlscript.jar"

结果

将生成 MobiLinkAuth.class 文件。

 另请参见