Java 类org.springframework.security.authentication.AuthenticationDetailsSource 实例源码

项目:syndesis    文件:SecurityConfiguration.java   
@SuppressWarnings("PMD.SignatureDeclareThrowsException")
private RequestHeaderAuthenticationFilter requestHeaderAuthenticationFilter() throws Exception {
    RequestHeaderAuthenticationFilter f = new RequestHeaderAuthenticationFilter();
    f.setPrincipalRequestHeader("X-Forwarded-User");
    f.setCredentialsRequestHeader("X-Forwarded-Access-Token");
    f.setAuthenticationManager(authenticationManager());
    f.setAuthenticationDetailsSource(
        (AuthenticationDetailsSource<HttpServletRequest, PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails>)
            (request) ->new PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails(
                request,
                AuthorityUtils.createAuthorityList("ROLE_AUTHENTICATED")
            )
    );
    f.setAuthenticationFailureHandler(new SimpleUrlAuthenticationFailureHandler());
    f.setExceptionIfHeaderMissing(false);
    return f;
}
项目:syndesis-rest    文件:SecurityConfiguration.java   
@SuppressWarnings("PMD.SignatureDeclareThrowsException")
private RequestHeaderAuthenticationFilter requestHeaderAuthenticationFilter() throws Exception {
    RequestHeaderAuthenticationFilter f = new RequestHeaderAuthenticationFilter();
    f.setPrincipalRequestHeader("X-Forwarded-User");
    f.setCredentialsRequestHeader("X-Forwarded-Access-Token");
    f.setAuthenticationManager(authenticationManager());
    f.setAuthenticationDetailsSource(
        (AuthenticationDetailsSource<HttpServletRequest, PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails>)
            (request) ->new PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails(
                request,
                AuthorityUtils.createAuthorityList("ROLE_AUTHENTICATED")
            )
    );
    f.setAuthenticationFailureHandler(new SimpleUrlAuthenticationFailureHandler());
    f.setExceptionIfHeaderMissing(false);
    return f;
}
项目:cf-sample-service    文件:DashboardAuthenticationProcessingFilterTest.java   
@Test
public void attemptAuthenticationWithDetailSource() throws IOException, ServletException {
    final OAuth2Authentication oAuth2Authentication = createAuthentication();
    final Object details = "details";
    final Authentication resultAuthentication = createResultAuthentication(oAuth2Authentication);

    final HttpServletRequest request = createRequest();
    final AuthenticationDetailsSource<HttpServletRequest, ?> detailsSource = createDetailsSource(request, details);

    final DashboardAuthenticationProcessingFilter filter =
          createFilter(oAuth2Authentication, resultAuthentication, detailsSource);

    final Authentication actualResultAuthentication = filter.attemptAuthentication(request, createResponse());

    assertSame(resultAuthentication, actualResultAuthentication);
    assertEquals(details, oAuth2Authentication.getDetails());
}
项目:communote-server    文件:AuthenticationHelper.java   
/**
 * Set the public user as authenticated user to the current SecurityContext. If the
 * SecurityContext is shared between all threads of the current session.
 *
 * @param request
 *            the servlet request
 */
