Приведенный ниже код является кодом аутентификации Tomcat Custom Realm, где, если пользователь вводит пароль в качестве «теста», он успешно входит в систему
как я могу изменить эту программу так, чтобы, если у меня было 5 пользователей и каждый с разным паролемхранится в массиве
, а также скажите мне способ выполнения этой области, какая функция выполняется первой и кто вызывает эти функции
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
import org.apache.catalina.realm.RealmBase;
import org.apache.catalina.realm.GenericPrincipal;
public class NewRealm extends RealmBase
{
private String username;
private String password;
@Override
public Principal authenticate(String username, String credentials)
{
this.username = username;
this.password = credentials;
if (this.username.equals(this.password))
{
return getPrincipal(username);
}
else
{
return null;
}
}
@Override
protected String getName() {
return username;
}
@Override
protected String getPassword(String username) {
return "test";
}
@Override
protected Principal getPrincipal(String string) {
List<String> roles = new ArrayList<String>();
roles.add("user");
Principal principal = new GenericPrincipal(username,"test",roles);
return principal;
}
}