Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在安全模块Play 1.2.5中硬编码用户名和密码_Java_Security_Playframework - Fatal编程技术网

Java 如何在安全模块Play 1.2.5中硬编码用户名和密码

Java 如何在安全模块Play 1.2.5中硬编码用户名和密码,java,security,playframework,Java,Security,Playframework,下面是在上找到的代码 我想将用户名和密码硬编码到控制器本身。因此,它只接受那些登录凭据 我不知道怎么做,但一定是这样的: package controllers; public class Security extends Secure.Security { static boolean authenticate(String username, String password) { if (username=="abc@abc.com" && password=

下面是在上找到的代码

我想将用户名和密码硬编码到控制器本身。因此,它只接受那些登录凭据

我不知道怎么做,但一定是这样的:

package controllers;

public class Security extends Secure.Security {

static boolean authenticate(String username, String password) {

     if (username=="abc@abc.com" && password=="abc123")
     return....
     .......
   }
}
static boolean authenticate(String username, String password) {
    return "abc@abc.com".equals(username) && "abc123".equals(password);
}

你在正确的轨道上。然而,有些人指出:

  • 不要使用
    =
    运算符检查
    字符串是否相等。改用
    String#equals()
  • 使用equals时,在literal
    字符串上调用该方法。这些参数永远不能为
    null
    ,有助于消除
    NullPointerException
    s
  • 将密码和用户名硬编码为普通字符串可能是危险的:它们可以从内存中读取,无需太多努力
  • 因为
    username==”abc@abc.com&&password==“abc123”
    是一个布尔值,您只需返回该结果即可
忽略关于安全问题的第3点,您的方法可能如下所示:

package controllers;

public class Security extends Secure.Security {

static boolean authenticate(String username, String password) {

     if (username=="abc@abc.com" && password=="abc123")
     return....
     .......
   }
}
static boolean authenticate(String username, String password) {
    return "abc@abc.com".equals(username) && "abc123".equals(password);
}