Etienne Carriere created JCLOUDS-1220:
-----------------------------------------
Summary: Managing the header name in the TempAuth (Identity
Protocol v1)
Key: JCLOUDS-1220
URL: https://issues.apache.org/jira/browse/JCLOUDS-1220
Project: jclouds
Issue Type: Improvement
Components: jclouds-blobstore
Affects Versions: 2.0.0
Reporter: Etienne Carriere
Priority: Minor
Fix For: 2.1.0
State of jclouds
The openstack swift "official" client (in python) manage this v1 protocol
(http://docs.openstack.org/developer/python-swiftclient/swiftclient.html) so
even if we don't have a specification, we will use the code of the official
client for the implementation.
In jclouds, there is currently a sort-of v1 identity protocol in the
openstack-swift module: in
apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/config/SwiftAuthenticationModule.java,
there is a tempAuthCredentials which is almost the identity v1 protocol except
that the name of the headers was not the same :
= X-Storage-User vs X-Auth-User
= X-Storage-Path vs X-Auth-Key
Proposal
= Keep the current behaviour as default
= Add 2 parameters to change the header name through variables in the
Properties put in the Builder like that :
Properties overrides = new Properties();
overrides.setProperty("jclouds.keystone.credential-type",
"tempAuthCredentials");
overrides.setProperty("jclouds.swift.tempAuth.headerUser", "X-Auth-User");
overrides.setProperty("jclouds.swift.tempAuth.headerPass", "X-Auth-Pass");
swiftApi = ContextBuilder.newBuilder(provider)
.endpoint(args[1])
.credentials(identity, credential)
.modules(modules)
.overrides(overrides)
.buildApi(SwiftApi.class);
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)