Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify retrieving Introspection-specific attributes #26

Open
wants to merge 247 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
247 commits
Select commit Hold shift + click to select a range
40b15f5
Rename to SessionFixationDslTests
eleftherias Mar 17, 2020
e00a030
Document OAuth 2.0 Client XML Support
jgrandja Mar 17, 2020
ad9bb7f
Fix typo in Javadoc of HttpSecurity#csrf()
evpaassen Mar 17, 2020
4da7235
Document OAuth2AuthorizationRequest customization improvements
jgrandja Mar 17, 2020
f438bdf
Add spring-security-5.4.xsd
jzheaux Mar 18, 2020
4d99ee2
Allow port=0 in XSD
jzheaux Mar 18, 2020
2d8c65d
Support port=0 for LDAP Servers
jzheaux Mar 18, 2020
06fdb83
Document Jackson serialization support for OAuth 2.0 Client
jgrandja Mar 18, 2020
a9dabf6
Assign sensible default for OAuth2AuthorizedClientProvider
jgrandja Mar 19, 2020
97085ef
Fix rsocket test
eleftherias Mar 19, 2020
5bff741
Document AuthorizedClientServiceOAuth2AuthorizedClientManager
jgrandja Mar 19, 2020
088ea07
Simplify Saml2ServletUtils
jzheaux Mar 18, 2020
7f2f210
Simplify OpenSamlImplementation
jzheaux Mar 18, 2020
d1dbd92
Document OAuth2Authorization success and failure handlers
jgrandja Mar 20, 2020
1a1be6a
Polish SAML 2.0 Login Sample
jzheaux Mar 20, 2020
0e9497d
Document SAML 2.0 Improvements
jzheaux Mar 13, 2020
10c66d2
Fix userNameAttribute property case style
Mar 23, 2020
2c103f3
Add password storage Kotlin samples to docs
eleftherias Mar 24, 2020
46baf38
Fix OAuth2AuthorizationRequest additionalParameters/attributes Consumer
jgrandja Mar 23, 2020
93ed92c
OAuth2ErrorHttpMessageConverter handles JSON object parameters
jgrandja Mar 24, 2020
933104d
Document JwtGrantedAuthoritiesConverter Features
jzheaux Mar 24, 2020
8872d8b
Polish Resource Server Multi-tenancy Docs
jzheaux Mar 24, 2020
dcacd06
Polish Resource Server JWT Docs
jzheaux Mar 24, 2020
e62b8a7
Add Figures to Resource Server Docs
jzheaux Mar 24, 2020
e27e548
oauth2Login WebFlux does not auto-redirect for XHR request
jgrandja Mar 26, 2020
5b4cb5b
Add filter Kotlin samples to docs
eleftherias Mar 26, 2020
8e5e0c4
Add delegating filter proxy Kotlin samples to docs
eleftherias Mar 26, 2020
6d61b87
Add security context holder Kotlin samples to docs
eleftherias Mar 26, 2020
75c05d0
OAuth2 ClientRegistrations NPE fix when userinfo missing
Mar 26, 2020
7c0023e
Update Encryptors documentation
eleftherias Mar 27, 2020
636f0b9
Upgrade to Gradle Enterprise Plugin 3.2
wilkinsona Mar 26, 2020
81ad295
Clarify ServerBearerExchangeFilterFunction Docs
jzheaux Mar 27, 2020
eed7124
SwitchUserFilter Defaults to POST
jzheaux Mar 27, 2020
ad5bfc8
Fix links in oauth2 doc
wassan128 Mar 27, 2020
018cbfa
Add preauth Kotlin samples to docs
eleftherias Mar 30, 2020
63c8072
Add crypto Kotlin samples to docs
eleftherias Mar 30, 2020
946de2a
Revert "Fix links in oauth2 doc"
jgrandja Mar 30, 2020
b055f8b
SpringTestContext returns ConfigurableWebApplicationContext
rwinch Mar 30, 2020
91728ef
Fix HttpServlet3RequestFactory Logout Handlers
rwinch Mar 30, 2020
71b4248
Improve OAuth2LoginAuthenticationProvider
rh-id Mar 19, 2020
72f13c8
Update to aspectj-plugin:4.1.6
rwinch Apr 1, 2020
1de0cf5
Fix HttpSecurity Javadoc
eleftherias Apr 2, 2020
dc6b8ce
Add addFilterAfter and addFilterBefore to Kotlin DSL
mengelbrecht Apr 3, 2020
eacd212
Adding Map support to DefaultMethodSecurityExpressionHandler
maxtacco Apr 4, 2020
6d45ec5
Fix typo in Javadoc of ServerHttpSecurity#hasAuthority
hotire Apr 6, 2020
b57c2f2
Updating authorization docs to mention handling of Maps in @PreFilter…
maxtacco Apr 6, 2020
b6fb063
Adding Map support to DefaultMethodSecurityExpressionHandler
rwinch Apr 7, 2020
6017510
Compile Kotlin tasks using JVM 1.8
eleftherias Apr 7, 2020
39e09e4
Idiomatic Kotlin DSL for server HTTP security
eleftherias Apr 7, 2020
6bdd5f7
Fix example in javadoc of FilterChainProxy
mustafau Apr 7, 2020
4b2afdf
BCryptPasswordEncoder rawPassword cannot be null
alan-czajkowski Apr 4, 2020
8cf4ada
Update Spring Kotlin plugin in sample
eleftherias Apr 7, 2020
420737f
Add Kotlin WebFlux sample
eleftherias Apr 7, 2020
25fb1f4
Added setPrincipalClaimName to JwtAuthenticationConverter
evgeniycheban Apr 2, 2020
d64968a
Fix example in javadoc of FilterChainProxy
rwinch Apr 8, 2020
681d2d6
Fix typos in FAQ reference docs
eleftherias Apr 8, 2020
5f1eb39
Add WebFlux Kotlin samples to docs
eleftherias Apr 8, 2020
0ca65f8
Add Missing JavaDoc
jzheaux Apr 8, 2020
887cb99
Saml2AuthenticationRequestFilter Tests
jzheaux Apr 8, 2020
711954e
Deprecate Saml2AuthenticationRequestFilter Constructor
jzheaux Apr 8, 2020
95f0d02
Polish Saml2WebSsoAuthenticationRequestFilter
jzheaux Apr 8, 2020
2f8eb16
Allow custom header during bearer token extraction
TJReinert Apr 7, 2020
419d726
Add Docs for Custom Bearer Token Header
jzheaux Apr 9, 2020
b7d3acc
Add constructors to AbstractAuthenticationProcessingFilter
HomoEfficio Apr 9, 2020
9133cc2
Add Cache to NimbusJwtDecoderJwkSetUriBuilder
20fps Apr 6, 2020
10aa974
Polish NimbusJwtDecoder
jzheaux Apr 10, 2020
ad8c49a
Add Docs
jzheaux Apr 10, 2020
9a42a02
Logout defaults to use Global SecurityContextServerLogoutHandler
rwinch Apr 13, 2020
a70d555
Resource Server Finds JwtAuthenticationConverter Beans
evgeniycheban Apr 12, 2020
13b2b00
Add JwtAuthenticationConverter docs
jzheaux Apr 13, 2020
4e5a3a7
Open Saml2AuthenticationRequestContext
shazin Apr 9, 2020
146d9ba
Add marker to make Kotlin DSL type safe.
LLabagnara Apr 13, 2020
62fa697
Add GitHub Issue Templates
rwinch Apr 15, 2020
71fcd58
Remove legacy issue template
rwinch Apr 15, 2020
29e81bc
Use Default Community Files
rwinch Apr 15, 2020
13482db
Add LICENSE.txt
rwinch Apr 15, 2020
a8b4385
CONTRIBUTING to adoc
rwinch Apr 15, 2020
1b4f6bb
Link to shared CODE_OF_CONDUCT
rwinch Apr 15, 2020
27b711a
Add `status: waiting-for-triage` to issue templates
rwinch Apr 16, 2020
5eb7134
Update issue templates
rwinch Apr 16, 2020
b1c8aff
Update issue templates
rwinch Apr 16, 2020
7056c2d
Polish OpenSamlAuthenticationProviderTests
jzheaux Mar 31, 2020
8904361
Polish Saml Tests
jzheaux Mar 31, 2020
2eebfd3
Polish http links
jzheaux Apr 16, 2020
64a5bb0
Fix typo with correct capitalization
souphorn Apr 17, 2020
2cccf22
Add Flag to enable searching of LDAP groups on subtrees
bberto Apr 16, 2020
5cd1ec7
Add AuthoritiesMapper setter for reactive OAuth2Login
antonin-arquey Apr 9, 2020
b9b8903
Documented dependencies opaque Resource Server
pgerhard Apr 17, 2020
8c0bdd5
Delegating Saml2AuthenticationRequestContext creation to Saml2Authent…
shazin Apr 11, 2020
ab77289
Polish DefaultSaml2AuthenticationRequestContextResolver
jzheaux Apr 17, 2020
1da694e
Remove TestSaml2SigningCredentials
jzheaux Apr 17, 2020
ebc6012
Rename Preface to Introduction
corneliouzbett Apr 17, 2020
a88c771
Fix mismatch between CONTRIBUTING.adoc and .editorconfig
VonUniGE Apr 19, 2020
70792a9
Document description error
dadikovi Apr 18, 2020
32ce94d
Validate ID Token Issuer
furti Apr 8, 2020
60d4d5b
Enables empty authorityPrefix
judomu Apr 21, 2020
401393d
Extract pattern type in request matcher DSL
adamu Apr 9, 2020
16a7cbe
Use named arguments in Kotlin authorization rule
adamu Apr 9, 2020
0f29bee
Add authorize() DSL method that accepts HttpMethod
adamu Apr 8, 2020
f7b33da
ActiveDirectoryLdapAuthenticationProvider uses InternalAuthentication…
dadikovi Apr 19, 2020
8e8251a
Add ROLE_INFRASTRUCTURE to infrastructure beans
dadikovi Apr 23, 2020
4d63e2f
AesBytesEncryptor constructor that uses secret key
eleftherias Apr 27, 2020
a783fbc
Support update when saving with JdbcOAuth2AuthorizedClientService
stavshamir Apr 24, 2020
b826c79
Add RequestRejectedHandler
leonard84 Nov 15, 2019
0483b3e
Polish RequestRejectedHandler
rwinch May 1, 2020
4a9fa03
Allow Configure RequestRjectedHandler in XML
rwinch May 1, 2020
1ca47f5
Fix typo in Java configuration docs
eleftherias May 1, 2020
339d44b
Deprecate openID 2.0 support
dadikovi Apr 25, 2020
84f45e4
Deprecate OpenID 2.0 Support
ThomasVitale Oct 22, 2019
2d9a6ac
Deprecate openID 2.0 support
dadikovi May 2, 2020
6ec5f77
Upgrade Freefair AspectJ plugin to v5.0.1
bigdaz May 4, 2020
1f1ddeb
SecurityMockMvcConfigurer$DelegateFilter is not null-safe
dadikovi May 1, 2020
7748fb0
Fix typos in documentation
ahrytsiuk May 3, 2020
d4dbe06
Polish OpenSamlAuthenticationProvider
jzheaux Mar 31, 2020
db155b3
Clean up Javadoc
eleftherias Apr 30, 2020
026a951
Remove JDK 9 and JDK 10 build from Jenkins pipeline
eleftherias May 5, 2020
5452861
Update SAML2 errors in integration tests
eleftherias May 6, 2020
07f8154
Temporarily build against Framework 5.2.x snapshot
eleftherias May 6, 2020
206960c
Lock dependencies for 5.4.0-M1
jgrandja May 6, 2020
c506ee6
Release 5.4.0-M1
jgrandja May 6, 2020
86ca6b0
Unlock dependencies
jgrandja May 6, 2020
f92ab34
Next development version
jgrandja May 6, 2020
9dcdae3
Update Traditional Chinese translation.
tan9 May 6, 2020
e1fd0b3
Update to spring-build-conventions:0.0.32.RELEASE
rwinch May 6, 2020
6d5d883
Use Opaquetoken properties to configure timeouts
May 6, 2020
d91b153
Explicitly set useSuffixPatternMatch for Tests
rwinch May 8, 2020
f2a2b46
Deprecate openID 2.0 support
dadikovi May 9, 2020
fbd3cfa
Fix code snippets to configure timeouts
May 11, 2020
1aadbb2
Remove "/path/**/other" patterns in tests
eleftherias May 11, 2020
6db514a
Update AntPathRequestMatcher.java
May 11, 2020
0f92415
Fix non-standard HTTP method for CsrfWebFilter
parikshitdutta May 1, 2020
4473dca
Polish matchesRequireCsrfProtectionWhenNonStandardHTTPMethodIsUsed
rwinch May 11, 2020
8d44763
Fix non-standard HTTP method for CsrfWebFilter
rwinch May 11, 2020
cd08102
Add debug logging
mouellet May 1, 2020
e5d2aaf
Deprecate OpenID 2.0 support
rwinch May 12, 2020
bb05603
AbstractUserDetailsReactiveAuthenticationManager uses boundidElastic()
rwinch May 12, 2020
db4ca1f
Document NoOpPasswordEncoder will not be removed
dadikovi May 9, 2020
78fa859
Add issuerUri to ClientRegistration.providerDetails
ThomasVitale May 7, 2020
c1abc9b
Polish gh-8501
jgrandja May 14, 2020
1e211b6
Add RequestCache setter in OAuth2AuthorizationCodeGrantFilter
parikshitdutta Apr 14, 2020
bfb401e
Create the CSRF token on the bounded elactic scheduler
cbornet May 15, 2020
7c7934c
Remove Extra TestSaml2X509Credentials
jzheaux Apr 17, 2020
9241cd2
Move TestRelyingPartyRegistrations
jzheaux Apr 17, 2020
8e7c4c1
Add TestSaml2AuthenticationRequestContexts
jzheaux Apr 17, 2020
51a0cff
Post-process AuthenticationRequestFilter
jzheaux Apr 17, 2020
4ab9da1
Object ID Identicy conversion to long fails on old schema
dadikovi May 16, 2020
b04b34b
Fix Logout in OpenID Sample
jzheaux May 19, 2020
c519d72
Polish hellojs Sample
jzheaux May 19, 2020
9a72654
Update to jQuery 3.5.1
jzheaux May 19, 2020
16b0a26
Update index.adoc
AndreasVolkmann May 17, 2020
dc514b3
FilterInvocation Support Default Methods on HttpServletRequest
rwinch May 20, 2020
f08ca4e
Throw exception if URL does not include context path when context rel…
yoshikawaa Apr 16, 2020
4f58576
Prevent StackOverflowError for AccessControlEntryImpl.hashCode
Maxvgrad Apr 27, 2019
014df98
Polish
thomasturrell May 18, 2020
bf9e829
mentioning the default strength of BCryptPasswordEncoder
islamazhar May 18, 2020
06254a4
Remove unused field 'digester' in Md4PasswordEncoder
justmehyp May 19, 2020
0fa339f
Allow port=0 for ApacheDSContainer
evgeniycheban Apr 18, 2020
dbdeec4
Check for an existing SessionRegistry bean
candrews May 14, 2020
f1db716
Polish
candrews May 18, 2020
0a42aa2
Mock request with non-standard HTTP method in test
eleftherias May 26, 2020
bc272dd
Resolve package tangles in Kotlin server package
eleftherias May 21, 2020
67d2efd
Resolve package tangles with security marker annotation
eleftherias May 21, 2020
551f911
Fixing typo in README
sgilson May 22, 2020
7463583
Fix typos in BCryptPasswordEncoder documentation
mengelbrecht May 23, 2020
fa11ae3
Remove unused import
eleftherias May 27, 2020
6f5947c
Fix test warnings
eleftherias May 27, 2020
61060b3
Add multipart configuration to CSRF Kotlin DSL
eleftherias May 27, 2020
23db372
Update to Gradle 6.4.1
jzheaux May 27, 2020
b6f5464
Update to Latest rsocket-core
jzheaux May 27, 2020
d014d29
Update to Spring Boot 2.3.0
jzheaux May 27, 2020
900f551
Inject TestOAuth2AuthorizedClientRepository
jzheaux May 27, 2020
8d84bc5
Remove Unneeded OAuth2AuthorizedClientRepository
jzheaux May 27, 2020
d5b8981
Polish OAuth 2.0 Samples
jzheaux May 27, 2020
42a8635
Remove @MockBean ClientRegistrationRepository
jzheaux May 27, 2020
da05543
Update OAuth 2.0 Client Testing Docs
jzheaux May 27, 2020
a63a0e3
Add reactive CSRF samples to docs
eleftherias May 28, 2020
748538d
Delay AuthenticationPrincipalArgumentResolver Creation
rwinch May 29, 2020
d8aa208
Fix broken link in spring security reference document
dkodippily Jun 1, 2020
aa84c79
Use Nimbus Multiple Algorithm Support
jzheaux Jun 2, 2020
28d2cfa
Add ServerRequestCache setter in OAuth2AuthorizationCodeGrantWebFilter
parikshitdutta May 23, 2020
24a04f9
Add subscriberContext to PayloadSocketAcceptor delegate.accept
rwinch Jun 5, 2020
cd3fd67
Don't Consume Request Body
eamelink Jun 4, 2020
1d821a2
Add Ticket Number to Test
jzheaux Jun 5, 2020
bb0fac6
Fix a few typos in the documentation
robin850 Jun 9, 2020
4c902bb
OAuth2AuthorizationCodeGrantWebFilter should handle OAuth2Authorizati…
jgrandja Jun 9, 2020
da4b626
OAuth2LoginAuthenticationWebFilter should handle OAuth2AuthorizationE…
jgrandja Jun 9, 2020
6fbe58e
Update RSocket Sample to use RSocket 1.0.1
rwinch Jun 10, 2020
a907026
Deprecate X-FRAME-OPTIONS ALLOW-FROM Directive
rwinch Jun 10, 2020
ca1252b
Replace whitelist with allowlist
rwinch Jun 10, 2020
ccbad61
Change blacklist to blocklist
rwinch Jun 10, 2020
4e7be20
DefaultWebSecurityExpressionHandler uses RoleHierarchy bean
evgeniycheban Jun 4, 2020
e213e64
Create Github Actions pipeline for PR build workflow
elliedori Jun 11, 2020
eb351f4
Use `Closes gh-<number>`
rwinch Jun 11, 2020
224361c
Fix typo in Javadoc
eleftherias Jun 15, 2020
27e1c58
Merge pull request #8680 from elliedori/github-actions-pr-pipeline
elliedori Jun 16, 2020
5302fb7
ProviderManager Uses CollectionUtils#contains
yukihane Jun 16, 2020
c177b39
Polish ProviderManagerTests
yukihane Jun 16, 2020
145bb89
Use Spring Releases for Now
rwinch Jun 17, 2020
9895d01
Simplify Multitenancy Example
jzheaux Jun 17, 2020
7319e81
Change pipeline to run for all base branches
elliedori Jun 17, 2020
ca63af4
Remove Travis pipeline and README badge
elliedori Jun 17, 2020
406cde8
Use Spring Snapshots Again
rwinch Jun 18, 2020
efb6953
Reject the NULL character in paths in StrictHttpFirewall
candrews Jun 3, 2020
eed3322
Add SAML Attribute Support
Jun 9, 2020
360db53
Polish SAML Attribute Support
jzheaux Jun 16, 2020
8cbdcfe
Document SAML Attribute Support
jzheaux Jun 18, 2020
a344dbd
Use AssertJ
jzheaux Jun 18, 2020
6e0d2f3
Use reactorVersion 20+ for snapshot tests
rwinch Jun 19, 2020
c854f6b
Add missing Javadoc
eleftherias Jun 22, 2020
12d20f9
Fix incorrect Javadoc
eleftherias Jun 22, 2020
659b25a
Fix typo in OAuth2AccessTokenResponse
jgrandja Jun 22, 2020
88028d8
formLogin() and login() implement Mergable
dadikovi May 9, 2020
c71352c
Validate headers and parameters in StrictHttpFirewall
candrews Jun 3, 2020
97ee6d6
Fix SecurityContext creation for TEST_EXECUTION
MGabr Jun 21, 2020
dac7806
Test beforeTestMethod delays creation of SecurityContext
rwinch Jun 24, 2020
565fd28
Update to spring-build-conventions:0.0.33.RELEASE
rwinch Jun 25, 2020
e113bd3
issue 5414 - configurable secure flag in CookieCsrfTokenRepository
Jun 22, 2020
951e641
Register OAuth2AuthorizedClientArgumentResolver for XML Config
jgrandja Jun 24, 2020
feb49ea
Add Timeout to Ldap Test
jzheaux Jun 25, 2020
95f1f81
Set Integration Test LDAP Port to Zero
jzheaux Jun 25, 2020
3c2a97e
Use more efficient singletonList in JdbcAclService
stsypanov Jun 24, 2020
d31fff1
Add Post-Processor for JWTProcessor Configuration
jrehwaldt Jun 22, 2020
08b69e7
Merge Project Modules and Dependencies Section of the docs
unix1982 Jun 29, 2020
f5e0fe5
Polish documentation formatting
eleftherias Jun 29, 2020
edf06a3
OAuth2AuthorizedClientArgumentResolver uses OAuth2AuthorizedClientMan…
jgrandja Jun 30, 2020
497ef5e
OAuth2AccessTokenResponse.Builder.expiresIn works after withResponse
benba Jun 26, 2020
eb7b276
Compare Timestamps up to the millisecond
eleftherias Jul 1, 2020
3e25714
Add reified function variants to security DSL
Jun 28, 2020
0b5a14a
Register OAuth2AuthorizedClientArgumentResolver as custom resolver fo…
jgrandja Jul 1, 2020
5178cc7
Update to Google App Enging 1.7.80
jzheaux Jul 1, 2020
cb9d524
Release 5.4.0-M2
jzheaux Jul 1, 2020
609e6de
Update to Kotlin 1.3.72
jzheaux Jul 1, 2020
c04ebe3
Update to Spring Boot 2.4.0-M1
jzheaux Jul 1, 2020
6853889
Lock Dependency Versions for 5.4.0-M2
jzheaux Jul 1, 2020
146d0b6
Revert "Lock Dependency Versions for 5.4.0-M2"
jzheaux Jul 1, 2020
d3dc8b0
Next Development Version
jzheaux Jul 1, 2020
9708a2d
Adds cookie based RequestCache
zeeshanadnan Jun 4, 2020
4fb5ff3
Polish CookieRequestCache
eleftherias Jul 2, 2020
0bdf685
Add Kotlin logout samples to docs
eleftherias Jul 6, 2020
f479f0e
Add Kotlin expression-based authorization
eleftherias Jul 6, 2020
09fe607
LoginPageGeneratingWebFilter honors context path
rwinch Jul 7, 2020
9c33a86
tutorial hasRole->hasAuthority
rwinch Jul 7, 2020
4269cb0
update comments
lenve Jul 6, 2020
8e8a642
Use Spec Language in RelyingPartyRegistration
jzheaux Jul 1, 2020
815ceae
Allow disabling headers in Kotlin DSL
eleftherias Jul 8, 2020
896b324
Updated SimpleSavedRequest#getMethod
sentinalll Jun 19, 2020
5574566
Simplify retrieving OAuth 2.0 Introspection attributes
qavid Jul 8, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 0 additions & 10 deletions .github/ISSUE_REPLY_TEMPLATES.md

