Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
178 changes: 178 additions & 0 deletions .github/references/ubuntu_22_04_clang_arm_manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -12104,6 +12104,184 @@
"version": "1.0.0"
}
},
{
"bundles": {
"componentManifest": {
"processors": [
{
"propertyDescriptors": {
"Passphrase": {
"name": "Passphrase",
"description": "Passphrase used for decrypting data encrypted with Password-Based Encryption",
"validator": "NON_BLANK_VALIDATOR",
"required": "false",
"sensitive": "true",
"expressionLanguageScope": "NONE"
},
"Private Key Service": {
"typeProvidedByValue": {
"type": "minifi_pgp.controller_services.private_key_service.PGPPrivateKeyService",
"group": "org.apache.nifi.minifi.rust",
"artifact": "minifi_pgp"
},
"name": "Private Key Service",
"description": "PGP Private Key Service for decrypting data encrypted with Public Key Encryption",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "NONE"
}
},
"inputRequirement": "INPUT_REQUIRED",
"isSingleThreaded": "false",
"supportedRelationships": [
{
"name": "failure",
"description": "Decryption Failed"
},
{
"name": "success",
"description": "Decryption Succeeded"
}
],
"typeDescription": "Decrypt contents of OpenPGP messages.",
"supportsDynamicRelationships": "false",
"supportsDynamicProperties": "false",
"type": "minifi_pgp.processors.decrypt_content.DecryptContentPGP"
},
{
"propertyDescriptors": {
"File Encoding": {
"name": "File Encoding",
"description": "File Encoding for encryption",
"validator": "VALID",
"required": "true",
"sensitive": "false",
"expressionLanguageScope": "NONE",
"defaultValue": "BINARY",
"allowableValues": [
{
"value": "ASCII",
"displayName": "ASCII"
},
{
"value": "BINARY",
"displayName": "BINARY"
}
]
},
"Passphrase": {
"name": "Passphrase",
"description": "Passphrase used for encrypting data with Password-Based Encryption",
"validator": "NON_BLANK_VALIDATOR",
"required": "false",
"sensitive": "true",
"expressionLanguageScope": "NONE"
},
"Public Key Search": {
"name": "Public Key Search",
"description": "PGP Public Key Search will be used to match against the User ID or Key ID when formatted as uppercase hexadecimal string of 16 characters",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "FLOWFILE_ATTRIBUTES"
},
"Public Key Service": {
"typeProvidedByValue": {
"type": "minifi_pgp.controller_services.public_key_service.PGPPublicKeyService",
"group": "org.apache.nifi.minifi.rust",
"artifact": "minifi_pgp"
},
"name": "Public Key Service",
"description": "PGP Public Key Service for encrypting data with Public Key Encryption",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "NONE"
}
},
"inputRequirement": "INPUT_REQUIRED",
"isSingleThreaded": "false",
"supportedRelationships": [
{
"name": "failure",
"description": "Encryption Failed"
},
{
"name": "success",
"description": "Encryption Succeeded"
}
],
"typeDescription": "Encrypt contents using OpenPGP.",
"supportsDynamicRelationships": "false",
"supportsDynamicProperties": "false",
"type": "minifi_pgp.processors.encrypt_content.EncryptContentPGP"
}
],
"controllerServices": [
{
"propertyDescriptors": {
"Key Password": {
"name": "Key Password",
"description": "Password used for decrypting Private Keys. Multiple passwords may be supplied one per line, each of them is tried in turn",
"validator": "NON_BLANK_VALIDATOR",
"required": "false",
"sensitive": "true",
"expressionLanguageScope": "NONE"
},
"Keyring": {
"name": "Keyring",
"description": "Secret Key encoded in ASCII Armor",
"validator": "VALID",
"required": "false",
"sensitive": "true",
"expressionLanguageScope": "NONE"
},
"Keyring File": {
"name": "Keyring File",
"description": "File path to PGP Secret Key encoded in binary or ASCII Armor",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "FLOWFILE_ATTRIBUTES"
}
},
"typeDescription": "PGP Private Key Service provides Private Keys loaded from files or properties",
"supportsDynamicRelationships": "false",
"supportsDynamicProperties": "false",
"type": "minifi_pgp.controller_services.private_key_service.PGPPrivateKeyService"
},
{
"propertyDescriptors": {
"Keyring": {
"name": "Keyring",
"description": "PGP Keyring or Public Key encoded in ASCII Armor",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "NONE"
},
"Keyring File": {
"name": "Keyring File",
"description": "File path to PGP Keyring or Public Key encoded in binary or ASCII Armor",
"validator": "VALID",
"required": "false",
"sensitive": "false",
"expressionLanguageScope": "FLOWFILE_ATTRIBUTES"
}
},
"typeDescription": "PGP Public Key Service providing Public Keys loaded from files",
"supportsDynamicRelationships": "false",
"supportsDynamicProperties": "false",
"type": "minifi_pgp.controller_services.public_key_service.PGPPublicKeyService"
}
]
},
"group": "org.apache.nifi.minifi.rust",
"artifact": "minifi_pgp",
"version": "1.0.0"
}
},
{
"bundles": {
"componentManifest": {
Expand Down
36 changes: 35 additions & 1 deletion CONTROLLERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ limitations under the License.
- [NetworkPrioritizerService](#NetworkPrioritizerService)
- [ODBCService](#ODBCService)
- [PersistentMapStateStorage](#PersistentMapStateStorage)
- [PGPPrivateKeyService](#PGPPrivateKeyService)
- [PGPPublicKeyService](#PGPPublicKeyService)
- [ProxyConfigurationService](#ProxyConfigurationService)
- [RocksDbStateStorage](#RocksDbStateStorage)
- [SmbConnectionControllerService](#SmbConnectionControllerService)
Expand Down Expand Up @@ -245,6 +247,39 @@ In the list below, the names of required properties appear in bold. Any other pr
| **File** | | | Path to a file to store state |


## PGPPrivateKeyService

### Description

PGP Private Key Service provides Private Keys loaded from files or properties

### Properties

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

| Name | Default Value | Allowable Values | Description |
|--------------|---------------|------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Key Password | | | Password used for decrypting Private Keys. Multiple passwords may be supplied one per line, each of them is tried in turn<br/>**Sensitive Property: true** |
| Keyring | | | Secret Key encoded in ASCII Armor<br/>**Sensitive Property: true** |
| Keyring File | | | File path to PGP Secret Key encoded in binary or ASCII Armor<br/>**Supports Expression Language: true** |


## PGPPublicKeyService

### Description

PGP Public Key Service providing Public Keys loaded from files

### Properties

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

| Name | Default Value | Allowable Values | Description |
|--------------|---------------|------------------|--------------------------------------------------------------------------------------------------------------------|
| Keyring | | | PGP Keyring or Public Key encoded in ASCII Armor |
| Keyring File | | | File path to PGP Keyring or Public Key encoded in binary or ASCII Armor<br/>**Supports Expression Language: true** |


## ProxyConfigurationService

### Description
Expand Down Expand Up @@ -393,4 +428,3 @@ In the list below, the names of required properties appear in bold. Any other pr
| **Pretty Print XML** | false | true<br/>false | Specifies whether or not the XML should be pretty printed |
| **Name of Record Tag** | | | Specifies the name of the XML record tag wrapping the record fields. |
| **Name of Root Tag** | | | Specifies the name of the XML root tag wrapping the record set. |

56 changes: 56 additions & 0 deletions PROCESSORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,13 @@ limitations under the License.
- [ConsumeMQTT](#ConsumeMQTT)
- [ConsumeWindowsEventLog](#ConsumeWindowsEventLog)
- [ConvertRecord](#ConvertRecord)
- [DecryptContentPGP](#DecryptContentPGP)
- [DefragmentText](#DefragmentText)
- [DeleteAzureBlobStorage](#DeleteAzureBlobStorage)
- [DeleteAzureDataLakeStorage](#DeleteAzureDataLakeStorage)
- [DeleteGCSObject](#DeleteGCSObject)
- [DeleteS3Object](#DeleteS3Object)
- [EncryptContentPGP](#EncryptContentPGP)
- [EvaluateJsonPath](#EvaluateJsonPath)
- [ExecuteProcess](#ExecuteProcess)
- [ExecuteScript](#ExecuteScript)
Expand Down Expand Up @@ -436,6 +438,29 @@ In the list below, the names of required properties appear in bold. Any other pr
| record.error.message | failure | This attribute provides on failure the error message encountered by the Reader or Writer. |


## DecryptContentPGP

### Description

Decrypt contents of OpenPGP messages.

### Properties

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

| Name | Default Value | Allowable Values | Description |
|---------------------|---------------|------------------|---------------------------------------------------------------------------------------------------------------|
| Passphrase | | | Passphrase used for decrypting data encrypted with Password-Based Encryption<br/>**Sensitive Property: true** |
| Private Key Service | | | PGP Private Key Service for decrypting data encrypted with Public Key Encryption |

### Relationships

| Name | Description |
|---------|----------------------|
| failure | Decryption Failed |
| success | Decryption Succeeded |


## DefragmentText

### Description
Expand Down Expand Up @@ -594,6 +619,37 @@ In the list below, the names of required properties appear in bold. Any other pr
| failure | FlowFiles are routed to failure relationship |


## EncryptContentPGP

### Description

Encrypt contents using OpenPGP.

### Properties

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

| Name | Default Value | Allowable Values | Description |
|--------------------|---------------|------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **File Encoding** | BINARY | ASCII<br/>BINARY | File Encoding for encryption |
| Passphrase | | | Passphrase used for encrypting data with Password-Based Encryption<br/>**Sensitive Property: true** |
| Public Key Search | | | PGP Public Key Search will be used to match against the User ID or Key ID when formatted as uppercase hexadecimal string of 16 characters<br/>**Supports Expression Language: true** |
| Public Key Service | | | PGP Public Key Service for encrypting data with Public Key Encryption |

### Relationships

| Name | Description |
|---------|----------------------|
| failure | Encryption Failed |
| success | Encryption Succeeded |

### Output Attributes

| Attribute | Relationship | Description |
|-------------------|--------------|---------------|
| pgp.file.encoding | success | File Encoding |


## EvaluateJsonPath

### Description
Expand Down
Loading
Loading