Adrian Cole created JCLOUDS-294:
-----------------------------------

             Summary: Improve Credential Storage mechanics
                 Key: JCLOUDS-294
                 URL: https://issues.apache.org/jira/browse/JCLOUDS-294
             Project: jclouds
          Issue Type: Improvement
          Components: jclouds-compute
            Reporter: Adrian Cole


jclouds currently has a CredentialStoreModule, which allows a user to supply a 
Map<String, Credentials> used to store credentials for nodes on startup, or to 
access them for running scripts.

An integration example was to back this by a Map<String, InputStream>, and 
experimental code actually used BlobStore to do this.  However, Map<String, 
InputStream> is really a bad abstraction as most inputstreams  are not 
replayable (It might be better as Map<String, Supplier<InputStream>>).  The 
cleanest implementation of the current process is likely for the user to 
provide their own Map<String, Credentials>, perhaps backed by hazelcast [1] if 
they want it to be distributed.

[1] http://www.hazelcast.com/docs/2.0/manual/multi_html/ch02s03.html

A better design would be to not use Map at all.  It is a wide interface that 
requires implementation of methods that have no usage in context.

A cleaner design could be 2 part: A sink or callback on new credentials, and a 
Cache<String, Credentials> for access.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to