私はSpringには新しく、ユーザ名とパスワードでユーザを認証したくないという要件があります。私はちょうどに応じてページを確保するために春のセキュリティを使用したいSpring 3.0セキュリティ - 認証による認証
- ユーザー名
- 役割
: ユーザーが認証されると、他のアプリケーションと私のアプリの詳細をfolloingで要求を取得することです要求内の役割 私はUserDetailServiceの作成について考えましたが、リクエストデータを追加するだけで、Springは依然として認証情報を要求します。 は、それから私は、次のようなものを書くことについて考えた:
public class UserLogin {
/*
@Resource(name = "userDetailsService")
private UserDetailsService userDetailsService;
*/
@Resource(name = "authenticationManager")
private AuthenticationManager authenticationManager;
public boolean login(UserEntity user) {
//UserDetails ud = userDetailsService.loadUserByUsername(username);
Collection<GrantedAuthority> authorities = new ArrayList<GrantedAuthority>();
for (String role : user.getAuthorities()) {
authorities.add(new GrantedAuthorityImpl(role));
}
UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(user.getUsername(), user.getPassword(), authorities);
try {
Authentication auth = authenticationManager.authenticate(token);
SecurityContext securityContext = new SecurityContextImpl();
// Places in ThredLocal for future retrieval
SecurityContextHolder.setContext(securityContext);
SecurityContextHolder.getContext().setAuthentication(auth);
} catch (AuthenticationException e) {
return false;
}
return true;
}
}
私は正しい方向に向かっています。もしそうなら、spring-xmlで全体を構成する方法..