-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7021/
-----------------------------------------------------------

(Updated Sept. 11, 2012, 4:56 p.m.)


Review request for Flume.


Changes
-------

updated naming in example (not code)


Description (updated)
-------

This patch makes configuration more like the interceptors. All key related 
configuration is in sub properties.

Generating a key with a password seperate from the key store password:

    keytool -genseckey -alias key-0 -keypass keyPassword -keyalg AES \
      -keysize 128 -validity 9000 -keystore test.keystore \
      -storetype jceks -storepass keyStorePassword

Generating a key with the password the same as the key store password:      

    keytool -genseckey -alias key-1 -keyalg AES -keysize 128 -validity 9000 \
      -keystore src/test/resources/test.keystore -storetype jceks \
      -storepass keyStorePassword
      

agent.channels.ch-0.encryption.keyAlias = key-0
agent.channels.ch-0.encryption.cipherProvider = AESCTRNOPADDING
agent.channels.ch-0.encryption.keyProvider = key-provider-0
agent.channels.ch-0.encryption.keyProvider.key-provider-0.type = JCEKSFILE
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStoreFile = 
/path/to/my.keystore
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStorePasswordFile 
= /path/to/my.keystore.password
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keys = key-0

Let's say you have aged key-0 out and new files should be encrypted with key-1:

agent.channels.ch-0.encryption.keyAlias = key-1
agent.channels.ch-0.encryption.cipherProvider = AESCTRNOPADDING
agent.channels.ch-0.encryption.keyProvider = key-provider-0
agent.channels.ch-0.encryption.keyProvider.key-provider-0.type = JCEKSFILE
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStoreFile = 
/path/to/my.keystore
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStorePasswordFile 
= /path/to/my.keystore.password
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keys = key-0 key-1

The same scenerio as above, however key-0 has it's own password:

agent.channels.ch-0.encryption.keyAlias = key-1
agent.channels.ch-0.encryption.cipherProvider = AESCTRNOPADDING
agent.channels.ch-0.encryption.keyProvider = key-provider-0
agent.channels.ch-0.encryption.keyProvider.key-provider-0.type = JCEKSFILE
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStoreFile = 
/path/to/my.keystore
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keyStorePasswordFile 
= /path/to/my.keystore.password
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keys = key-0 key-1
agent.channels.ch-0.encryption.keyProvider.key-provider-0.keys.key-0.passwordFile
 = /path/to/key-0.password


This addresses bug FLUME-1563.
    https://issues.apache.org/jira/browse/FLUME-1563


Diffs
-----

  
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/FileChannel.java
 f2ccd3a 
  
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/encryption/EncryptionConfiguration.java
 909d6bf 
  
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/encryption/JCEFileKeyProvider.java
 f814993 
  
flume-ng-channels/flume-file-channel/src/main/java/org/apache/flume/channel/file/encryption/KeyProviderFactory.java
 fef0367 
  
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/encryption/EncryptionTestUtils.java
 a157661 
  
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/encryption/TestFileChannelEncryption.java
 5f3a23d 
  
flume-ng-channels/flume-file-channel/src/test/java/org/apache/flume/channel/file/encryption/TestJCEFileKeyProvider.java
 519952e 

Diff: https://reviews.apache.org/r/7021/diff/


Testing
-------

Unit tests pass and there is an additional unit test meant to test how 
configuration properties would come in from the properties file.


Thanks,

Brock Noland

Reply via email to