143 Commits

Author SHA1 Message Date
Marcus Da Coregio
7112ee3eaa Allow SAML 2.0 loginProcessingURL without registrationId
Closes gh-10176
2021-10-04 09:54:40 -03:00
Marcus Da Coregio
e36e2b2a97 Move Saml2AuthnRequestRepository to web package
Moving to solve package tangles

Issue gh-9185
2021-09-29 14:10:39 -03:00
Daniel Garnier-Moiroux
2fb8e66bc8 Saml2WebSsoAuthenticationFilter adds authentication details
Closes gh-7722
2021-09-27 11:44:30 -03:00
Josh Cummings
194993ad1a Add Saml2ParameterNames
Closes gh-10270
2021-09-14 17:40:12 -06:00
Josh Cummings
c63d618b26 Add Single Logout Support
Closes gh-8731
2021-09-13 16:39:48 -06:00
Josh Cummings
6488295cad Add RelyingPartyRegistrationResolver
Closes gh-9486
2021-09-13 16:39:48 -06:00
Josh Cummings
f5a525e740 Add Registration to Saml2Authentication
Closes gh-9487
2021-09-13 16:39:48 -06:00
Russell Allen
1806cebd64 Fix Assertion
Closes gh-10055
2021-08-09 10:09:06 -03:00
Josh Cummings
d5c953b106
Polish Saml2AuthenticationRequestRepository
- Moved docs into AuthnRequest section, changed links to be more
semantically valuable to search engines
- Moved tests to be nearer to similar tests

Issue gh-9185
2021-07-27 14:56:23 -06:00
Marcus Da Coregio
16e17d242e Add Saml2AuthenticationRequestRepository
Closes gh-9185
2021-07-27 14:55:53 -06:00
Rob Winch
3e93b024d6 openrewrite Junit Migration 2021-07-09 14:32:52 -05:00
Daniel Garnier-Moiroux
298068503b Fix Saml2WebSsoAuthenticationRequestFilter javadoc 2021-06-30 13:41:52 +02:00
Marcus Hert da Coregio
03ded987af Allow Defining Custom SAML Response Validator
Add a setter method into OpenSaml4AuthenticationProvider that allows defining a custom ResponseValidator

Closes gh-9721
2021-06-30 08:26:42 -03:00
Marcus Hert da Coregio
6474a9e76e Allow Creating RelyingPartyRegistration from Metadata InputStream
Update SAML2 Login reference documentation to reflect the changes

Closes gh-9558
2021-06-30 08:02:24 -03:00
Josh Cummings
8e0a91d12f
Rebase OpenSamlSigningUtils and Tests
Issue gh-9865
2021-06-07 12:38:56 -06:00
Filip Hanik
adad2da964
Provide KeyInfo in Signature for AuthnRequests
Closes gh-9856
2021-06-07 12:38:55 -06:00
Rob Winch
eda38b8f88 opensaml fixes 2021-05-17 15:51:55 -05:00
Josh Cummings
d0d0a8d958 Add OpenSAML 4 Support
Closes gh-9095
2021-03-23 19:07:23 -06:00
Josh Cummings
a015b8b000 Add Saml2MessageBinding#from
Closes gh-9515
2021-03-23 19:07:23 -06:00
Josh Cummings
c860076ef5
Fix Saml2MetadataFilter Test
Issue gh-9281
2021-03-02 16:32:17 -07:00
Han YanJing
f3fa8e8800
Polish
Issue gh-9310
2021-03-02 12:04:22 -07:00
Han YanJing
6e41246a2b
Throw Saml2AuthenticationException
Closes gh-9310
2021-03-02 12:04:22 -07:00
Josh Cummings
3e8ad4bc2b
Polish Test
Issue gh-9281
2021-03-02 08:24:34 -07:00
Han YanJing
c0fa3f906d
Encode the Content-Disposition header following RFC 8187
Closes gh-9281
2021-03-02 08:24:34 -07:00
Han YanJing
fb391c5dcd
Add setMetadataFilename method to Saml2MetadataFilter
Closes gh-9317
2021-03-02 08:24:34 -07:00
Josh Cummings
76229cfab7
Migrate SAML 2.0 Tests and Docs to PCFOne
Issue gh-9362
2021-01-22 15:14:03 -07:00
Josh Cummings
7dde7cffda
Add Status Check
Closes gh-8955
2021-01-05 17:32:47 -07:00
Josh Cummings
aba0e904f0
Read SigningMethod Elements
Closes gh-9177
2020-11-02 11:27:23 -07:00
Josh Cummings
e1826a0bd8
Polish Signature Algorithm Support
- Changed name to signatureAlgorithms since method and algorithm are
synonymous
- Re-ordered methods to follow typical IDPSSODescriptor order
- Adjusted JavaDoc to refer to IDPSSODescriptor terminology

