Commit Graph

1427 Commits

Author SHA1 Message Date
Lars Grefer ff1070df36 remove redundant modifiers found by checkstyle 2019-08-10 00:18:56 +02:00
Lars Grefer bbefc491b2 unused imports 2019-08-09 16:59:07 -05:00
Lars Grefer 38de737663 Java 8: Statement lambda can be replaced with expression lambda 2019-08-09 16:59:07 -05:00
Lars Grefer 3a5d8ba696 Java 8: Collections.sort() can be replaced with List.sort() 2019-08-09 16:59:07 -05:00
Lars Grefer 91c846756e Java 5: Unnecessary Boxing 2019-08-09 16:59:07 -05:00
Lars Grefer 578d628774 'Collection.toArray()' call style 2019-08-09 16:57:31 -05:00
Lars Grefer 40bee457f9 Unnecessary enum modifier 2019-08-09 00:42:07 +02:00
Lars Grefer eddcd1622f Type parameter extends Object
Reports any type parameters and wildcard type arguments explicitly declared to extend java.lang.Object.
2019-08-09 00:40:13 +02:00
Lars Grefer fb39d9c255 Anonymous type can be replaced with lambda 2019-08-08 17:09:09 -04:00
Lars Grefer 05f42a4995 Remove unused imports 2019-08-08 14:22:31 -04:00
Josh Cummings 65f6025cef
Polish OAuth2LoginConfigurer
Improve way of accessing ApplicationContext to ensure backward
compatibility.

Issue gh-7232
2019-08-07 13:25:38 -06:00
Josh Cummings a00ad37168
OAuth2LoginConfigurer UserService Beans
Fixes gh-7232
2019-08-07 10:58:23 -06:00
Lars Grefer f5cd0ec302 Use try-with-resources instead of try-finally 2019-08-06 15:33:04 -05:00
Lars Grefer 2056834432 Cleanup unnecessary unboxing
Unboxing is unnecessary under Java 5 and newer, and can be safely removed.
2019-08-06 10:17:38 -04:00
Lars Grefer 2306d987e9 Cleanup unnecessary boxing 2019-08-06 10:17:38 -04:00
Eddú Meléndez 2c836a171a Add authenticationFailureHandler method in OAuth2LoginSpec
Allow to customize the failure handler.

Fixes gh-7051
2019-08-05 14:09:11 -05:00
Lars Grefer 776a4c3760 Use org.mockito.ArgumentMatchers in favor of org.mockito.Matchers 2019-08-03 12:28:37 -04:00
Eddú Meléndez 50adb6abcb Fix javadoc 2019-07-31 15:36:30 -04:00
Sam Simmons e88c5c0eee Fix CSRF session authentication strategy since version 2019-07-31 07:45:51 -05:00
Ahmed Sayed 0591403dea ignore Multipart requests in HttpSessionRequestCache.requestMatcher 2019-07-31 12:17:55 +02:00
Eleftheria Stein 0b4502b2c5 Remove exceptions from lambda security configuration
Fixes: gh-7128
2019-07-30 08:31:37 -05:00
Joe Grandja c05b0765c1 Introduce OAuth2AuthorizedClient Manager/Provider
Fixes gh-6845
2019-07-25 11:12:54 -04:00
Eleftheria Stein 7e845409f1 Fix Javadoc for headers configurer methods
Fixes: gh-7123
2019-07-24 09:11:44 -04:00
Eleftheria Stein a288ce4b00 Support nested builder in DSL for reactive apps
Fixes: gh-7107
2019-07-23 15:57:10 -05:00
Eleftheria Stein d5e5ac0503 Add JavaDoc to reactive oauth2ResourceServer 2019-07-18 10:48:47 -04:00
Eleftheria Stein fbf6d22343 Add JavaDoc to reactive oauth2Login 2019-07-18 08:49:08 -04:00
Édouard Hue e8dd1325fd Fixed misleading OAuth2 error messages
Error messages sent by BearerTokenAccessDeniedHandler included
information about the scopes of the rejected token instead of
the scopes required by the resource.
* Removal of token scopes from error_description attribute.
* Removal of scope attribute from WWW-Authenticate response header.

