:
@Override
protected UserDetails retrieveUser(String username, UsernamePasswordAuthenticationToken token) throws AuthenticationException {
try {
server = (PncUtilRemote) new InitialContext().lookup("PncUtilBean");
if (server != null) {
String password = SHA1(token.getCredentials().toString());
String[] auth = server.login(username, password);
if (auth.length > 0) {
PncUserDetails details = new PncUserDetails(username, password);
for (int i = 0; i < auth.length; i++) {
details.addAuthority(auth[i]);
}
return details;
}
}
} catch (Exception e) {
System.out.println("! " + e.getClass().getName() + " in com.logica.pnc.security.PncUserDetailsAuthenticationProvider.retrieveUser(String, UsernamePasswordAuthenticationToken): " + e.getMessage());
}
throw new BadCredentialsException("");
}
:recieveUserのMethodeのを実装し
PncUserDetailsAuthenticationProvider extends AbstractUserDetailsAuthenticationProvider
はあなたのアプリケーション-context.xmlファイルにいくつかの行を追加する必要があり、あなたのAuthenticationProviderを有効にするには、次へ
<security:http auto-config="false" />
ありがとう:
<bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers">
<list><ref local="PncAuthenticationProvider" /></list>
</property>
</bean>
<bean id="PncAuthenticationProvider" class="com.logica.pnc.security.PncUserDetailsAuthenticationProvider">
<security:custom-authentication-provider />
</bean>
あなたがfalseに自動設定を設定することが重要ですrodrigoapを指してAuthenticationProviderのことを: