| 1 |  |   | 
  | 2 |  |   | 
  | 3 |  |   | 
  | 4 |  |   | 
  | 5 |  |   | 
  | 6 |  |   | 
  | 7 |  |   | 
  | 8 |  |   | 
  | 9 |  |   | 
  | 10 |  |   | 
  | 11 |  |   | 
  | 12 |  |   | 
  | 13 |  |   | 
  | 14 |  |   | 
  | 15 |  |   | 
  | 16 |  |  package org.kuali.student.common.ws.security; | 
  | 17 |  |   | 
  | 18 |  |  import java.util.HashMap; | 
  | 19 |  |  import java.util.Map; | 
  | 20 |  |   | 
  | 21 |  |  import javax.xml.parsers.DocumentBuilder; | 
  | 22 |  |  import javax.xml.parsers.DocumentBuilderFactory; | 
  | 23 |  |   | 
  | 24 |  |  import org.w3c.dom.Document; | 
  | 25 |  |  import org.w3c.dom.Element; | 
  | 26 |  |  import org.w3c.dom.NodeList; | 
  | 27 |  |   | 
  | 28 |  |   | 
  | 29 |  |   | 
  | 30 |  |   | 
  | 31 |  |   | 
  | 32 |  |   | 
  | 33 |  |   | 
  | 34 | 0 |  public class AuthenticationService { | 
  | 35 |  |   | 
  | 36 |  |      private static Map<String, String> passwords; | 
  | 37 |  |      private static Map<String, String> personids; | 
  | 38 |  |       | 
  | 39 |  |       | 
  | 40 |  |      static { | 
  | 41 | 0 |          passwords = new HashMap<String, String>(); | 
  | 42 | 0 |          personids = new HashMap<String, String>(); | 
  | 43 |  |           | 
  | 44 |  |          try { | 
  | 45 | 0 |              DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance(); | 
  | 46 | 0 |              DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder(); | 
  | 47 | 0 |              Document doc = docBuilder.parse(AuthenticationService.class.getClassLoader().getResourceAsStream("ks.users.xml"));         | 
  | 48 | 0 |              NodeList users = doc.getElementsByTagName("user"); | 
  | 49 | 0 |              for(int s=0; s < users.getLength() ; s++){ | 
  | 50 | 0 |                  Element user = (Element)users.item(s); | 
  | 51 | 0 |                  passwords.put(user.getAttribute("username"), user.getAttribute("password")); | 
  | 52 | 0 |                  personids.put(user.getAttribute("username"), user.getAttribute("personid")); | 
  | 53 |  |              } | 
  | 54 | 0 |          } catch (Exception e){ | 
  | 55 | 0 |          } | 
  | 56 | 0 |      } | 
  | 57 |  |       | 
  | 58 |  |      public static boolean validateUsernamePassword(String username, String password){ | 
  | 59 | 0 |          return password.equals(passwords.get(username)); | 
  | 60 |  |      } | 
  | 61 |  |       | 
  | 62 |  |      public static String getPasswordForUsername(String username){ | 
  | 63 | 0 |          return passwords.get(username); | 
  | 64 |  |      } | 
  | 65 |  |       | 
  | 66 |  |      public static String getPersonIdForUsername(String username){ | 
  | 67 | 0 |          return personids.get(username); | 
  | 68 |  |      } | 
  | 69 |  |  } |