[ 
https://issues.apache.org/jira/browse/HADOOP-12723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15249844#comment-15249844
 ] 

Steve Loughran commented on HADOOP-12723:
-----------------------------------------

# I'd prefer using a commons.lang check for string null/emptyness, rather than 
{{com.google.common.base.Strings}} ... our relationship with guava is, well, 
strained.
# Id also like those caught and rethrown exceptions of construction wrapped 
with an IOE, rather than RTE. It's a convention in the hadoop FS layer that 
most methods declare they throw IOE, clients except to catch them for problems.

> S3A: Add ability to plug in any AWSCredentialsProvider
> ------------------------------------------------------
>
>                 Key: HADOOP-12723
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12723
>             Project: Hadoop Common
>          Issue Type: New Feature
>          Components: fs/s3
>    Affects Versions: 2.7.1
>            Reporter: Steven Wong
>            Assignee: Steven Wong
>         Attachments: HADOOP-12723.0.patch, HADOOP-12723.1.patch
>
>
> Although S3A currently has built-in support for 
> {{org.apache.hadoop.fs.s3a.BasicAWSCredentialsProvider}}, 
> {{com.amazonaws.auth.InstanceProfileCredentialsProvider}}, and 
> {{org.apache.hadoop.fs.s3a.AnonymousAWSCredentialsProvider}}, it does not 
> support any other credentials provider that implements the 
> {{com.amazonaws.auth.AWSCredentialsProvider}} interface. Supporting the 
> ability to plug in any {{com.amazonaws.auth.AWSCredentialsProvider}} instance 
> will expand the options for S3 credentials, such as:
> * temporary credentials from STS, e.g. via 
> {{com.amazonaws.auth.STSSessionCredentialsProvider}}
> * IAM role-based credentials, e.g. via 
> {{com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider}}
> * a custom credentials provider that satisfies one's own needs, e.g. 
> bucket-specific credentials, user-specific credentials, etc.
> To support this, we can add a configuration for the fully qualified class 
> name of a credentials provider, to be loaded by {{S3AFileSystem.initialize}} 
> and added to its credentials provider chain.
> The configured credentials provider should implement 
> {{com.amazonaws.auth.AWSCredentialsProvider}} and have a constructor that 
> accepts {{(URI uri, Configuration conf)}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to