Fixes gh-7089
2019-07-18 07:01:33 -04:00
Eleftheria Stein b153d92b23 Fix JavaDoc for formLogin in ServerHttpSecurity 2019-07-18 06:23:04 -04:00
Michael Vitz 09e8ae42ed Allow configuration of SessionAuthenticationStrategy for CSRF
Closes gh-5300
2019-07-16 07:47:13 -05:00
Rob Winch ea54d9014d
DSL nested builder for HTTP security
DSL nested builder for HTTP security

Fixes gh-5557
2019-07-12 16:09:19 -05:00
Eleftheria Stein 7961b819aa Allow configuration of session fixation and concurrency through nested builder
Issue: gh-5557
2019-07-12 13:53:55 -04:00
Clement Ng 28855e9cd6 Changed docs to reflect that init should apply configurers 2019-07-10 11:54:56 -05:00
Lars Grefer 3ea9d376b2 Cleanup explicit type arguments 2019-07-10 09:32:41 -05:00
Lars Grefer c5b5cc507c Cleanup redundant type casts 2019-07-10 09:31:09 -05:00
Eleftheria Stein 4b2539df10 Allow configuration of oauth2 resource server through nested builder
Issue: gh-5557
2019-07-09 16:11:26 -04:00
Eleftheria Stein 415760838f Allow configuration of oauth2 client through nested builder
Issue: gh-5557
2019-07-09 16:03:46 -04:00
Eleftheria Stein e47389e60b Allow configuration of oauth2 login through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein bf1bbd14e9 Allow configuration of openid login through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein c3dad06ea6 Allow configuration of request matchers through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 1ad9f15e19 Allow configuration of requires channel through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein ae8e12f049 Allow configuration of anonymous through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein a5943fbafb Allow configuration of servlet api through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 04e0dcfe61 Allow configuration of security context through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 81d3cf1e7b Allow configuration of authorize requests through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 1445d1b012 Allow configuration of request cache through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein fcb119b94e Allow configuration of remember me through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein ae9eb6f56b Allow configuration of x509 through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein bfc9538da1 Allow configuration of jee through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 86f0f84740 Allow configuration of port mapper through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 6fbea88e1e Allow configuration of session management through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 6fd515813c Allow configuration of cors through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein a9a1f8ee53 Allow configuration of form login through nested builder
Issue: gh-5557
2019-07-09 15:37:28 -04:00
Eleftheria Stein 758397f102 Allow configuration of headers through nested builder
Issue: gh-5557
2019-07-09 15:35:37 -04:00
Eleftheria Stein 6986cf3ef3 Allow configuration of csrf through nested builder
Issue: gh-5557
2019-07-09 10:14:18 -04:00
Eleftheria Stein 1a31376dda Allow configuration of exception handling through nested builder
Issue: gh-5557
2019-07-09 10:14:18 -04:00
Eleftheria Stein 92314b0956 Allow configuration of logout through nested builder
Issue: gh-5557
2019-07-09 10:14:18 -04:00
Eleftheria Stein d66d895e60 Migrate ServletApiConfigurerTests groovy->java
Issue: gh-4939
2019-07-04 12:14:49 -04:00
Clement Ng 491da9db03 Added OAuth2TokenAttributes to wrap attributes
To simplify access to OAuth 2.0 token attributes

Fixes gh-6498
2019-07-02 07:45:56 -06:00
Josh Cummings ee8182dceb
NamespaceSessionManagementTests groovy->java
Issue: gh-4939
2019-07-02 07:34:36 -06:00
Tadaya Tsuyukubo 7782e29a58 Allow custom ReactiveAuthenticationManager for basic and form auth
Prior to this change, "HttpBasicSpec#authenticationManager" and
"FormLoginSpec#authenticationManager" were always overridden by
"ServerHttpSecurity#authenticationManager".