Issue gh-8952
2020-11-02 11:27:23 -07:00
Arnaud Mergey
9900658c92
support configurable signature algorithm
Closes gh-8952
2020-11-02 11:27:23 -07:00
Josh Cummings
5699670a43
Polish OpenSamlAuthenticationProvider
Remove deprecated usage

Issue gh-8769
2020-10-14 16:49:37 -06:00
Josh Cummings
c8cbf06d8d
Add EncryptedAttribute support
Closes gh-9131
2020-10-14 14:58:42 -06:00
Josh Cummings
d0581c9a26
Polish Configurable SAML Decryption Support
- Renamed to setResponseElementsDecrypter and
setAssertionElementsDecrypter to align with ResponseToken and
AssertionToken
- Changed contract of setAssertionElementsDecrypter to use
AssertionToken
- Changed assertions in unit test to use isEqualTo

Issue gh-9044
2020-10-14 14:58:42 -06:00
ryan.cassar
535ae3e27d
Add Configurable SAML Response Decryption
Closes gh-9044
2020-10-14 10:38:05 -06:00
Josh Cummings
e6ff57c116
Polish RelyingPartyRegistrations
Issue gh-9028
2020-10-12 13:55:16 -06:00
ryan.cassar
9a11cc84ad
Add File-based Metadata Resolution
Closes gh-9028
2020-10-12 13:55:16 -06:00
Josh Cummings
bdfd6f9f92
Remove Unused Code
Issue gh-8887
2020-09-28 13:07:48 -06:00
Josh Cummings
bcfbd2dee5
Remove Unused Code
Issue gh-8877
2020-09-26 09:06:28 -06:00
Josh Cummings
a36baffb3a
Polish OpenSamlAuthenticationRequestFactory
- Refactored to use SAMLMetadataSignatureSigningParametersResolver

Issue gh-7758
2020-09-26 09:06:24 -06:00
Josh Cummings
2ee455b7bf
Add EntitiesDescriptor Support
Closes gh-9051
2020-09-25 16:23:18 -06:00
Phillip Webb
20baa7d409 Replace ExpectedException @Rules with AssertJ
Replace JUnit ExpectedException @Rules with AssertJ calls.
2020-09-22 16:13:51 -06:00
Phillip Webb
910b81928f Replace try/catch with AssertJ
Replace manual try/catch/fail blocks with AssertJ calls.
2020-09-22 16:13:51 -06:00
Rob Winch
2abf59b695 Merge Formatting Changes
Issue gh-8945
2020-08-24 17:33:23 -05:00
Phillip Webb
319d3364aa Migrate to assertThatExceptionOfType
Consistently use `assertThatExceptionOfType(...).isThrownBy(...)`
rather than `assertThatCode` or `assertThatThrownBy`. This aligns with
Spring Boot and Spring Cloud. It also allows the convenience
`assertThatIllegalArgument` and `assertThatIllegalState` methods to
be used.

Issue gh-8945
2020-08-24 17:33:09 -05:00
Phillip Webb
a5aa6b3d7f Remove blank lines from all tests
Remove all blank lines from test code so that test methods are
visually grouped together. This generally helps to make the test
classes easer to scan, however, the "given" / "when" / "then"
blocks used by some tests are now not as easy to discern.

Issue gh-8945
2020-08-24 17:33:09 -05:00
Phillip Webb
1f03608b73 Polish spring-security-saml2 main code
Manually polish `spring-security-saml2` following the formatting
and checkstyle fixes.

Issue gh-8945
2020-08-24 17:33:09 -05:00
Phillip Webb
834dcf5bcf Use consistent ternary expression style
Update all ternary expressions so that the condition is always in
parentheses and "not equals" is used in the test. This helps to bring
consistency across the codebase which makes ternary expression easier
to scan.

For example: `a = (a != null) ? a : b`

Issue gh-8945
2020-08-24 17:33:08 -05:00
Phillip Webb
8d3f039f76 Reduce method visibility when possible
Reduce method visibility for package private classes when possible.

In the case of abstract classes that will eventually be made public,
the class has been made public and a package-private constructor has
been added.

Issue gh-8945
2020-08-24 17:33:08 -05:00
Phillip Webb
52f20b5281 Use parenthesis with single-arg lambdas
Use regular expression search/replace to ensure all single-arg
lambdas have parenthesis. This aligns with the style used in Spring
Boot and ensure that single-arg and multi-arg lambdas are consistent.

Issue gh-8945
2020-08-24 17:33:08 -05:00
Phillip Webb
01d90c9881 Hide utility class constructors
Update all utility classes so that they have a private constructor. This
prevents users from accidentally creating an instance, when they should
just use the static methods directly.

Issue gh-8945
2020-08-24 17:33:08 -05:00