按Bucket配置OSS/OSS-HDFS Credential Provider

更新時間:
Copy as MD

本文為您介紹如何按Bucket配置OSS/OSS-HDFS Credential Provider。

按照Bucket配置Credential Provider

<configuration>
    <property>
        <name>fs.oss.bucket.XXX.credentials.provider</name>
        <value>com.aliyun.jindodata.oss.auth.SimpleAliyunCredentialsProvider,com.aliyun.jindodata.oss.auth.EnvironmentVariableCredentialsProvider,com.aliyun.jindodata.oss.auth.CommonCredentialsProvider</value>
        <description>配置com.aliyun.jindodata.oss.auth.AliyunCredentialsProvider的實作類別,多個類時使用英文逗號(,)隔開,按照先後順序讀取Credential直至讀到有效Credential。Provider詳情請參見Credential Provider類型。</description>
    </property>
</configuration>
說明 XXX為OSS/OSS-HDFS Bucket名稱。

Credential Provider類型

您可以根據情況,選擇不同的Credential Provider,支援如下Credential Provider類型:
Credential Provider類型說明
TemporaryCredentialsProvider適合使用有時效性的AccessKeySecurityToken訪問OSSOSS-HDFS的情況。
SimpleCredentialsProvider適合使用長期有效AccessKey訪問OSSOSS-HDFS的情況。
EnvironmentVariableCredentialsProvider在環境變數中擷取AccessKey。
CommonCredentialsProvider通用配置。

TemporaryCredentialsProvider

  • 配置Provider類型
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.TemporaryCredentialsProvider</value>
        </property>
    </configuration>
  • 配置OSSOSS-HDFS AccessKey
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.accessKeyId</name>
            <value>OSS/OSS-HDFS bucketAccessKey Id</value>
        </property>
        <property>
            <name>fs.oss.bucket.XXX.accessKeySecret</name>
            <value>OSS/OSS-HDFS bucketAccessKey Secret</value>
        </property>
        <property>
            <name>fs.oss.bucket.XXX.securityToken</name>
            <value>OSS/OSS-HDFS bucketSecurityToken(臨時安全性權杖)</value>
        </property>
    </configuration>

SimpleCredentialsProvider

  • 配置Provider類型
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.SimpleCredentialsProvider</value>
        </property>
    </configuration>
  • 配置OSSOSS-HDFS AccessKey
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.accessKeyId</name>
            <value>OSS/OSS-HDFS bucketAccessKey Id</value>
        </property>
        <property>
            <name>fs.oss.bucket.XXX.accessKeySecret</name>
            <value>OSS/OSS-HDFS bucketAccessKey Secret</value>
        </property>
    </configuration>

EnvironmentVariableCredentialsProvider

  • 配置Provider類型
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.EnvironmentVariableCredentialsProvider</value>
        </property>
    </configuration>
  • 配置OSSOSS-HDFS AccessKey

    需要在環境變數中配置以下參數:

    參數

    說明

    OSS_ACCESS_KEY_ID

    OSSOSS-HDFSAccessKey ID。

    OSS_ACCESS_KEY_SECRET

    OSSOSS-HDFSAccessKey Secret。

    OSS_SECURITY_TOKEN

    OSSOSS-HDFSSecurityToken(臨時安全性權杖)。

    說明

    僅配置有時效Token時需要。

CommonCredentialsProvider

  • 配置Provider類型
    <configuration>
        <property>
            <name>fs.oss.bucket.XXX.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.CommonCredentialsProvider</value>
        </property>
    </configuration>
  • 配置OSSOSS-HDFS AccessKey
    <configuration>
        <property>
            <name>jindo.common.accessKeyId</name>
            <value>OSS/OSS-HDFS BucketAccessKey Id</value>
        </property>
        <property>
            <name>jindo.common.accessKeySecret</name>
            <value>OSS/OSS-HDFS BucketAccessKey Secret</value>
        </property>
        <property>
            <name>jindo.common.securityToken</name>
            <value>OSS/OSS-HDFS BucketSecurityToken(臨時安全性權杖)。僅配置有時效Token時需要。</value>
        </property>
    </configuration>