This file was deleted.

24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Bug
about: Create a bug report to help us improve
title: ''
labels: 'status: waiting-for-triage, type: bug'
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior.

**Expected behavior**
A clear and concise description of what you expected to happen.

**Sample**

A link to a GitHub repository with a [minimal, reproducible sample](https://stackoverflow.com/help/minimal-reproducible-example).

Reports that include a sample will take priority over reports that do not.
At times, we may require a sample, so it is good to try and include a sample up front.
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Community Support
url: https://stackoverflow.com/questions/tagged/spring-security
about: Please ask and answer questions on StackOverflow with the tag `spring-security`.
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
name: Enhancement
about: Suggest an enhancement for this project
title: ''
labels: 'status: waiting-for-triage, type: enhancement'
assignees: ''

---

**Expected Behavior**

<!--- Tell us how it should work -->

**Current Behavior**

<!--- Explain the difference from current behavior -->

**Context**

<!---
How has this issue affected you?
What are you trying to accomplish?
What other alternatives have you considered?
Are you aware of any workarounds?
-->
22 changes: 22 additions & 0 deletions .github/workflows/pr-build-workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: PR Build

on: pull_request

jobs:
build:
name: Build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: '8'
- name: Cache Gradle packages
uses: actions/cache@v2
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
- name: Build with Gradle
run: ./gradlew clean build --continue
16 changes: 0 additions & 16 deletions .travis.yml

This file was deleted.

44 changes: 0 additions & 44 deletions CODE_OF_CONDUCT.adoc

This file was deleted.

170 changes: 170 additions & 0 deletions CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
_Have something you'd like to contribute to the framework? We welcome pull requests, but ask that you carefully read this document first to understand how best to submit them; what kind of changes are likely to be accepted; and what to expect from the Spring Security team when evaluating your submission._

_Please refer back to this document as a checklist before issuing any pull request; this will save time for everyone!_

= Code of Conduct

Please see our https://github.com/spring-projects/.github/blob/master/CODE_OF_CONDUCT.md[code of conduct]

= Similar but different

Each Spring module is slightly different than another in terms of team size, number of issues, etc. Therefore each project is managed slightly different. You will notice that this document is very similar to the https://github.com/spring-projects/spring-framework/wiki/Contributor-guidelines[Spring Framework Contributor guidelines]. However, there are some subtle differences between the two documents, so please be sure to read this document thoroughly.

= Importing into IDE

The following provides information on setting up a development environment that can run the sample in https://www.springsource.org/sts[Spring Tool Suite 3.6.0+]. Other IDE's should work using Gradle's IDE support, but have not been tested.

* IDE Setup
* Install Spring Tool Suite 3.6.0+
* You will need the following plugins installed (can be found on the Extensions Page)
* Gradle Eclipse
* Groovy Eclipse
* Importing the project into Spring Tool Suite
* File-&gt;Import…-&gt;Gradle Project

As of new versions of Spring Tool Suite, you might need to install Groovy Eclipse pointing directly to the updates plugin location. To install Groovy Eclipse on Spring Tool Suite based on Eclipse Oxigen you must do the following steps:

Help-&gt;Install New Software…-&gt;Add the following URL into _Work with_ field:
https://dist.springsource.org/snapshot/GRECLIPSE/e4.7/[https://dist.springsource.org/snapshot/GRECLIPSE/e4.7/]

= Understand the basics

Not sure what a pull request is, or how to submit one? Take a look at GitHub's excellent https://help.github.com/articles/using-pull-requests[help documentation first].

= Search GitHub issues; create an issue if necessary

Is there already an issue that addresses your concern? Do a bit of searching in our https://github.com/spring-projects/spring-security/issues[GitHub issues ] to see if you can find something similar. If not, please create a new issue before submitting a pull request unless the change is not a user facing issue.

= Discuss non-trivial contribution ideas with committers

If you're considering anything more than correcting a typo or fixing a minor bug, please discuss it on the https://gitter.im/spring-projects/spring-security[Spring Security Gitter] before submitting a pull request. We're happy to provide guidance but please spend an hour or two researching the subject on your own including searching the forums for prior discussions.

= Sign the Contributor License Agreement

If you have not previously done so, please fill out and
submit the https://cla.pivotal.io/sign/spring[Contributor License Agreement].

= Create your branch from master

Create your topic branch to be submitted as a pull request from master. The Spring team will consider your pull request for backporting on a case-by-case basis; you don't need to worry about submitting anything for backporting.

= Use short branch names

Branches used when submitting pull requests should preferably be named according to GitHub issues, e.g. 'gh-1234' or 'gh-1234-fix-npe'. Otherwise, use succinct, lower-case, dash (-) delimited names, such as 'fix-warnings', 'fix-typo', etc. This is important, because branch names show up in the merge commits that result from accepting pull requests, and should be as expressive and concise as possible.

= Keep commits focused

Remember each ticket should be focused on a single item of interest since the tickets are used to produce the changelog. Since each commit should be tied to a single GitHub issue, ensure that your commits are focused. For example, do not include an update to a transitive library in your commit unless the GitHub is to update the library. Reviewing your commits is essential before sending a pull request.

= Mind the whitespace

Please carefully follow the whitespace and formatting conventions already present in the framework.

. Tabs, not spaces
. Unix (LF), not dos (CRLF) line endings
. Eliminate all trailing whitespace
. Aim to wrap code at 120 characters, but favor readability over wrapping
. Preserve existing formatting; i.e. do not reformat code for its own sake
. Search the codebase using git grep and other tools to discover common naming conventions, etc.
. UTF-8 encoding for Java sources and XML files

Whitespace management tips

. You can use the https://marketplace.eclipse.org/content/anyedit-tools[AnyEdit Eclipse plugin] to ensure spaces are used and to clean up trailing whitespaces.
. Use git's pre-commit.sample hook to prevent invalid whitespace from being pushed out. You can enable it by moving ~/spring-security/.git/hooks/pre-commit.sample to ~/spring-security/.git/hooks/pre-commit and ensuring it is executable. For more information on hooks refer to https://git-scm.com/book/cs/ch7-3.html[Pro Git's Pre-Commit Hook's section]

= Add Apache license header to all new classes

= Update Apache license header to modified files as necessary

Always check the date range in the license header. For example, if you've modified a file in 2012 whose header still reads
<pre>
* Copyright 2002-2011 the original author or authors.
</pre>
then be sure to update it to 2012 appropriately
<pre>
* Copyright 2002-2012 the original author or authors.
</pre>

= Use @since tags for newly-added public API types and methods

e.g.
<pre>
/**
* …
*
* @author First Last
* @since 3.2
* @see …
*/
</pre>

= Submit JUnit test cases for all behavior changes

Search the codebase to find related unit tests and add additional `@Test` methods within.

. Any new tests should end in the name Tests (note this is plural). For example, a valid name would be `FilterChainProxyTests`. An invalid name would be `FilterChainProxyTest`.
. New test methods should not start with test. This is an old JUnit3 convention and is not necessary since the method is annotated with @Test.

= Update spring-security-x.y.rnc for schema changes

Update the https://www.relaxng.org[RELAX NG] schema `spring-security-x.y.rnc` instead of `spring-security-x.y.xsd` if you contribute changes to supported XML configuration. The XML schema file can be generated the following Gradle task:

Changes to the XML schema will be overwritten by the Gradle build task.

= Squash commits

Use git rebase –interactive, git add –patch and other tools to "squash" multiple commits into atomic changes. In addition to the man pages for git, there are many resources online to help you understand how these tools work. Here is one: https://book.git-scm.com/4_interactive_rebasing.html[https://book.git-scm.com/4_interactive_rebasing.html].

= Use real name in git commits

Please configure git to use your real first and last name for any commits you intend to submit as pull requests. For example, this is not acceptable:

Rather, please include your first and last name, properly capitalized, as submitted against the SpringSource contributor license agreement:
<pre>
Author: First Last &lt;link:mailto:&#x75;&#115;&#101;&#114;&#64;&#109;&#x61;&#x69;&#108;&#46;&#99;&#111;&#x6d;&#38;&#103;&#116;[&#x75;&#115;&#101;&#114;&#64;&#109;&#x61;&#x69;&#108;&#46;&#99;&#111;&#x6d;&#38;&#103;&#116;];
</pre>
This helps ensure traceability against the CLA, and also goes a long way to ensuring useful output from tools like git shortlog and others.

You can configure this globally via the account admin area GitHub (useful for fork-and-edit cases); globally with

or locally for the spring-security repository only by omitting the '–global' flag:
<pre>
cd spring-security
git config user.name "First Last"
git config user.email link:mailto:&#x75;&#115;&#101;&#x72;&#64;&#x6d;&#x61;&#x69;&#x6c;&#46;&#x63;&#111;&#109;[&#x75;&#115;&#101;&#x72;&#64;&#x6d;&#x61;&#x69;&#x6c;&#46;&#x63;&#111;&#109;]
</pre>

= Format commit messages

. Keep the subject line to 50 characters or less if possible
. Do not end the subject line with a period
. In the body of the commit message, explain how things worked before this commit, what has changed, and how things work now
. Include Closes gh-<issue-number> at the end if this fixes a GitHub issue
. Avoid markdown, including back-ticks identifying code

= Run all tests prior to submission

= Submit your pull request

Subject line:

Follow the same conventions for pull request subject lines as mentioned above for commit message subject lines.

In the body:

. Explain your use case. What led you to submit this change? Why were existing mechanisms in the framework insufficient? Make a case that this is a general-purpose problem and that yours is a general-purpose solution, etc
. Add any additional information and ask questions; start a conversation, or continue one from GitHub Issues
. Mention any GitHub Issues
. Also mention that you have submitted the CLA as described above
Note that for pull requests containing a single commit, GitHub will default the subject line and body of the pull request to match the subject line and body of the commit message. This is fine, but please also include the items above in the body of the request.

= Mention your pull request on the associated GitHub issue

Add a comment to the associated GitHub issue(s) linking to your new pull request.

= Expect discussion and rework

The Spring team takes a very conservative approach to accepting contributions to the framework. This is to keep code quality and stability as high as possible, and to keep complexity at a minimum. Your changes, if accepted, may be heavily modified prior to merging. You will retain "Author:" attribution for your Git commits granted that the bulk of your changes remain intact. You may be asked to rework the submission for style (as explained above) and/or substance. Again, we strongly recommend discussing any serious submissions with the Spring Framework team prior to engaging in serious development work.

Note that you can always force push (git push -f) reworked / rebased commits against the branch used to submit your pull request. i.e. you do not need to issue a new pull request when asked to make changes.
Loading