...
Code Block | ||||
---|---|---|---|---|
| ||||
//Implementation needs to be thread safe public class JavaSecureStoreProvider extends KeyProvider { private JavaSecureStoreProvider(URI uri, Configuration conf) throws IOException { //Get the file path for local storage //Get the password for the secure store //Load or create the store } //Since we are not supporting versioning, the KeyVersion will always be current public KeyVersion getKeyVersion(String versionName) throws IOException { } //Lists all the keys that is accessible to this user. public List<String> getKeys() throws IOException { } //Since we are not supporting versioning, the will only have on item public List<KeyVersion> getKeyVersions(String name) throws IOException{ } public Metadata getMetadata(String name) throws IOException { } public KeyVersion createKey(String name, byte[] material, Options options) throws IOException { } public void deleteKey(String name) throws IOException { } //No-op for this version public KeyVersion rollNewVersion(String name, byte[] material) throws IOException { } public void flush() throws IOException{ } public static class Factory extends KeyProviderFactory { @Override public KeyProvider createProvider(URI providerName, Configuration conf) throws IOException { } } } |
Questions:
- CDAP master key store
Out-of-scope User Stories (4.0 and beyond)
- Support for secure store in distributed mode when KMS is not present.
...