Tüm Ürünler
Search
Belge Merkezi

E-MapReduce:Configure an OSS/OSS-HDFS credential provider

Son Güncelleme:Oct 04, 2026

Bu konuda bir OSS/OSS-HDFS kimlik bilgisi sağlayıcısının nasıl yapılandırılacağı açıklanmaktadır.

Temel yapılandırma

OSS veya OSS-HDFS için AccessKey ID, AccessKey secret ve uç nokta değerlerini Hadoop core-site.xml dosyasında önceden yapılandırabilirsiniz. Bir EMR kümesi için bu parametreleri yapılandırmak üzere aşağıdaki adımları izleyin:

  1. Hadoop-Common hizmetinin yapılandırma sayfasında core-site.xml sekmesine tıklayın.

  2. Add Configuration Item seçeneğine tıklayın ve fs.oss.accessKeyId ile fs.oss.accessKeySecret yapılandırma öğelerini ekleyin.

  3. OK seçeneğine tıklayın, çalıştırma nedenini girin ve OK seçeneğine tıklayın.

  4. Aşağıda yer alan Save seçeneğine tıklayın.

AccessKey'leri Hadoop kimlik bilgisi sağlayıcıları ile saklayın

Temel yapılandırma yönteminde fs.oss.accessKeyId ve fs.oss.accessKeySecret değerleri core-site.xml dosyasında düz metin olarak saklanır. Bu değerleri şifrelenmiş bir çift halinde bir Hadoop Credential Providers dosyasında saklayabilirsiniz.

AccessKey ID, AccessKey secret ve güvenlik belirtecini aşağıdaki Hadoop komutunu kullanarak bir kimlik bilgisi dosyasında saklayın:

hadoop credential <subcommand> [options]

Dosya izinlerine ek olarak, kimlik bilgilerini şifrelemek için bir parola da belirtebilirsiniz. Parola belirtmezseniz sistem şifreleme için varsayılan bir dize kullanır.

hadoop credential create fs.oss.accessKeyId -value AAA -provider jceks://file/root/oss.jceks
hadoop credential create fs.oss.accessKeySecret -value BBB -provider jceks://file/root/oss.jceks
hadoop credential create fs.oss.securityToken -value CCC -provider jceks://file/root/oss.jceks

Kimlik bilgisi dosyasını oluşturduktan sonra sağlayıcı türünü ve konumunu belirtmek için aşağıdaki özelliği yapılandırın:

<configuration>
    <property>
        <name>fs.oss.security.credential.provider.path</name>
        <value>jceks://file/root/oss.jceks</value>
        <description>Specifies the credential file that stores your access keys. For example, jceks://file/${user.home}/oss.jceks points to the oss.jceks file in your home directory.</description>
    </property>
</configuration>

JindoSDK kimlik bilgisi sağlayıcılarını kullanın

Varsayılan olarak JindoSDK; SimpleCredentialsProvider, EnvironmentVariableCredentialsProvider ve CommonCredentialsProvider ile yapılandırılır. Sistem geçerli kimlik bilgilerini alana kadar her sağlayıcıyı sırayla sorgular.

<configuration>
    <property>
        <name>fs.oss.credentials.provider</name>
        <value>com.aliyun.jindodata.oss.auth.SimpleCredentialsProvider,com.aliyun.jindodata.oss.auth.EnvironmentVariableCredentialsProvider,com.aliyun.jindodata.oss.auth.CommonCredentialsProvider</value>
        <description>Specifies the com.aliyun.jindodata.oss.auth.JindoCredentialsProvider. To use multiple providers, separate the class names with a comma (,). The system attempts to retrieve credentials from each provider in order. For more information about the providers, see Credential provider types.</description>
    </property>
</configuration>

Aşağıdaki seçeneklerden bir kimlik bilgisi sağlayıcısı seçin:


Kimlik bilgisi sağlayıcı türü


Açıklama


TemporaryCredentialsProvider


Süre sınırlı bir AccessKey ID, AccessKey secret ve güvenlik belirteci kullanarak OSS veya OSS-HDFS'e erişmek için bu sağlayıcıyı kullanın.


SimpleCredentialsProvider


Uzun vadeli bir AccessKey ID ve AccessKey secret kullanarak OSS veya OSS-HDFS'e erişmek için bu sağlayıcıyı kullanın.


EnvironmentVariableCredentialsProvider


Kimlik bilgilerini ortam değişkenlerinden alır.


CommonCredentialsProvider


Kimlik bilgilerini ortak Jindo yapılandırma parametrelerinden alan bir sağlayıcıdır.


CustomCredentialsProvider


Özel parolasız bir hizmetle entegre olur.

