nifi/nifi-commons
Andy LoPresto d148fb1854
NIFI-3834 This closes #3821. Added encrypted content repository implementation.
Added skeleton implementation of EncryptedFileSystemRepository.
Added new impl to META-INF registry.
Added investigation comments to FileSystemRepository.
Implemented RepositoryObject block and stream encryptors.
Added passing unit test for encryption and decryption of multiple content writes (large buffered file) for AES-CTR encryptor.
Refactored shared logic from AES CTR and G/CM encryptors to abstract parent.
Added working unit test for writing/reading via encrypted file system repository.
Added stream wrappers.
Added encryptor.
Added working unit test for writing/reading multiple pieces of content via encrypted file system repository.
Added unit test skeleton for writing/reading multiple pieces of content with different keys via encrypted file system repository.
Implemented key management skeleton for encrypted content repository.
Multiple content claims can now be encrypted with different keys on the same resource claim and retrieved.
Implemented validation on setting active key id.
Added content repository encryption properties to NiFiProperties.
Implemented configuration of encryption services from NiFiProperties.
Refactored NiFiPropertiesLoader functionality to CryptoUtils for availability in other modules.
Added RepositoryEncryptionConfiguration and repo-specific subclasses for data containers.
Continued refactoring of CryptoUtils and RepositoryEncryptorUtils library methods.
Exposed some internal state of FileSystemRepository via protected getters so encrypted implementation could access.
Refactored EncryptedFileSystemRepository to extend rather than duplicate FSR.
Refactored EFSR to use ECROS which now extends extracted ContentRepositoryOutputStream protected inner class in FSR.
Added unit test to encrypt & decrypt image resource.
Added smaller image resource for easier unit test debugging.
Added importFrom method to resolve issue where GetFile would not encrypt content persisted to repository.
Added text test resource for tests around exporting claim subsets.
Added exportTo methods to handle decrypting encrypted content.
Performed large unit test refactoring, moving shared logic to helper methods.
Added unit test for merged content claim with header/footer/demarcator.
Added unit test for merging content claims each encrypted with a different key.
Ignored non-deterministically failing firewall DNS test.
Added documentation to User and Admin Guide for Encrypted Content Repository.
Added image.
Added refactored utility method for shared ROEM extraction and validation logic in AbstractAESEncryptor.
Replaced ad-hoc generation of ciphertext stream and byte[] for testing with static initialization from pre-generated serialized form for performance.
Cleaned up unused test code.
Cleaned up Javadoc and code comments.
Refactored shared logic.
Fixed checkstyle issue.
Fixed test failure due to error message change.
Added experimental warning to repository implementation classes and User Guide documentation.

Signed-off-by: Joe Witt <joewitt@apache.org>
2019-10-21 13:03:59 -04:00
..
nifi-data-provenance-utils NIFI-3834 This closes #3821. Added encrypted content repository implementation. 2019-10-21 13:03:59 -04:00
nifi-expression-language NIFI-6733 updating key apache commons dependencies and apache base dependency for build 2019-10-07 22:20:48 -04:00
nifi-flowfile-packager NIFI-6733 updating key apache commons dependencies and apache base dependency for build 2019-10-07 22:20:48 -04:00
nifi-hl7-query-language NIFI-5254 Upgraded Groovy to version 2.5.4 2019-07-11 14:17:35 -04:00
nifi-json-utils NIFI-5254 Upgraded Groovy to version 2.5.4 2019-07-11 14:17:35 -04:00
nifi-logging-utils NIFI-6323 Changed URLs for repositories, project description, and mailing lists to use HTTPS. 2019-05-29 14:36:40 -04:00
nifi-metrics NIFI-5373 Created new module nifi-metrics 2019-06-19 15:50:42 -04:00
nifi-parameter NIFI-6380: Introduced the notion of Parameters and Parameter Contexts to the code base. 2019-08-02 10:45:39 -04:00
nifi-properties NIFI-3834 This closes #3821. Added encrypted content repository implementation. 2019-10-21 13:03:59 -04:00
nifi-record NIFI-6369: This closes #3560. Updated JSON Readers to convert String values to Date/Time/Timestamp objects when appropriate according to the schema and the configured pattern 2019-09-19 23:16:34 -04:00
nifi-record-path NIFI-6502 RecordPath padding functions: 2019-08-19 17:26:19 -04:00
nifi-rocksdb-utils NIFI-4775: Updating documentation and updating rocksdb version 2019-08-15 15:28:48 +00:00
nifi-schema-utils NIFI-6323 Changed URLs for repositories, project description, and mailing lists to use HTTPS. 2019-05-29 14:36:40 -04:00
nifi-security-utils NIFI-3834 This closes #3821. Added encrypted content repository implementation. 2019-10-21 13:03:59 -04:00
nifi-site-to-site-client NIFI-6733 updating key apache commons dependencies and apache base dependency for build 2019-10-07 22:20:48 -04:00
nifi-socket-utils NIFI-6323 Changed URLs for repositories, project description, and mailing lists to use HTTPS. 2019-05-29 14:36:40 -04:00
nifi-utils NIFI-6658: Implement new bin/nifi.sh diagnostics command that is responsible for obtaining diagnostic information about many different parts of nifi, the operating system, etc. 2019-09-13 10:45:53 -04:00
nifi-web-utils NIFI-6733 updating key apache commons dependencies and apache base dependency for build 2019-10-07 22:20:48 -04:00
nifi-write-ahead-log NIFI-6658: Implement new bin/nifi.sh diagnostics command that is responsible for obtaining diagnostic information about many different parts of nifi, the operating system, etc. 2019-09-13 10:45:53 -04:00
pom.xml NIFI-4775: FlowFile Repository implementation based on RocksDB 2019-08-12 19:03:38 +00:00