[jira] [Commented] (NIFI-2523) Add an "Undo" to the User Interface
[ https://issues.apache.org/jira/browse/NIFI-2523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17681486#comment-17681486 ] Josh McCullough commented on NIFI-2523: --- New Nifi user here. I just deleted everything in my first process group -- 30-40 processors and connections! I am heartbroken to find that there is no way to undo this, now I have to start all over because I accidentally hit delete while I was grouping things into a new process group. Please, at least can you add a confirmation modal when deleting multiple items? > Add an "Undo" to the User Interface > --- > > Key: NIFI-2523 > URL: https://issues.apache.org/jira/browse/NIFI-2523 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework, Core UI >Reporter: Alexander Kell >Priority: Major > Labels: usability > > I am not sure whether this feature has been forgotten ... > As a NiFi user, I'd like to be able to quickly undo an action, or series of > actions, in case I accidentally delete or move one or more processors while > editing them. > This feature is nessesary to work with nifi alot more effectivly -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [nifi] emiliosetiadarma opened a new pull request, #6901: NIFI-11092: changes to ConsumeTwitter and TweetStreamService to make …
emiliosetiadarma opened a new pull request, #6901: URL: https://github.com/apache/nifi/pull/6901 …it run better in clustered NiFi # Summary [NIFI-11092](https://issues.apache.org/jira/browse/NIFI-11092) # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [x] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [x] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-0` - [x] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-0` ### Pull Request Formatting - [x] Pull Request based on current revision of the `main` branch - [x] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [x] Build completed using `mvn clean install -P contrib-check` - [x] JDK 8 - [x] JDK 11 - [ ] JDK 17 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-11109) flow.json/xml modified when using registry client while missing nifi-flow-registry-client-nar
[ https://issues.apache.org/jira/browse/NIFI-11109?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nissim Shiman updated NIFI-11109: - Affects Version/s: 1.19.1 > flow.json/xml modified when using registry client while missing > nifi-flow-registry-client-nar > - > > Key: NIFI-11109 > URL: https://issues.apache.org/jira/browse/NIFI-11109 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.19.1 >Reporter: Nissim Shiman >Priority: Major > > If nifi is set to use a registry client and nifi-flow-registry-client-nar is > removed from lib, the next nifi restart will result in the registry's class > name (in flow.xml.gz/flow.json.gz) to be modified from > org.apache.nifi.registry.flow.NifiRegistryFlowRegistryClient > to > NifiRegistryFlowRegistryClient. > The url property will also be encrypted. > When the nifi-flow-registry-client-nar is returned to lib, and nifi is > restarted, these changes remain and registry is unreachable using this > registry client. > Also, if the nar removed was nifi-standard-services-api-nar, then besides the > above behavior, processors under version control via this registry client may > also have their dynamic properties encrypted. These properties remain > encrypted even after nifi-standard-services-api-nar is returned to lib and > nifi is restarted. > This is seen with a dynamic property added to GenerateFlowFile (when > GenericFlowFile is part of a PG under registry version control). > These are edge cases as admins should be very careful about removing nars > from lib, but it would be good if protections were added to protect > flow.xml/json from modifications in these situations. > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (NIFI-11109) flow.json/xml modified when using registry client while missing nifi-flow-registry-client-nar
Nissim Shiman created NIFI-11109: Summary: flow.json/xml modified when using registry client while missing nifi-flow-registry-client-nar Key: NIFI-11109 URL: https://issues.apache.org/jira/browse/NIFI-11109 Project: Apache NiFi Issue Type: Bug Reporter: Nissim Shiman If nifi is set to use a registry client and nifi-flow-registry-client-nar is removed from lib, the next nifi restart will result in the registry's class name (in flow.xml.gz/flow.json.gz) to be modified from org.apache.nifi.registry.flow.NifiRegistryFlowRegistryClient to NifiRegistryFlowRegistryClient. The url property will also be encrypted. When the nifi-flow-registry-client-nar is returned to lib, and nifi is restarted, these changes remain and registry is unreachable using this registry client. Also, if the nar removed was nifi-standard-services-api-nar, then besides the above behavior, processors under version control via this registry client may also have their dynamic properties encrypted. These properties remain encrypted even after nifi-standard-services-api-nar is returned to lib and nifi is restarted. This is seen with a dynamic property added to GenerateFlowFile (when GenericFlowFile is part of a PG under registry version control). These are edge cases as admins should be very careful about removing nars from lib, but it would be good if protections were added to protect flow.xml/json from modifications in these situations. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-11071) Upgrade json-flattener to 0.16.4
[ https://issues.apache.org/jira/browse/NIFI-11071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann reassigned NIFI-11071: --- Assignee: Mike R > Upgrade json-flattener to 0.16.4 > > > Key: NIFI-11071 > URL: https://issues.apache.org/jira/browse/NIFI-11071 > Project: Apache NiFi > Issue Type: Improvement >Affects Versions: 1.19.1 >Reporter: Mike R >Assignee: Mike R >Priority: Major > Fix For: 1.20.0 > > Time Spent: 20m > Remaining Estimate: 0h > > Upgrade json-flattener to 0.16.4 Release Notes: [json-flattener/release-notes > at json-flattener-0.16.4 · wnameless/json-flattener > (github.com)|https://github.com/wnameless/json-flattener/blob/json-flattener-0.16.4/release-notes] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-11060) Add Custom Headers to JettyWebSocketClient
[ https://issues.apache.org/jira/browse/NIFI-11060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-11060: Fix Version/s: (was: 1.20.0) > Add Custom Headers to JettyWebSocketClient > -- > > Key: NIFI-11060 > URL: https://issues.apache.org/jira/browse/NIFI-11060 > Project: Apache NiFi > Issue Type: Bug > Components: Extensions >Affects Versions: 1.19.1 >Reporter: Jacek Trocinski >Priority: Major > Attachments: jacektrocinski_0-1673945949528.png > > > The JettyWebSocketClient does not allow for sending custom headers. > There are scenarios where, in order to make a WebSocket connection, custom > headers have to be passed. > This is different from authorization headers I believe. > Please take a look at the attached screenshot of example headers that I would > like to pass while making an initial WebSocket connection. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-11085) Upgrade graphics2d to 0.42
[ https://issues.apache.org/jira/browse/NIFI-11085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann reassigned NIFI-11085: --- Assignee: Mike R > Upgrade graphics2d to 0.42 > -- > > Key: NIFI-11085 > URL: https://issues.apache.org/jira/browse/NIFI-11085 > Project: Apache NiFi > Issue Type: Improvement >Affects Versions: 1.19.1 >Reporter: Mike R >Assignee: Mike R >Priority: Major > Fix For: 1.20.0 > > Time Spent: 20m > Remaining Estimate: 0h > > Upgrade graphics2d to 0.42 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-10953) GCP Vision AI processors
[ https://issues.apache.org/jira/browse/NIFI-10953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann reassigned NIFI-10953: --- Assignee: Kalman Jantner > GCP Vision AI processors > > > Key: NIFI-10953 > URL: https://issues.apache.org/jira/browse/NIFI-10953 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Kalman Jantner >Assignee: Kalman Jantner >Priority: Major > Fix For: 1.20.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > Create processors to interact with GCP Vision AI managed service to: > * detect text in images > * detect handwriting in images > * detect text in files > * detect faces > * detect image properties > * detect labels > * etc -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-10912) Upgrade JSLT To 0.1.14
[ https://issues.apache.org/jira/browse/NIFI-10912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann reassigned NIFI-10912: --- Assignee: Mike R > Upgrade JSLT To 0.1.14 > -- > > Key: NIFI-10912 > URL: https://issues.apache.org/jira/browse/NIFI-10912 > Project: Apache NiFi > Issue Type: Improvement >Affects Versions: 1.19.0 >Reporter: Mike R >Assignee: Mike R >Priority: Major > Fix For: 1.20.0, 1.19.1 > > Time Spent: 20m > Remaining Estimate: 0h > > Upgrade JSLT dependencies to 0.1.14 from 0.1.13. Release notes: [Release > Release 0.1.14: Bug fix · schibsted/jslt > (github.com)|https://github.com/schibsted/jslt/releases/tag/0.1.14] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-11002) Fix typo in user-guide docs
[ https://issues.apache.org/jira/browse/NIFI-11002?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann reassigned NIFI-11002: --- Assignee: Pierre Villard > Fix typo in user-guide docs > --- > > Key: NIFI-11002 > URL: https://issues.apache.org/jira/browse/NIFI-11002 > Project: Apache NiFi > Issue Type: Task > Components: Documentation Website >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > Fix For: 1.20.0 > > Time Spent: 10m > Remaining Estimate: 0h > > Fix typo in users guide documentation -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10735) Update Hortonworks registries schema-registry-client to mitigate CVE
[ https://issues.apache.org/jira/browse/NIFI-10735?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-10735: Fix Version/s: (was: 1.20.0) > Update Hortonworks registries schema-registry-client to mitigate CVE > > > Key: NIFI-10735 > URL: https://issues.apache.org/jira/browse/NIFI-10735 > Project: Apache NiFi > Issue Type: Improvement >Affects Versions: 1.18.0 >Reporter: Mike R >Priority: Blocker > > Update Hortonworks registries schema-registry-client to mitigate CVE. Version > 0.9.1 has 2 CVE. Updating to 1.0.0 resolves both of these CVE. > CVE are: > [CVE-2020-15250|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15250] > and > [CVE-2021-29425|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-29425]. > Both have a medium score > The update can be found in the > [nifi-nar-bundles/nifi-standard-services/nifi-hwx-schema-registry-bundle/pom.xml|https://github.com/apache/nifi/blob/f65888dc5cd2c60ad22867be00c83a0c3a01c5e2/nifi-nar-bundles/nifi-standard-services/nifi-hwx-schema-registry-bundle/pom.xml] > file at line 27 with 0.9.1 > > Release Notes: [Comparing 0.9.1-rc1...1.0.0-rc2 · hortonworks/registry > (github.com)|https://github.com/hortonworks/registry/compare/0.9.1-rc1...1.0.0-rc2] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (NIFI-10710) Add Processors for AWS Polly, Textract, Translate, and Transcribe Services
[ https://issues.apache.org/jira/browse/NIFI-10710?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann resolved NIFI-10710. - Fix Version/s: 1.20.0 Assignee: Kalman Jantner Resolution: Fixed > Add Processors for AWS Polly, Textract, Translate, and Transcribe Services > -- > > Key: NIFI-10710 > URL: https://issues.apache.org/jira/browse/NIFI-10710 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Reporter: Kalman Jantner >Assignee: Kalman Jantner >Priority: Major > Fix For: 1.20.0 > > Time Spent: 4h 20m > Remaining Estimate: 0h > > Implement processors to utilise AWS ML managed services. > Scope of services for this ticket: > * Polly > * Transcribe > * Translate > * Textract -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-11087) Add Processor to Verify Content using HMAC algorithm
[ https://issues.apache.org/jira/browse/NIFI-11087?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-11087: Summary: Add Processor to Verify Content using HMAC algorithm (was: Processor to Verify content using HMAC algorithm) > Add Processor to Verify Content using HMAC algorithm > > > Key: NIFI-11087 > URL: https://issues.apache.org/jira/browse/NIFI-11087 > Project: Apache NiFi > Issue Type: New Feature >Reporter: Ferenc Erdei >Assignee: Ferenc Erdei >Priority: Major > Time Spent: 2h 20m > Remaining Estimate: 0h > > A processor to Verify FlowFile content using HMAC SHA256/SHA512 algorithm. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10710) Add Processors for AWS Polly, Textract, Translate, and Transcribe Services
[ https://issues.apache.org/jira/browse/NIFI-10710?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-10710: Issue Type: New Feature (was: Improvement) > Add Processors for AWS Polly, Textract, Translate, and Transcribe Services > -- > > Key: NIFI-10710 > URL: https://issues.apache.org/jira/browse/NIFI-10710 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Reporter: Kalman Jantner >Priority: Major > Time Spent: 4h 20m > Remaining Estimate: 0h > > Implement processors to utilise AWS ML managed services. > Scope of services for this ticket: > * Polly > * Transcribe > * Translate > * Textract -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (NIFI-11087) Add Processor to Verify Content using HMAC algorithm
[ https://issues.apache.org/jira/browse/NIFI-11087?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann resolved NIFI-11087. - Fix Version/s: 1.20.0 Resolution: Fixed > Add Processor to Verify Content using HMAC algorithm > > > Key: NIFI-11087 > URL: https://issues.apache.org/jira/browse/NIFI-11087 > Project: Apache NiFi > Issue Type: New Feature >Reporter: Ferenc Erdei >Assignee: Ferenc Erdei >Priority: Major > Fix For: 1.20.0 > > Time Spent: 2h 20m > Remaining Estimate: 0h > > A processor to Verify FlowFile content using HMAC SHA256/SHA512 algorithm. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10710) Add Processors for AWS Polly, Textract, Translate, and Transcribe Services
[ https://issues.apache.org/jira/browse/NIFI-10710?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-10710: Summary: Add Processors for AWS Polly, Textract, Translate, and Transcribe Services (was: AWS ML managed services) > Add Processors for AWS Polly, Textract, Translate, and Transcribe Services > -- > > Key: NIFI-10710 > URL: https://issues.apache.org/jira/browse/NIFI-10710 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Kalman Jantner >Priority: Major > Time Spent: 4h 20m > Remaining Estimate: 0h > > Implement processors to utilise AWS ML managed services. > Scope of services for this ticket: > * Polly > * Transcribe > * Translate > * Textract -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (NIFI-11087) Processor to Verify content using HMAC algorithm
[ https://issues.apache.org/jira/browse/NIFI-11087?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17681431#comment-17681431 ] ASF subversion and git services commented on NIFI-11087: Commit e4748e15f44268104c04152d914f128a0bb47918 in nifi's branch refs/heads/main from Ferenc Erdei [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=e4748e15f4 ] NIFI-11087 Added VerifyContentMAC Processor This closes #6877 Signed-off-by: David Handermann > Processor to Verify content using HMAC algorithm > > > Key: NIFI-11087 > URL: https://issues.apache.org/jira/browse/NIFI-11087 > Project: Apache NiFi > Issue Type: New Feature >Reporter: Ferenc Erdei >Assignee: Ferenc Erdei >Priority: Major > Time Spent: 2h 20m > Remaining Estimate: 0h > > A processor to Verify FlowFile content using HMAC SHA256/SHA512 algorithm. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (NIFI-10710) AWS ML managed services
[ https://issues.apache.org/jira/browse/NIFI-10710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17681430#comment-17681430 ] ASF subversion and git services commented on NIFI-10710: Commit cc8d10897588dbcbab4e861b0f11ec7cee045442 in nifi's branch refs/heads/main from Kalman Jantner [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=cc8d108975 ] NIFI-10710 Added Processors for AWS Polly, Textract, Translate, Transcribe This closes #6589 Signed-off-by: David Handermann > AWS ML managed services > --- > > Key: NIFI-10710 > URL: https://issues.apache.org/jira/browse/NIFI-10710 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Kalman Jantner >Priority: Major > Time Spent: 4h 20m > Remaining Estimate: 0h > > Implement processors to utilise AWS ML managed services. > Scope of services for this ticket: > * Polly > * Transcribe > * Translate > * Textract -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [nifi] exceptionfactory closed pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
exceptionfactory closed pull request #6877: NIFI-11087 Add VerifyContentMAC Processor URL: https://github.com/apache/nifi/pull/6877 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] exceptionfactory closed pull request #6589: NIFI-10710 implement processor for AWS Polly, Textract, Translate, Tr…
exceptionfactory closed pull request #6589: NIFI-10710 implement processor for AWS Polly, Textract, Translate, Tr… URL: https://github.com/apache/nifi/pull/6589 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-8005) ConvertExcelToCSVProcessor swallows flow file if it doesn't contain sheet with given name
[ https://issues.apache.org/jira/browse/NIFI-8005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Stieglitz updated NIFI-8005: --- Status: Patch Available (was: Open) > ConvertExcelToCSVProcessor swallows flow file if it doesn't contain sheet > with given name > - > > Key: NIFI-8005 > URL: https://issues.apache.org/jira/browse/NIFI-8005 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.12.1 >Reporter: Svyatoslav >Assignee: Daniel Stieglitz >Priority: Minor > Attachments: NIFI-8005.xlsx, image-2020-11-14-21-49-32-932.png, > image-2023-01-10-00-26-15-959.png > > Time Spent: 10m > Remaining Estimate: 0h > > Input xlsx file contains sheets: sheet1, sheet2 > ConvertExcelToCSVProcessor configuration: > !image-2020-11-14-21-49-32-932.png! > Input file doesn't have sheet with name mysheet1. After being processed by > ConvertExcelToCSVProcessor it disappears: it is neither in any output or > input queues. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [nifi] tpalfy opened a new pull request, #6900: NIFI-11107 In ConsumeIMAP and ConsumePOP3 added support for OAUTH based authorization.
tpalfy opened a new pull request, #6900: URL: https://github.com/apache/nifi/pull/6900 # Summary [NIFI-11107](https://issues.apache.org/jira/browse/NIFI-11107) # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [ ] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [ ] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-0` - [ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-0` ### Pull Request Formatting - [ ] Pull Request based on current revision of the `main` branch - [ ] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [ ] Build completed using `mvn clean install -P contrib-check` - [ ] JDK 8 - [ ] JDK 11 - [ ] JDK 17 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] KalmanJantner opened a new pull request, #6899: NIFI-10953: fix default value and update docs
KalmanJantner opened a new pull request, #6899: URL: https://github.com/apache/nifi/pull/6899 # Summary [NIFI-0](https://issues.apache.org/jira/browse/NIFI-0) # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [ ] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [ ] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-0` - [ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-0` ### Pull Request Formatting - [ ] Pull Request based on current revision of the `main` branch - [ ] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [ ] Build completed using `mvn clean install -P contrib-check` - [ ] JDK 8 - [ ] JDK 11 - [ ] JDK 17 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] gresockj opened a new pull request, #6898: NIFI-11100: Limiting scope of external controller services during ver…
gresockj opened a new pull request, #6898: URL: https://github.com/apache/nifi/pull/6898 …sion sync to services outside the versioning context # Summary [NIFI-11100](https://issues.apache.org/jira/browse/NIFI-11100) # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [ ] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [ ] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-0` - [ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-0` ### Pull Request Formatting - [ ] Pull Request based on current revision of the `main` branch - [ ] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [ ] Build completed using `mvn clean install -P contrib-check` - [ ] JDK 8 - [ ] JDK 11 - [ ] JDK 17 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-11108) Refactor remaining JUnit 4 tests under nifi/nifi-nar-bundles to JUnit 5
Daniel Stieglitz created NIFI-11108: --- Summary: Refactor remaining JUnit 4 tests under nifi/nifi-nar-bundles to JUnit 5 Key: NIFI-11108 URL: https://issues.apache.org/jira/browse/NIFI-11108 Project: Apache NiFi Issue Type: Sub-task Reporter: Daniel Stieglitz Assignee: Daniel Stieglitz A search for {code:java} org.junit.Test {code} in nifi/nifi-nar-bundles indicates there are still 23 tests using Junit 4. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-8005) ConvertExcelToCSVProcessor swallows flow file if it doesn't contain sheet with given name
[ https://issues.apache.org/jira/browse/NIFI-8005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Stieglitz reassigned NIFI-8005: -- Assignee: Daniel Stieglitz > ConvertExcelToCSVProcessor swallows flow file if it doesn't contain sheet > with given name > - > > Key: NIFI-8005 > URL: https://issues.apache.org/jira/browse/NIFI-8005 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.12.1 >Reporter: Svyatoslav >Assignee: Daniel Stieglitz >Priority: Minor > Attachments: NIFI-8005.xlsx, image-2020-11-14-21-49-32-932.png, > image-2023-01-10-00-26-15-959.png > > Time Spent: 10m > Remaining Estimate: 0h > > Input xlsx file contains sheets: sheet1, sheet2 > ConvertExcelToCSVProcessor configuration: > !image-2020-11-14-21-49-32-932.png! > Input file doesn't have sheet with name mysheet1. After being processed by > ConvertExcelToCSVProcessor it disappears: it is neither in any output or > input queues. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [nifi] dan-s1 opened a new pull request, #6897: [NIFI-8005] Added warning message for sheets that are not found
dan-s1 opened a new pull request, #6897: URL: https://github.com/apache/nifi/pull/6897 # Summary [NIFI-8005](https://issues.apache.org/jira/browse/NIFI-8005) # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [ ] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [ ] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-0` - [ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-0` ### Pull Request Formatting - [ ] Pull Request based on current revision of the `main` branch - [ ] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [ ] Build completed using `mvn clean install -P contrib-check` - [ ] JDK 8 - [ ] JDK 11 - [ ] JDK 17 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-11107) ConsumeIMAP and ConsumePOP3 with OAUTH
Tamas Palfy created NIFI-11107: -- Summary: ConsumeIMAP and ConsumePOP3 with OAUTH Key: NIFI-11107 URL: https://issues.apache.org/jira/browse/NIFI-11107 Project: Apache NiFi Issue Type: Improvement Reporter: Tamas Palfy In ConsumeIMAP and ConsumePOP3 add support for OAUTH based authorization. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (NIFI-11107) ConsumeIMAP and ConsumePOP3 with OAUTH
[ https://issues.apache.org/jira/browse/NIFI-11107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tamas Palfy reassigned NIFI-11107: -- Assignee: Tamas Palfy > ConsumeIMAP and ConsumePOP3 with OAUTH > -- > > Key: NIFI-11107 > URL: https://issues.apache.org/jira/browse/NIFI-11107 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Tamas Palfy >Assignee: Tamas Palfy >Priority: Major > > In ConsumeIMAP and ConsumePOP3 add support for OAUTH based authorization. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10179) Add to ReplaceText the possibility to specify the search and replacement values with an attribute or parameter
[ https://issues.apache.org/jira/browse/NIFI-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrea Molteni updated NIFI-10179: -- Labels: ReplaceText improvement (was: improvement replace) > Add to ReplaceText the possibility to specify the search and replacement > values with an attribute or parameter > -- > > Key: NIFI-10179 > URL: https://issues.apache.org/jira/browse/NIFI-10179 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.16.3 >Reporter: Andrea Molteni >Priority: Major > Labels: ReplaceText, improvement > Attachments: image.png > > > Actually the ReplaceText processor can be programmed with a replacement > strategy of kind : Regex Replace. This means that the properties Replacement > value and replace value can host some EL attribute or parameters. The regex > itself will not be in the attribute, but it is intended that the user wants > to use the attribute as some part of it. > eg ov value supported value: (.\{${mynumber}})(.*) > but if i prepare the regex search and replacement value in a dedicated > attribute of the flowfile then it is not possible to set the property to the > attribute content (see attached image) > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10179) Add to ReplaceText the possibility to specify the search and replacement values with an attribute or parameter
[ https://issues.apache.org/jira/browse/NIFI-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrea Molteni updated NIFI-10179: -- Affects Version/s: 1.19.1 (was: 1.16.3) > Add to ReplaceText the possibility to specify the search and replacement > values with an attribute or parameter > -- > > Key: NIFI-10179 > URL: https://issues.apache.org/jira/browse/NIFI-10179 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.19.1 >Reporter: Andrea Molteni >Priority: Major > Labels: ReplaceText, improvement > Attachments: image.png > > > Actually the ReplaceText processor can be programmed with a replacement > strategy of kind : Regex Replace. This means that the properties Replacement > value and replace value can host some EL attribute or parameters. The regex > itself will not be in the attribute, but it is intended that the user wants > to use the attribute as some part of it. > eg ov value supported value: (.\{${mynumber}})(.*) > but if i prepare the regex search and replacement value in a dedicated > attribute of the flowfile then it is not possible to set the property to the > attribute content (see attached image) > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (NIFI-10179) Add to ReplaceText the possibility to specify the search and replacement values with an attribute or parameter
[ https://issues.apache.org/jira/browse/NIFI-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrea Molteni updated NIFI-10179: -- Component/s: Extensions (was: Core Framework) > Add to ReplaceText the possibility to specify the search and replacement > values with an attribute or parameter > -- > > Key: NIFI-10179 > URL: https://issues.apache.org/jira/browse/NIFI-10179 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.16.3 >Reporter: Andrea Molteni >Priority: Major > Labels: improvement, replace > Attachments: image.png > > > Actually the ReplaceText processor can be programmed with a replacement > strategy of kind : Regex Replace. This means that the properties Replacement > value and replace value can host some EL attribute or parameters. The regex > itself will not be in the attribute, but it is intended that the user wants > to use the attribute as some part of it. > eg ov value supported value: (.\{${mynumber}})(.*) > but if i prepare the regex search and replacement value in a dedicated > attribute of the flowfile then it is not possible to set the property to the > attribute content (see attached image) > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [nifi-fds] dependabot[bot] opened a new pull request, #75: Bump ua-parser-js from 0.7.31 to 0.7.33
dependabot[bot] opened a new pull request, #75: URL: https://github.com/apache/nifi-fds/pull/75 Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33. Changelog Sourced from https://github.com/faisalman/ua-parser-js/blob/master/changelog.md;>ua-parser-js's changelog. Version 0.7.31 / 1.0.2 Fix OPPO Reno A5 incorrect detection Fix TypeError Bug Use AST to extract regexes and verify them with safe-regex Version 0.7.32 / 1.0.32 Add new browser : DuckDuckGo, Huawei Browser, LinkedIn Add new OS : HarmonyOS Add some Huawei models Add Sharp Aquos TV Improve detection Xiaomi Mi CC9 Fix Sony Xperia 1 III misidentified as Acer tablet Fix Detect Sony BRAVIA as SmartTV Fix Detect Xiaomi Mi TV as SmartTV Fix Detect Galaxy Tab S8 as tablet Fix WeGame mistakenly identified as WeChat Fix included commas in Safari / Mobile Safari version Increase UA_MAX_LENGTH to 350 Version 0.7.33 / 1.0.33 Add new browser : Cobalt Identify Macintosh as an Apple device Fix ReDoS vulnerability Version 0.8 Version 0.8 was created by accident. This version is now deprecated and no longer maintained, please update to version 0.7 / 1.0. Commits https://github.com/faisalman/ua-parser-js/commit/f2d0db001d87da15de7b9b1df7be9f2eacefd8c5;>f2d0db0 Bump version 0.7.33 https://github.com/faisalman/ua-parser-js/commit/a6140a17dd0300a35cfc9cff999545f267889411;>a6140a1 Remove unsafe regex in trim() function https://github.com/faisalman/ua-parser-js/commit/a88660493568d6144a551424a8139d6c876635f6;>a886604 Fix https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/605;>#605 - Identify Macintosh as Apple device https://github.com/faisalman/ua-parser-js/commit/b814bcd79198e730936c82462e2d729eb5423e3c;>b814bcd Merge pull request https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/606;>#606 from rileyjshaw/patch-1 https://github.com/faisalman/ua-parser-js/commit/7f71024161399b7aa5d5cd10dba9e059f0218262;>7f71024 Fix documentation https://github.com/faisalman/ua-parser-js/commit/c239ac5167abd574a635cb809a2b4fa35810d23b;>c239ac5 Merge pull request https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/604;>#604 from obecerra3/master https://github.com/faisalman/ua-parser-js/commit/8d3c2d327cf540ff2c050f1cc67bca8c6f8e4458;>8d3c2d3 Add new browser: Cobalt https://github.com/faisalman/ua-parser-js/commit/d11fc47dc9b6acc0f89fc10c120cea08e10cd31a;>d11fc47 Bump version 0.7.32 https://github.com/faisalman/ua-parser-js/commit/b490110109de586deab96c775c9ef0dfc9c919c4;>b490110 Merge branch 'develop' of github.com:faisalman/ua-parser-js https://github.com/faisalman/ua-parser-js/commit/cb5da5ea4b220d5b60fe209e123b7f911d8e0d4a;>cb5da5e Merge pull request https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/600;>#600 from moekm/develop Additional commits viewable in https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33;>compare view [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ua-parser-js=npm_and_yarn=0.7.31=0.7.33)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels
[GitHub] [nifi-minifi-cpp] fgerlits commented on a diff in pull request #1498: MINIFICPP-2020 Improve error messages when MiNiFi is not able to start
fgerlits commented on code in PR #1498: URL: https://github.com/apache/nifi-minifi-cpp/pull/1498#discussion_r1088759960 ## minifi_main/MiNiFiWindowsService.h: ## @@ -20,10 +20,12 @@ #ifdef WIN32 #include +#include + #include "core/Core.h" void RunAsServiceIfNeeded(); -HANDLE GetTerminationEventHandle(bool* isStartedByService); +std::tuple GetTerminationEventHandle(); Review Comment: or I guess we could do just this: https://github.com/fgerlits/nifi-minifi-cpp/commit/c81662e94abefbea9ac993a2cdb551d16ee55ecd -- still not sure it's worth it -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] fgerlits commented on a diff in pull request #1498: MINIFICPP-2020 Improve error messages when MiNiFi is not able to start
fgerlits commented on code in PR #1498: URL: https://github.com/apache/nifi-minifi-cpp/pull/1498#discussion_r1088750787 ## minifi_main/MiNiFiWindowsService.h: ## @@ -20,10 +20,12 @@ #ifdef WIN32 #include +#include + #include "core/Core.h" void RunAsServiceIfNeeded(); -HANDLE GetTerminationEventHandle(bool* isStartedByService); +std::tuple GetTerminationEventHandle(); Review Comment: we only call this function from one place, and the parts are named where we call it, so I'm not sure it's worth it did you mean something like this? https://github.com/fgerlits/nifi-minifi-cpp/commit/02a2b692c4d924dfbb522ac0eb71a007c84dbd69 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088690475 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") +.description("Cryptographic key to calculate the hash") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.sensitive(true) +.build(); + +protected static final PropertyDescriptor MAC = new PropertyDescriptor.Builder() +.name("MAC") +.displayName("Message Authentication Code") +.description("The MAC to compare with the calculated value") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) + .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES) +.build(); + +protected static final Relationship FAILURE = new Relationship.Builder() +.name("failure") +.description("Signature Verification Failed") +.build(); + +protected static final Relationship SUCCESS = new Relationship.Builder() +.name("success") +.description("Signature Verification Succeeded") +.build(); + +private static final List PROPERTIES = Collections.unmodifiableList(Arrays.asList(MAC_ALGORITHM, SECRET_KEY, MAC)); +private static final Set RELATIONSHIPS = Collections.unmodifiableSet(new HashSet<>(Arrays.asList(SUCCESS,
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088690187 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) Review Comment: done ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088690017 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), Review Comment: done ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088689594 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") +.description("Cryptographic key to calculate the hash") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.sensitive(true) +.build(); + +protected static final PropertyDescriptor MAC = new PropertyDescriptor.Builder() +.name("MAC") +.displayName("Message Authentication Code") +.description("The MAC to compare with the calculated value") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) + .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES) +.build(); + +protected static final Relationship FAILURE = new Relationship.Builder() +.name("failure") +.description("Signature Verification Failed") +.build(); + +protected static final Relationship SUCCESS = new Relationship.Builder() +.name("success") +.description("Signature Verification Succeeded") +.build(); + +private static final List PROPERTIES = Collections.unmodifiableList(Arrays.asList(MAC_ALGORITHM, SECRET_KEY, MAC)); +private static final Set RELATIONSHIPS = Collections.unmodifiableSet(new HashSet<>(Arrays.asList(SUCCESS,
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088689378 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") +.description("Cryptographic key to calculate the hash") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.sensitive(true) +.build(); + +protected static final PropertyDescriptor MAC = new PropertyDescriptor.Builder() +.name("MAC") +.displayName("Message Authentication Code") +.description("The MAC to compare with the calculated value") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) + .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES) +.build(); + +protected static final Relationship FAILURE = new Relationship.Builder() +.name("failure") +.description("Signature Verification Failed") +.build(); + +protected static final Relationship SUCCESS = new Relationship.Builder() +.name("success") +.description("Signature Verification Succeeded") +.build(); + +private static final List PROPERTIES = Collections.unmodifiableList(Arrays.asList(MAC_ALGORITHM, SECRET_KEY, MAC)); +private static final Set RELATIONSHIPS = Collections.unmodifiableSet(new HashSet<>(Arrays.asList(SUCCESS,
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088689103 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") +.description("Cryptographic key to calculate the hash") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.sensitive(true) +.build(); + +protected static final PropertyDescriptor MAC = new PropertyDescriptor.Builder() +.name("MAC") Review Comment: done ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088688817 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") Review Comment: done -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088688552 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") Review Comment: done ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import
[GitHub] [nifi] ferencerdei commented on a diff in pull request #6877: NIFI-11087 Add VerifyContentMAC Processor
ferencerdei commented on code in PR #6877: URL: https://github.com/apache/nifi/pull/6877#discussion_r1088688192 ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.processors.standard; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import org.apache.nifi.annotation.behavior.EventDriven; +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.expression.ExpressionLanguageScope; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.util.StandardValidators; + +@InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED) +@Tags({"Encryption", "Signing", "MAC", "HMAC"}) +@CapabilityDescription("Calculates MAC using the provided Secret Key and compares it with the provided MAC parameter") +@EventDriven +@WritesAttributes({ +@WritesAttribute(attribute = VerifyContentMAC.MAC_CALCULATED_ATTRIBUTE, description = "The calculated MAC value"), +@WritesAttribute(attribute = VerifyContentMAC.MAC_ALGORITHM_ATTRIBUTE, description = "The MAC algorithm")}) +public class VerifyContentMAC extends AbstractProcessor { + +protected static final String HMAC_SHA256 = "HmacSHA256"; +protected static final String HMAC_SHA512 = "HmacSHA512"; + +protected static final PropertyDescriptor MAC_ALGORITHM = new PropertyDescriptor.Builder() +.name("MAC_ALGORITHM") +.displayName("MAC Algorithm") +.description("Cryptographic Hash Function") +.allowableValues(HMAC_SHA256, HMAC_SHA512) +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.build(); + +protected static final PropertyDescriptor SECRET_KEY = new PropertyDescriptor.Builder() +.name("SECRET_KEY") +.displayName("Secret key") +.description("Cryptographic key to calculate the hash") +.required(true) +.addValidator(StandardValidators.NON_EMPTY_VALIDATOR) +.sensitive(true) +.build(); + +protected static final PropertyDescriptor MAC = new PropertyDescriptor.Builder() +.name("MAC") +.displayName("Message Authentication Code") +.description("The MAC to compare with the calculated value") Review Comment: added the mac encoding property ## nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/VerifyContentMAC.java: ## @@ -0,0 +1,187 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software