public static void setPublicUserToSecurityContext(ServletRequest request) {
    org.springframework.security.core.userdetails.User user = new PublicUserDetails();
    UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(
            user, user.getPassword(), user.getAuthorities());
    AuthenticationDetailsSource<Object, Object> authenticationDetailsSource = new AuthenticationDetailsSourceImpl();
    authentication.setDetails(authenticationDetailsSource.buildDetails(request));
    SecurityContextHolder.getContext().setAuthentication(authentication);
}
项目:artifactory    文件:AccessFilter.java   
@SuppressWarnings({"ThrowableInstanceNeverThrown"})
private void useAnonymousIfPossible(HttpServletRequest request, HttpServletResponse response,
        FilterChain chain, SecurityContext securityContext) throws IOException, ServletException {
    boolean anonAccessEnabled = context.getAuthorizationService().isAnonAccessEnabled();
    if (anonAccessEnabled || authInterceptors.accept(request)) {
        log.debug("Using anonymous");
        Authentication authentication = getNonUiCachedAuthentication(request);
        if (authentication == null) {
            log.debug("Creating the Anonymous token");
            final UsernamePasswordAuthenticationToken authRequest =
                    new UsernamePasswordAuthenticationToken(UserInfo.ANONYMOUS, "");
            AuthenticationDetailsSource ads = new HttpAuthenticationDetailsSource();
            //noinspection unchecked
            authRequest.setDetails(ads.buildDetails(request));
            // explicitly ask for the default spring authentication manager by name (we have another one which
            // is only used by the basic authentication filter)
            AuthenticationManager authenticationManager =
                    context.beanForType("authenticationManager", AuthenticationManager.class);
            authentication = authenticationManager.authenticate(authRequest);
            if (authentication != null && authentication.isAuthenticated() && !RequestUtils.isUiRequest(request)) {
                AuthCacheKey authCacheKey = new AuthCacheKey(authFilter.getCacheKey(request),
                        request.getRemoteAddr());
                nonUiAuthCache.put(authCacheKey, authentication);
                log.debug("Added anonymous authentication {} to cache", authentication);
            }
        } else {
            log.debug("Using cached anonymous authentication");
        }
        useAuthentication(request, response, chain, authentication, securityContext);
    } else {
        if (authFilter.acceptEntry(request)) {
            log.debug("Sending request requiring authentication");
            authFilter.commence(request, response,
                    new InsufficientAuthenticationException("Authentication is required"));
        } else {
            log.debug("No filter or entry just chain");
            chain.doFilter(request, response);
        }
    }
}
项目:jeffaschenk-commons    文件:AuthenticationFilter.java   
@Override
public void setAuthenticationDetailsSource
        (AuthenticationDetailsSource
                 authenticationDetailsSource) {
    log.debug("Invoking setAuthenticationDetailsSource");
    super.setAuthenticationDetailsSource(authenticationDetailsSource);
}
项目:cf-sample-service    文件:DashboardAuthenticationProcessingFilterTest.java   
private DashboardAuthenticationProcessingFilter createFilter(OAuth2Authentication oAuth2Authentication,
                                                             Authentication resultAuthentication,
                                                             AuthenticationDetailsSource<HttpServletRequest, ?> source) {
    final String token = "TOKEN";
    final DashboardAuthenticationProcessingFilter filter = new DashboardAuthenticationProcessingFilter();

    filter.setAuthenticationManager(createAuthenticationManagerForUserAuth(oAuth2Authentication, resultAuthentication));
    filter.setRestTemplate(createRestTemplate(token));
    filter.setTokenServices(createResourceTokenServices(oAuth2Authentication, token));
    filter.setDetailsSource(source);

    return filter;
}
项目:cf-sample-service    文件:DashboardAuthenticationProcessingFilterTest.java   
@SuppressWarnings("unchecked")
private AuthenticationDetailsSource<HttpServletRequest, ?> createDetailsSource(HttpServletRequest request,
                                                                               Object details) {
    final AuthenticationDetailsSource<HttpServletRequest, ?> source = mock(AuthenticationDetailsSource.class);

    when(source.buildDetails(request))
          .thenReturn(details);

    return source;
}
项目:haven-platform    文件:TokenAuthFilterConfigurer.java   
public AuthenticationDetailsSource<HttpServletRequest, ?> getAuthenticationDetailsSource() {
    return authenticationDetailsSource;
}
项目:haven-platform    文件:TokenAuthFilterConfigurer.java   
public void setAuthenticationDetailsSource(AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource) {
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:communote-server    文件:RequestParameterAuthenticationProcessingFilter.java   
/**
 * @param authenticationDetailsSource
 *            the {@link AuthenticationDetailsSource} to use, cannot be null
 */
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<Object, Object> authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource, "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:putput    文件:AccessTokenAuthenticationFilter.java   
private AuthenticationDetailsSource<HttpServletRequest, ?> detailsSource() {
    return (request) -> {
        Collection<? extends GrantedAuthority> authorities = Collections.singleton(new SimpleGrantedAuthority("ROLE_USER"));
        return new PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails(request, authorities);
    };
}
项目:cloudstreetmarket.com    文件:CustomOAuth2RequestFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource,
            "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:aggregate    文件:BasicAuthenticationFilter.java   
public void  setAuthenticationDetailsSource(AuthenticationDetailsSource<javax.servlet.http.HttpServletRequest,?> authenticationDetailsSource) {
  impl.setAuthenticationDetailsSource(authenticationDetailsSource);
}
项目:summerb    文件:RestLoginFilter.java   
public AuthenticationDetailsSource<HttpServletRequest, ?> getAuthenticationDetailsSource() {
    return authenticationDetailsSource;
}
项目:summerb    文件:RestLoginFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource) {
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:eHMP    文件:VistaBasicAuthenticationFilter.java   
public void setAuthenticationDetailsSource(AuthenticationDetailsSource authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource, "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:appverse-server    文件:CustomUserNamePasswordAuthenticationFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource,
            "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:jeffaschenk-commons    文件:AuthenticationFilter.java   
@Override
public AuthenticationDetailsSource getAuthenticationDetailsSource
        () {
    log.debug("Invoking getAuthenticationDetailsSource");
    return super.getAuthenticationDetailsSource();
}
项目:cf-sample-service    文件:DashboardAuthenticationProcessingFilter.java   
/**
 * Sets the optional source providing {@link Authentication#getDetails() authentication details}.
 */
public void setDetailsSource(AuthenticationDetailsSource<HttpServletRequest, ?> detailsSource) {
    this.detailsSource = detailsSource;
}
项目:cf-sample-service    文件:DashboardSecurityConfiguration.java   
@Bean(name = "dashboardAuthenticationDetailsSource")
@Autowired
public AuthenticationDetailsSource<HttpServletRequest, ?> dashboardAuthenticationDetailsSource() {
    return new DashboardAuthenticationDetailsSource(dashboardRestOperations(), suidFile, oauthInfoUrl, apiUrl);
}
项目:oauth-client-master    文件:OAuth2AuthenticationProcessingFilter.java   
/**
 * @param authenticationDetailsSource
 *            The AuthenticationDetailsSource to use
 */
public void setAuthenticationDetailsSource(AuthenticationDetailsSource<HttpServletRequest,?> authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource, "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:molgenis    文件:MolgenisAnonymousAuthenticationFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource)
{
    Assert.notNull(authenticationDetailsSource, "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:termitaria    文件:TokenBasedAuthenticationFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource,
            "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:termitaria    文件:TokenBasedAuthenticationFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource,
            "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:termitaria    文件:TokenBasedAuthenticationFilter.java   
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource,
            "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:communote-server    文件:XMPPAuthenticationProcessingFilter.java   
/**
 * Sets the authentication details source.
 *
 * @param authenticationDetailsSource
 *            the auth details source.
 */
public final void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<Object, Object> authenticationDetailsSource) {
    Assert.notNull(authenticationDetailsSource, "AuthenticationDetailsSource required");
    this.authenticationDetailsSource = authenticationDetailsSource;
}
项目:oauth-client-master    文件:TokenEndpointAuthenticationFilter.java   
/**
 * A source of authentication details for requests that result in authentication.
 * 
 * @param authenticationDetailsSource the authenticationDetailsSource to set
 */
public void setAuthenticationDetailsSource(
        AuthenticationDetailsSource<HttpServletRequest, ?> authenticationDetailsSource) {
    this.authenticationDetailsSource = authenticationDetailsSource;
}