Вот программа Custom Realm Authendication для одного пользователя, помогающая мне с несколькими пользователями - PullRequest
2 голосов
/ 03 июля 2019

Приведенный ниже код является кодом аутентификации 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;
     }
   }
...