hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steven Wong (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HADOOP-12723) S3A: Add ability to plug in any AWSCredentialsProvider
Date Wed, 18 May 2016 23:18:12 GMT

     [ https://issues.apache.org/jira/browse/HADOOP-12723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Steven Wong updated HADOOP-12723:
    Attachment: HADOOP-12723.5.patch

[~steve_l], thanks for taking time to review the patch.

Attaching HADOOP-12723.5.patch that accepts all your suggestions, except for #2 which I'm
unclear about what you meant.

Regarding HADOOP-12537, an earlier comment of mine (above) compares it with an alternative
with different functionality (short-lived vs. long-lived credentials). But, yes, one can implement
HADOOP-12537 using HADOOP-12723: Implement and plug in a new provider that, just like HADOOP-12537
currently does, looks up the session token from configuration and returns a com.amazonaws.auth.BasicSessionCredentials.

Regarding what other providers I have in mind, I have seen a use case for a provider that
doles out credentials using com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider with
a role ARN (specified in a config property), and a use case for doling out different role-based
credentials based on the S3 bucket being accessed (using config properties that map bucket
names to role ARNs).

> 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, HADOOP-12723.2.patch,
HADOOP-12723.3.patch, HADOOP-12723.4.patch, HADOOP-12723.5.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(URI, Configuration)}}.
> 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

To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org

View raw message