This commit makes sure override only happens when custom authentication
manager was not specified.

Fixes: gh-5660
2019-06-28 11:04:21 -05:00
Eleftheria Stein 39ba1006ba Migrate FormLoginConfigurerSpec groovy->java
Issue: gh-4939
2019-06-27 11:53:32 -04:00
Eleftheria Stein 3c240d0ce3 Migrate DefaultLoginPageConfigurerTests groovy->java
Issue: gh-4939
2019-06-24 10:38:20 -04:00
Eleftheria Stein 12da990b6b Allow configuration of HTTP basic through nested builder
Issue: gh-5557
Fixes: gh-6885
2019-06-20 13:58:13 -05:00
Joe Grandja 6e76df8f1d Revert OAuth2AuthorizationCodeGrantWebFilter works with /{action}/
Issue #5856
Commit 385bdfc055

NOTE: This commit 'partially' reverts #5856. Only the ServerWebExchangeMatcher for OAuth2LoginSpec is reverted.

Fixes gh-6890
2019-06-19 16:06:38 -04:00
Joe Grandja 06943d2d39 Revert OAuth2LoginAuthenticationFilter should ignore authenticated requests
Issue #5915
Commit 93ca455405

Fixes gh-6890
2019-06-19 16:06:38 -04:00
Rafiullah Hamedy f6ed1db702 Introduced ReactiveAuthenticationManagerResolver
Suitable for multi-tenant reactive applications needing to branch
authentication strategies based on request details.
2019-06-13 08:52:19 -06:00
Eleftheria Stein 759e47ba84 Migrate OpenIDLoginConfigurerTests groovy->java
Issue: gh-4939
2019-06-12 15:23:47 -04:00
Eleftheria Stein e6ace0891f Migrate X509ConfigurerTests groovy->java
Issue: gh-4939
2019-06-11 17:31:53 -04:00
Eleftheria Stein 6ad46da426 Migrate ExpressionUrlAuthorizationConfigurerTests groovy->java
Issue: gh-4939
2019-06-11 15:46:37 -04:00
Eleftheria Stein 56b716d9f7 Migrate SessionManagementConfigurerTests groovy->java
Issue: gh-4939
2019-06-11 09:24:42 -04:00
Eleftheria Stein 1ec040e554 Disable bean proxying in configuration classes
Fixes gh-6967
2019-06-10 20:40:06 -05:00
Eleftheria Stein 371a3b9c7f Migrate CorsConfigurerTests groovy->java
Issue: gh-4939
2019-06-10 16:36:38 -04:00
Eleftheria Stein-Kousathana c4dd800653
Merge pull request #6944 from eleftherias/gh-4939-channel-security-groovy-to-java
Migrate ChannelSecurityConfigurerTests groovy->java
2019-06-10 15:28:42 -04:00
Vishal Raj b6e8997e95 Updates OAuth2ResourceServer configuration tests
Refactores collapsed imports
2019-06-07 11:56:03 -06:00
Eleftheria Stein d285c6ab4c Migrate JeeConfigurerTests groovy->java
Issue: gh-4939
2019-06-07 12:05:25 -05:00
Eleftheria Stein 8e6db95048 Fix HttpSecurity Javadoc for jee() method
Fixes: gh-6958
2019-06-07 11:21:05 -05:00
Daniel Meier fcd8a38f0b Add success handler modification of OAuth2LoginSpec
Add the ability to modify the success handler used in OAuth2LoginSpec. The
default success handler remains unchanged.

Closes #6863
2019-06-05 13:25:34 -04:00
Eleftheria Stein abe7da6b85 Migrate RememberMeConfigurerTests groovy->java
Issue: gh-4939
2019-06-04 15:12:11 -05:00
Eleftheria Stein 06d3b60947 Replace bean method calls with injection
This is so that our configuration classes do not rely on CGLIB to proxy bean methods.

