You're probably missing a LifecycleUtils.init(realm);

Log lines come from AuthenticatingRealm most probably because JdbcRealm
inherits those methods from AuthenticatingRealm. Typically loggers are
initialized with the class declaring them.

On Wed, Oct 29, 2014 at 3:06 PM, Robert Middleton <[email protected]>
wrote:

>
> Hi,
>
> I have set up shiro programatically using the following code:
>
> SQLiteConfig config = new SQLiteConfig();
> config.enforceForeignKeys( true );
> HashedCredentialsMatcher cm = new HashedCredentialsMatcher( "SHA-256" );
> cm.setHashIterations( 500000 );
> JdbcRealm realm = new JdbcRealm();
> org.sqlite.SQLiteDataSource ds = new org.sqlite.SQLiteDataSource( config );
> ds.setUrl( "jdbc:sqlite:light.db" );
> realm.setDataSource( ds );
> realm.setCredentialsMatcher( cm );
> realm.setSaltStyle( SaltStyle.COLUMN );
> SecurityManager ss = new DefaultSecurityManager( realm );
> SecurityUtils.setSecurityManager( ss );
>
> However, when I try to authenticate a user, I can't log in. This worked
> find before when I used shiro.ini with no encryption on the passwords. The
> following debug information is printed out:
>
> 18:18:28.835 [SSHThread] DEBUG org.apache.shiro.realm.AuthenticatingRealm
> - Looked up AuthenticationInfo [robert] from doGetAuthenticationInfo
> 18:18:28.836 [SSHThread] DEBUG org.apache.shiro.realm.AuthenticatingRealm
> - AuthenticationInfo caching is disabled for info [robert]. Submitted
> token: [org.apache.shiro.authc.UsernamePasswordToken - robert,
> rememberMe=false].
> 18:18:29.275 [SSHThread] DEBUG
> org.apache.shiro.authc.credential.SimpleCredentialsMatcher - Performing
> credentials equality check for tokenCredentials of type
> [org.apache.shiro.crypto.hash.SimpleHash and accountCredentials of type
> [org.apache.shiro.crypto.hash.SimpleHash]
> 18:18:29.276 [SSHThread] DEBUG
> org.apache.shiro.authc.credential.SimpleCredentialsMatcher - Both
> credentials arguments can be easily converted to byte arrays. Performing
> array equals comparison
> 18:18:29.277 [SSHThread] ERROR
> com.synexxus.gateway.connectors.SSHConnector -
> org.apache.shiro.authc.IncorrectCredentialsException: Submitted credentials
> for token [org.apache.shiro.authc.UsernamePasswordToken - robert,
> rememberMe=false] did not match the expected credentials.
>
> Since I setup the realm for the SecurityManager to be a JdbcRealm, I would
> expect that the log lines that come from
> org.apache.shiro.realm.AuthenticatingRealm would in fact come from
> org.apache.shiro.realm.jdbc.JdbcRealm. Why isn't this the case?
>
>


-- 
*Alessio Stalla* | Software Architect
M: +39 340 7824743 | T: +39 010 566441 | F: +39 010 8900455
[email protected] | www.manydesigns.com

MANYDESIGNS s.r.l.
Via G. D'Annunzio, 2/51 | 16121 Genova (GE) | Italy

Reply via email to