You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Etienne Carriere (JIRA)" <ji...@apache.org> on 2017/01/03 17:17:58 UTC

[jira] [Created] (JCLOUDS-1220) Managing the header name in the TempAuth (Identity Protocol v1)

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)