Fixes gh-6818
2019-06-03 15:45:28 -05:00
Eleftheria Stein 4f042a4ff1 Migrate ChannelSecurityConfigurerTests groovy->java
Issue: gh-4939
2019-06-03 11:09:49 -04:00
Eleftheria Stein be651d9d16 Migrate CsrfConfigurerTests groovy->java
Issue: gh-4939
2019-05-31 13:18:55 -06:00
Eleftheria Stein 6148eef689 Migrate SecurityContextConfigurerTests groovy->java
Issue: gh-4939
2019-05-31 12:07:28 -06:00
Eleftheria Stein 16b0d782f4 Migrate HeadersConfigurerTests groovy->java
Issue: gh-4939
2019-05-31 11:57:01 -06:00
Eleftheria Stein 7806ac21aa Migrate RequestMatcherConfigurerTests groovy->java
Issue: gh-4939
2019-05-31 11:48:34 -06:00
Florian Aumeier 9fe8949883 Add @transient to OAuth2IntrospectionAuthenticationToken
fixes gh-6829
2019-05-29 08:42:09 -06:00
Eleftheria Stein e15922322e Migrate LogoutConfigurerTests groovy->java
Issue: gh-4939
2019-05-27 22:53:51 -06:00
Eleftheria Stein d660084538 Migrate HttpBasicConfigurerTests groovy->java
Issue: gh-4939
2019-05-23 09:24:58 -06:00
Eleftheria Stein f5f965b6aa Fix JavaDoc for defaultSuccessUrl
Fixes gh-3337
2019-05-17 10:50:30 -05:00
Josh Cummings 1ed9e3a1c6
Resource Server AuthenticationManager
Making the authentication manager for jwt() and opaqueToken()
configurable.

Fixes: gh-6832
Fixes: gh-6849
2019-05-07 17:04:51 -06:00
Joe Grandja 5aa50500cf oauth2Login does not auto-redirect for XHR request
Fixes gh-6812
2019-05-02 16:04:09 -04:00
Tadaya Tsuyukubo aef3f514fe Set "rolePrefix" in ReactiveMethodSecurityConfiguration
Currently, `GrantedAuthorityDefaults` is not considered in
`ReactiveMethodSecurityConfiguration`.
This commit updates the configuration to be aware of
`GrantedAuthorityDefaults` and update `rolePrefix` when the bean is
available.

Also, use the same instance of `DefaultMethodSecurityExpressionHandler`
when constructing `ExpressionBasedAnnotationAttributeFactory`.
2019-05-02 10:46:27 -05:00
Josh Cummings cf0c5f9026
Various NamespaceHttp*Tests groovy->java
Issue: gh-4939
2019-04-29 23:36:06 -06:00
Josh Cummings b1195e7789 Opaque Token Intermediate Type
Introducing OAuth2TokenIntrospectionClient and also
ReactiveOAuth2TokenIntrospectionClient as configuration points.

The DSL looks in the application context for these types in the same
way it looks for JwtDecoder and ReactiveJwtDecoder, and exposes
similar configuration methods.

Fixes: gh-6632
2019-04-29 13:39:53 -06:00
Alexey Nesterov 9a67441507 Add x509 support for Reactive Security
[gh #5038]
2019-04-26 12:15:18 -05:00
Joe Grandja 5aacd0c955 Expose bean setters in @Configuration used by @EnableWebFluxSecurity
Fixes gh-6624
2019-04-23 11:46:09 -04:00
Josh Cummings 1c25fe26c9 Introduce Support for Reading RSA Keys
Fixes: gh-6494
2019-04-13 19:39:11 -06:00
Dan Zheng 570eb01733 review phase1 2019-04-13 19:22:44 -06:00
Dan Zheng 678e0b19e0 Introduce @CurrentSecurityContext for method arguments 2019-04-13 19:22:44 -06:00
Denis Babochenko 21f7148e7a Update filters documentation
Fixes: gh-5553
2019-04-13 19:21:10 -06:00
Josh Cummings 7e8aadeb96 Multi-tenancy for Resource Server
Fixes: gh-5351
2019-03-29 15:00:48 -06:00