Commit Graph

209 Commits

Author SHA1 Message Date
exceptionfactory 42547eb60c
NIFI-11703 Upgraded to Spring Framework 6 and Jetty 12
- Upgraded Spring Framework from 5.3.31 to 6.0.15
- Upgraded Spring Security from 5.8.7 to 6.2.0
- Upgraded Spring Vault from 2.3.4 to 3.1.0
- Upgraded Jetty from 10.0.18 to 12.0.5 with EE 10
- Upgraded Jersey from 2.41 to 3.1.4
- Upgraded JAXB from 2.3.9 to 4.0.4
- Upgraded AspectJ from 1.9.20.1 to 1.9.21
- Upgraded JMS API from 2.0.1 to 3.1.0
- Upgraded ActiveMQ Broker from 5.18.2 to 6.0.1 for JMS 3
- Upgraded JJWT from 0.9.1 to 0.12.3
- Replaced jackson-module-jaxb-annotations with jackson-module-jakarta-xmlbind-annotations
- Replaced maven-jaxb2-plugin with hisrc-higherjaxb40-maven-plugin 2.1.1
- Replaced kongchen swagger-maven-plugin with swagger-codegen-maven-plugin from Swagger 3
- Replaced com.nickwongdev AspectJ Plugin with Codehaus 1.14.0 for newer Java versions
- Removed unused cglib-nodep
- Removed references to javax.validation
- Removed custom Jetty ALPN Processor not required for Java 21
- Removed several tests depending on older Jetty and Jakarta libraries
- Removed unnecessary webdefault.xml configurations
- Replaced unsupported cross-context servlet forwarding with HTTP forwarding
- Replaced javax.servlet references with jakarta.servlet
- Replaced javax.xml.bind references with jakarta.xml.bind
- Replaced javax.ws references with jakarata.ws
- Updated Spring Security CSRF implementation for Spring Security 6
- Updated web.xml versions to 6.0
- Updated REST API templates using new swagger-codegen variables
- Removed VALIDATE_DATA property from ParseCEF based on library compatibility issue with javax.validation
- Added application URL logging to NiFi JettyServer

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #8197.
2024-01-04 14:01:32 +04:00
David Handermann 80700cc6c6
NIFI-12418 Corrected Provider Groups Missing in Refreshed Tokens (#8126)
- Updated OidcBearerTokenRefreshFilter to maintain current Identity Provider Groups when generating refreshed application Bearer Tokens
- Refactored LoginAuthenticationToken to remove unnecessary optional constructors and use java.time.Instant for expiration
- Added Issuer Provider with implementation for Bearer Token Issuer based on host and port properties
2023-12-18 11:53:23 -05:00
exceptionfactory 97dd543c6a
NIFI-12293 Standardized HTTP error response messages (#7957)
- Updated ExceptionFilter and AuthenticationFilter with standard messages

This closes #7957
2023-11-03 10:09:47 -04:00
exceptionfactory f0593a0034
NIFI-12272 Added Formatter for Certificate Distinguished Names
- Added standard implementation for formatting Subject and Issuer using RFC 1779
- Replaced direct method references to maintain compatibility with historical getSubjectDN and getIssuerDN methods

This closes #7931

Signed-off-by: Chris Sampson <chris.sampson82@gmail.com>
2023-10-25 19:54:27 +01:00
exceptionfactory 19b4be40aa
NIFI-12157 This closes #7826. Removed nifi-logging-utils and NiFiLog
- Replaced NiFiLog references with direct references to SLF4J LoggerFactory

Signed-off-by: Joseph Witt <joewitt@apache.org>
2023-10-02 08:17:51 -07:00
exceptionfactory c76191fa4b
NIFI-12152 This closes #7818. Refactored addProvider() Bouncy Castle references
- Removed Security.addProvider() references from several tests
- Refactored KeyStoreUtils to use instance of BouncyCastleProvider instead of BC provider name string
- Refactored MiNiFi references to pass BouncyCastleProvider for BCFKS

Signed-off-by: Joseph Witt <joewitt@apache.org>
2023-09-30 07:56:53 -07:00
Mark Payne db727aa419
NIFI-12142: This closes #7806. Deleted many methods, classes, and references that were deprecated.
Signed-off-by: Joseph Witt <joewitt@apache.org>
2023-09-28 14:07:48 -07:00
Pierre Villard 2aca08910c
NIFI-12103 Replaced deprecated usage of new URL(String)
This closes #7771

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-09-23 10:30:42 -05:00
Peter Turcsanyi ac80b9d900
NIFI-11595 StateProvider.replace() supports creating the initial state
- Extracted common logic from setState() and replace() into modifyState()
- Removed redundant code from createNode() because exceptions are handled on the caller side
- NodeExistsException and InterruptedException are handled in setState() and replace()
- Also used KeeperException's subclasses instead of KeeperException.code()

This closes #7324

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-09-19 10:06:38 -05:00
exceptionfactory 5dc1ea27d3 NIFI-12001 Refactored CertificateUtils to separate modules
- Added nifi-security-cert for reusable components without dependencies
- Added nifi-security-cert-builder for certificate generation

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes #7651
2023-08-30 15:08:46 -04:00
exceptionfactory 95bb23d403
NIFI-11781 Corrected OIDC Claim Identity Processing
- Added StandardOidcUserService supporting fallback claim names
- Updated StandardClientRegistrationProvider to use standard Subject claim
- Updated OIDC Security Configuration to use customized OidcUserService for claim handling

Signed-off-by: Joe Gresock <jgresock@gmail.com>
This closes #7468.
2023-07-15 11:03:58 -04:00
dan-s1 d24318cdb8
NIFI-11767 Refactored Groovy tests in nifi-web-error and nifi-web-security to Java
This closes #7457

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-07-06 16:30:34 -05:00
exceptionfactory 0f736e060a
NIFI-11735 Refactored Identity Provider Groups Handling (#7419)
- Removed H2 database approach in favor of passing groups in Application Bearer Token
2023-06-22 11:07:23 -04:00
exceptionfactory 8ebecdc3ab
NIFI-11554 Upgraded OpenSAML from 3.4.6 to 4.3.0
- Added Shibboleth repository for OpenSAML
- Replaced deprecated OpenSAML 3 Spring Security components with OpenSAML 4

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #7251.
2023-05-16 10:34:23 +02:00
exceptionfactory 1639ecee11
NIFI-11438 Set standard OpenID Connect Scopes
- Restored previous behavior of sending openid and email scopes for OpenID Connect token requests
- Added offline_access scope as the default value in nifi.properties to support Refresh Tokens

This closes #7168
Signed-off-by: Paul Grey <greyp@apache.org>
2023-04-21 11:29:16 -04:00
exceptionfactory e4f0508c90
NIFI-11370 Corrected JWK Set retrieval for NIFI Trust Strategy (#7108)
- Added StandardOidcIdTokenDecoderFactory based on Spring Security OidcIdTokenDecoderFactory with custom REST Operations

Merged #7108 into main.
2023-03-31 16:26:02 -07:00
exceptionfactory 75eb449a31
NIFI-11365 Corrected OIDC Redirect URI resolution for reverse proxies (#7104)
- Added Authorization Request Resolver with support for building the base redirect URI using allowed proxy headers

This closes #7104
2023-03-30 16:26:35 -04:00
exceptionfactory 26400fcbe9
NIFI-4890 Refactor OIDC with support for Refresh Tokens (#7013)
* NIFI-4890 Refactored OIDC with support for Refresh Tokens

- Implemented OIDC Authorization Code Grant Flow using Spring Security Filters
- Implemented OIDC RP-Initiated Logout 1.0
- Implemented OAuth2 Token Revocation RFC 7009 for Refresh Tokens
- Added OIDC Bearer Token Refresh Filter for updating application Bearer Tokens from Refresh Token exchanges
- Added configurable Token Refresh Window to application properties
- Removed original implementation and supporting classes

* NIFI-4890 Set Bearer Token expiration based on Access Token

* NIFI-4890 Corrected spelling and naming issues based on feedback

This closes #7013
2023-03-28 08:35:10 -04:00
exceptionfactory 48689a2567
NIFI-11195 Refactored Identity Mapping to nifi-security-identity
- Moved StringUtils from nifi-properties to nifi-property-utils
- Moved Peer Identity methods from CertificateUtils to specific Site-to-Site classes

Signed-off-by: Joe Gresock <jgresock@gmail.com>
This closes #6977.
2023-02-23 10:33:45 -05:00
exceptionfactory 1156f4cbc5
NIFI-11165 This closes #6944. Removed optional jigsaw build profiles
- Removed jigsaw build profiles
- Removed Java 11 directories from assemblies

Signed-off-by: Joe Witt <joewitt@apache.org>
2023-02-13 13:01:58 -05:00
Joe Witt 43eab4c81d
NIFI-11103 prepping for 2.0.0 line 2023-02-09 15:32:53 -07:00
exceptionfactory 0d9dc6c540
NIFI-9167 Converted remaining nifi-framework tests to JUnit 5
NIFI-9167 Addressed feedback and improved tests using TempDir

Signed-off-by: Matthew Burgess <mattyb149@apache.org>

This closes #6823
2023-01-10 13:53:51 -05:00
dan-s1 481cdaf3db
NIFI-11018 Upgraded nifi-web-security to JUnit 5
This closes #6814

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-01-02 12:16:37 -06:00
exceptionfactory 45a31c7286 NIFI-10899 Added SameSite Policy to Application Cookies
- Added __Secure prefix to Application Cookie Names

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6735.
2022-12-05 14:09:39 -05:00
exceptionfactory de296b5e65 NIFI-10897 Replaced Spring Security Base64 with java.util.Base64
This closes #6728

Signed-off-by: Mike Thomsen <mthomsen@apache.org>
2022-11-29 12:20:16 -05:00
exceptionfactory d55fb91b0f NIFI-10871 Skipped CSRF processing for replicated HTTP requests
- Updated Security Filter Configuration to avoid unnecessary CSRF Request Token generation for requests replicated between cluster nodes

This closes #6715.

Signed-off-by: Tamas Palfy <tpalfy@apache.org>
2022-11-29 17:19:18 +01:00
Joe Witt 75e7c9e47c
NIFI-10854-RC1 prepare for next development iteration 2022-11-22 19:22:47 -07:00
Joe Witt ec87bf93ad
NIFI-10854-RC1 prepare release nifi-1.19.0-RC1 2022-11-22 19:22:45 -07:00
Malthe Borch 831a11d0b5
NIFI-7823 Added groups mapping from OIDC token claim
This closes #6454

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-24 09:12:24 -05:00
Joe Witt c155d29658
NIFI-10614 Upgraded Bouncy Castle from 1.70 to 1.71
- Blocked Bouncy Castle jdk15on dependencies
- Forced jdk18on dependencies and validated across entire build

This closes #6498

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-20 19:35:02 -05:00
Joe Witt c9ebdd2025
NIFI-10521-RC4 prepare for next development iteration 2022-10-03 10:59:36 -07:00
Joe Witt 109e54cd58
NIFI-10521-RC4 prepare release nifi-1.18.0-RC4 2022-10-03 10:59:34 -07:00
exceptionfactory 777238eb32 NIFI-10321 Send Session Expired message for Expired JWT errors
Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6332.
2022-08-24 12:40:04 -04:00
Malthe Borch 1b4d66a726
NIFI-10343 Add error code to exception message
The error object may not have a description, but should have a code.

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #6288.
2022-08-16 09:49:58 +02:00
exceptionfactory 77033ec11a NIFI-10322 Corrected Cookie path when removing Bearer Token
- Appended root path to Cookie path attribute when removing Bearer Tokens as part of unauthorized response handling
- Updated Saml2AuthenticationSuccessHandler to follow standard Cookie path building strategy

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6278.
2022-08-09 16:09:41 -04:00
Joe Witt 8c66bf948c
NIFI-10272-RC2 prepare for next development iteration 2022-07-27 13:24:09 -07:00
Joe Witt 8d256784d8
NIFI-10272-RC2 prepare release nifi-1.17.0-RC2 2022-07-27 13:24:06 -07:00
exceptionfactory a661b035e8 NIFI-10259 Improved HTTP error handling for authentication failures
- Added Standard AuthenticationEntryPoint
- Configured AuthenticationEntryPoint for SecurityFilterChain and BearerTokenAuthenticationFilter

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6233.
2022-07-22 17:33:51 -04:00
exceptionfactory a9b5bebb15 NIFI-10216 Refactored NiFi Web API Security Configuration
- Removed extension of deprecated WebSecurityConfigurerAdapter
- Moved Filter bean configuration associated configuration classes
- Set default Spring Security log level to INFO
- Adjusted CSRF Token Repository to leverage simplified RequestUriBuilder for retrieving allowed context paths

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6195
2022-07-13 19:11:03 -04:00
exceptionfactory 0de83292de NIFI-9849 Refactored SAML Support with Spring Security 5
- Updated SAML Authentication Configuration with Spring Security SAML 2 components
- Updated Administration Guide with REST Resources
- Replaced SAMLAccessResource methods with applicable Spring Security Filters
- Removed IDP Credential Service and supporting components
- Removed message.logging.enabled, metadata.signing.enabled, and signature.digest.algorithm properties
- Added Access Token Expiration resource method
- Removed Saml2AccessResource and replaced with Access Token Expiration to avoid unnecessary conflicts with SAML login consumer
- Corrected Resource URI handling to support proxy server access

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6149.
2022-06-28 13:57:35 -04:00
exceptionfactory ea75a0a996 NIFI-9995 Replaced Custom Filters with Spring Security HeaderWriter
Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6020.
2022-05-06 12:22:30 -04:00
exceptionfactory 4f423a59ba
NIFI-9952 Upgraded Jackson BOM to 2.13.2.20220328
- Removed unnecessary references to jackson.version property
- Removed unnecessary dependency management references to Jackson libraries

This closes #5992

Signed-off-by: Mike Thomsen <mthomsen@apache.org>
2022-04-23 08:23:39 -04:00
exceptionfactory 18a4182cb0
NIFI-9883 Refactor Property Protection using Isolated ClassLoader (#5972)
* NIFI-9883 Refactored property protection to isolated ClassLoader

- Added nifi-property-protection-loader for abstracting access to implementation classes using ServiceLoader
- Updated Authorizer and Login Identity Provider configuration using isolated ClassLoader
- Updated NiFi Properties Loader using isolated ClassLoader
- Updated nifi-assembly to place property protection dependencies in lib/properties directory
- Updated and refactored unit tests
- Corrected LoginIdentityProviderFactoryBean getObject() Type
2022-04-19 11:08:04 -04:00
exceptionfactory 15f7590f7a
NIFI-9901 Added nifi-xml-processing to nifi-commons
- Refactored XML parsing to use providers from nifi-xml-processing
- Configured spotbugs-maven-plugin with findsecbugs-plugin in nifi-xml-processing
- Disabled Validate DTD in default configuration for EvaluateXPath and EvaluateXQuery
- Replaced configuration of DocumentBuilder and streaming XML Readers with shared components
- Removed XML utilities from nifi-security-utils
- Moved Commons Configuration classes to nifi-lookup-services

This closes #5962
Signed-off-by: Paul Grey <greyp@apache.org>
2022-04-13 19:56:57 -04:00
Joe Witt 873d25585c
NIFI-9780 Merge branch 'NIFI-9780-RC3' 2022-04-04 08:35:23 -07:00
Hervé Boutemy 8abdd163ba
NIFI-9848 Upgraded Maven Plugins for Reproducible Builds
This closes #5915

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-03-30 20:09:44 -05:00
Joe Witt 0419dc2939
NIFI-9780-RC3 prepare for next development iteration 2022-03-21 11:58:27 -07:00
Joe Witt b019a9191f
NIFI-9780-RC3 prepare release nifi-1.16.0-RC3 2022-03-21 11:58:09 -07:00
Nathan Gough 7ef2fd2986
NIFI-7333 Added OIDC trust store strategy property
This closes #5753

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-02-18 15:19:22 -05:00
exceptionfactory 43748a5523 NIFI-9638 Refactored Google Guava references
- Refactored nifi-framework and nifi-standard modules
- Replaced Google Cache with Caffeine Cache
- Replaced Google collections classes with standard Java collections

This closes #5730.

Signed-off-by: Kevin Doran <kdoran@apache.org>
2022-02-01 15:17:50 -05:00