java/sql-java-prihlasovani/src/cz/frantovo/jaas/sql/SQLLoginModul.java
author František Kučera <franta-hg@frantovo.cz>
Thu, 21 Jul 2011 23:40:45 +0200
changeset 4 c7d713d71ad3
parent 3 f08e57ab4480
child 6 aff44e80f418
permissions -rw-r--r--
Jde to zkompilovat a spustit. Umí přihlásit i nepřihlásit uživatele. K databázi se zatím nepřipojuje.
     1 package cz.frantovo.jaas.sql;
     2 
     3 import com.sun.appserv.security.AppservPasswordLoginModule;
     4 import java.util.Arrays;
     5 import java.util.logging.Level;
     6 import java.util.logging.Logger;
     7 import javax.security.auth.login.LoginException;
     8 
     9 /**
    10  * Přihlašovací modul pro SQL doménu.
    11  * TODO: později bude potomkem <code>com.sun.appserv.security.AbstractLoginModule</code>
    12  * @author fiki
    13  */
    14 public class SQLLoginModul extends AppservPasswordLoginModule {
    15 
    16 	/** viz konfigurace v login.conf */
    17 	public static final String VÝCHOZÍ_JAAS_KONTEXT = "sqlRealm";
    18 	private static final Logger log = Logger.getLogger(SQLLoginModul.class.getName());
    19 
    20 	@Override
    21 	protected void authenticateUser() throws LoginException {
    22 
    23 		if (_currentRealm instanceof SQLRealm) {			
    24 		
    25 			SQLRealm sqlRealm = (SQLRealm)_currentRealm;			
    26 			String skupiny[] = sqlRealm.ověřUživatele(_username, _passwd);			
    27 			commitUserAuthentication(skupiny);
    28 			
    29 		} else {
    30 			throw new LoginException("Špatný realm: " + _currentRealm + " Očekávám: SQLRealm.");
    31 		}
    32 	}
    33 }