TemporaryCredentialsProvider

  • Sağlayıcı türünü yapılandırın

    <configuration>
        <property>
            <name>fs.oss.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.TemporaryCredentialsProvider</value>
        </property>
    </configuration>
  • OSS veya OSS-HDFS kimlik bilgilerini yapılandırın

    <configuration>
        <property>
            <name>fs.oss.accessKeyId</name>
            <value>YOUR_ACCESS_KEY_ID</value>
        </property>
        <property>
            <name>fs.oss.accessKeySecret</name>
            <value>YOUR_ACCESS_KEY_SECRET</value>
        </property>
        <property>
            <name>fs.oss.securityToken</name>
            <value>YOUR_SECURITY_TOKEN</value>
        </property>
    </configuration>

SimpleCredentialsProvider

  • Sağlayıcı türünü yapılandırın

    <configuration>
        <property>
            <name>fs.oss.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.SimpleCredentialsProvider</value>
        </property>
    </configuration>
  • OSS veya OSS-HDFS kimlik bilgilerini yapılandırın

    <configuration>
        <property>
            <name>fs.oss.accessKeyId</name>
            <value>YOUR_ACCESS_KEY_ID</value>
        </property>
        <property>
            <name>fs.oss.accessKeySecret</name>
            <value>YOUR_ACCESS_KEY_SECRET</value>
        </property>
    </configuration>

EnvironmentVariableCredentialsProvider

  • Sağlayıcı türünü yapılandırın

    <configuration>
        <property>
            <name>fs.oss.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.EnvironmentVariableCredentialsProvider</value>
        </property>
    </configuration>
  • OSS veya OSS-HDFS kimlik bilgilerini yapılandırın

    Aşağıdaki ortam değişkenlerini ayarlayın:

    Parametre

    Açıklama

    OSS_ACCESS_KEY_ID

    OSS veya OSS-HDFS için AccessKey ID.

    OSS_ACCESS_KEY_SECRET

    OSS veya OSS-HDFS için AccessKey secret.

    OSS_SECURITY_TOKEN

    OSS veya OSS-HDFS için güvenlik belirteci.

    Not

    Yalnızca süre sınırlı bir belirteç kullanılırken gereklidir.

CommonCredentialsProvider

  • Sağlayıcı türünü yapılandırın

    <configuration>
        <property>
            <name>fs.oss.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.CommonCredentialsProvider</value>
        </property>
    </configuration>
  • OSS veya OSS-HDFS kimlik bilgilerini yapılandırın

    <configuration>
        <property>
            <name>jindo.common.accessKeyId</name>
            <value>YOUR_ACCESS_KEY_ID</value>
        </property>
        <property>
            <name>jindo.common.accessKeySecret</name>
            <value>YOUR_ACCESS_KEY_SECRET</value>
        </property>
        <property>
            <name>jindo.common.securityToken</name>
            <value>YOUR_SECURITY_TOKEN. (Required for time-bound tokens)</value>
        </property>
    </configuration>

CustomCredentialsProvider

  • Sağlayıcı türünü yapılandırın

    <configuration>
        <property>
            <name>fs.oss.credentials.provider</name>
            <value>com.aliyun.jindodata.oss.auth.CustomCredentialsProvider</value>
        </property>
    </configuration>
  • Parolasız hizmet URL'sini yapılandırın

    <configuration>
        <property>
            <name>aliyun.oss.provider.url</name>
            <value>The URL of the password-free service.</value>
        </property>
    </configuration>

    aliyun.oss.provider.url http(s) ve Secrets protokollerini destekler:

    • HTTP(S) protokolü

      HTTP(S) parolasız hizmeti için URL biçimi http://localhost:1234/sts şeklindedir. HTTP parolasız protokolü yanıtın JSON biçiminde olmasını gerektirir.

      {
      "AccessKeyId" : "XXXXXXXXX",
      "AccessKeySecret" : "XXXXXXXXX",
      "Expiration" : "2020-11-01T05:20:01Z",
      "SecurityToken" : "XXXXXXXXX",
      "LastUpdated" : "2020-10-31T23:20:01Z",
      "Code" : "Success"
      }
    • Secrets protokolü

      Secrets parolasız hizmeti için adres biçimi secrets:///local_path_prefix olup genellikle Kubernetes senaryolarında kullanılır. Burada local_path_prefix yol ön ekidir:

      • local_path_prefix değeri secrets:///secret/JindoOss ise düğümde /secret/JindoOssAccessKeyId, /secret/JindoOssAccessKeySecret ve /secret/JindoOssSecurityToken gibi dosyalar aranır.

      • local_path_prefix değeri secrets:///secret/JindoOss/ ise düğümde /secret/JindoOss/AccessKeyId, /secret/JindoOss/AccessKeySecret ve /secret/JindoOss/SecurityToken gibi dosyalar aranır.