Smartdata 3.4.0及后续版本支持JindoFS OSS Credential Provider,您可以通过配置JindoFS OSS Credential Provider,将加密后的AccessKey信息添加至文件中,以避免泄露AccessKey信息。

配置JindoFS OSS Credential Provider

  1. 进入SmartData服务。
    1. 登录阿里云E-MapReduce控制台
    2. 在顶部菜单栏处,根据实际情况选择地域和资源组
    3. 单击上方的集群管理页签。
    4. 集群管理页面,单击相应集群所在行的详情
    5. 在左侧导航栏,单击集群服务 > SmartData
  2. 进入smartdata-site页面。
    1. 单击配置页签。
    2. 服务配置区域,单击smartdata-site页签。
  3. 添加配置信息。
    1. smartdata-site页签,单击右上角的自定义配置
    2. 新增配置项对话框中,新增配置。
      • 全局方式配置(所有Bucket使用同一种方式)
        参数 描述
        fs.jfs.cache.oss.credentials.provider 配置com.aliyun.emr.fs.auth.AliyunCredentialsProvider的实现类,多个类时使用英文逗号(, )隔开,按照先后顺序读取Credential直至读到有效的Credential。例如,com.aliyun.emr.fs.auth.TemporaryAliyunCredentialsProvider, com.aliyun.emr.fs.auth.SimpleAliyunCredentialsProvider,com. aliyun.emr.fs.auth.EnvironmentVariableCredentialsProvider

        Provider详情请参见Provider类型

      • 按照Bucket配置
        参数 描述
        fs.jfs.cache.oss.bucket.XXX.credentials.provider 配置com.aliyun.emr.fs.auth.AliyunCredentialsProvider的实现类,多个类时使用英文逗号(, )隔开,按照先后顺序读取Credential直至读到有效的Credential。例如,com.aliyun.emr.fs.auth.TemporaryAliyunCredentialsProvider, com.aliyun.emr.fs.auth.SimpleAliyunCredentialsProvider,com. aliyun.emr.fs.auth.EnvironmentVariableCredentialsProvider
        Provider详情请参见 Provider类型
        说明 XXX为OSS的Bucket名称。
    3. 单击确定
  4. 保存配置。
    1. 单击右上角的保存
    2. 确认修改对话框中,输入执行原因,开启自动更新配置
    3. 单击确定

Provider类型

您可以根据情况,选择不同的Provider。Provider类型如下:
  • 全局方式配置
    • TemporaryAliyunCredentialsProvider
      适合使用有时效性的AccessKey和SecurityToken访问OSS的情况。
      参数 参数说明
      fs.jfs.cache.oss.credentials.provider com.aliyun.emr.fs.auth.TemporaryAliyunCredentialsProvider
      fs.jfs.cache.oss.accessKeyId OSS Bucket的AccessKey ID。
      fs.jfs.cache.oss.accessKeySecret OSS Bucket的AccessKey Secret。
      fs.jfs.cache.oss.securityToken OSS Bucket的SecurityToken(临时安全令牌)。
    • SimpleAliyunCredentialsProvider
      适合使用长期有效的AccessKey访问OSS的情况。
      参数 参数说明
      fs.jfs.cache.oss.credentials.provider com.aliyun.emr.fs.auth.SimpleAliyunCredentialsProvider
      fs.jfs.cache.oss.accessKeyId OSS Bucket的AccessKey ID。
      fs.jfs.cache.oss.accessKeySecret OSS Bucket的AccessKey Secret。
    • EnvironmentVariableCredentialsProvider
      该方式需要在环境变量中配置以下参数。
      参数 参数说明
      fs.jfs.cache.oss.credentials.provider com.aliyun.emr.fs.auth.EnvironmentVariableCredentialsProvider
      ALIYUN_ACCESS_KEY_ID OSS Bucket的AccessKey ID。
      ALIYUN_ACCESS_KEY_SECRET OSS Bucket的AccessKey Secret。
      ALIYUN_SECURITY_TOKEN OSS Bucket的SecurityToken(临时安全令牌)。
      说明 仅配置有时效Token时需要。
    • JindoCommonCredentialsProvider
      该方式为通用配置,配置后JindoOSS和JindoFS均可以使用。
      参数 参数说明
      fs.jfs.cache.oss.credentials.provider com.aliyun.emr.fs.auth.JindoCommonCredentialsProvider
      jindo.common.accessKeyId OSS Bucket的AccessKey ID。
      jindo.common.accessKeySecret OSS Bucket的AccessKey Secret。
      jindo.common.securityToken OSS Bucket的SecurityToken(临时安全令牌)。
    • EcsStsCredentialsProvider
      该方式无需配置AccessKey,可以免密方式访问OSS。
      参数 参数说明
      fs.jfs.cache.oss.credentials.provider com.aliyun.emr.fs.auth.EcsStsCredentialsProvider
  • 按照Bucket配置
    • TemporaryAliyunCredentialsProvider
      适合使用有时效性的AccessKey和SecurityToken访问OSS的情况。
      参数 参数说明
      fs.jfs.cache.oss.bucket.XXX.credentials.provider com.aliyun.emr.fs.auth.TemporaryAliyunCredentialsProvider
      fs.jfs.cache.oss.bucket.XXX.accessKeyId OSS Bucket的AccessKey ID。
      fs.jfs.cache.oss.bucket.XXX.accessKeySecret OSS Bucket的AccessKey Secret。
      fs.jfs.cache.oss.bucket.XXX.securityToken OSS Bucket的SecurityToken(临时安全令牌)。
    • SimpleAliyunCredentialsProvider
      适合使用长期有效的AccessKey访问OSS的情况。
      参数 参数说明
      fs.jfs.cache.oss.bucket.XXX.credentials.provider com.aliyun.emr.fs.auth.SimpleAliyunCredentialsProvider
      fs.jfs.cache.oss.bucket.XXX.accessKeyId OSS Bucket的AccessKey ID。
      fs.jfs.cache.oss.bucket.XXX.accessKeySecret OSS Bucket的AccessKey Secret。
    • EnvironmentVariableCredentialsProvider
      该方式需要在环境变量中配置以下参数。
      参数 参数说明
      fs.jfs.cache.oss.bucket.XXX.credentials.provider com.aliyun.emr.fs.auth.EnvironmentVariableCredentialsProvider
      ALIYUN_ACCESS_KEY_ID OSS Bucket的AccessKey ID。
      ALIYUN_ACCESS_KEY_SECRET OSS Bucket的AccessKey Secret。
      ALIYUN_SECURITY_TOKEN OSS Bucket的SecurityToken(临时安全令牌)。
      说明 仅配置有时效Token时需要。
    • JindoCommonCredentialsProvider
      该方式为通用配置,配置后可以被JindoOSS和JindoFS使用。
      参数 参数说明
      fs.jfs.cache.oss.bucket.XXX.credentials.provider com.aliyun.emr.fs.auth.JindoCommonCredentialsProvider
      jindo.common.accessKeyId OSS Bucket的AccessKey ID。
      jindo.common.accessKeySecret OSS Bucket的AccessKey Secret。
      jindo.common.securityToken OSS Bucket的SecurityToken(临时安全令牌)。
    • EcsStsCredentialsProvider
      该方式无需配置AccessKey,可以免密方式访问OSS。
      参数 参数说明
      fs.jfs.cache.oss.bucket.XXX.credentials.provider com.aliyun.emr.fs.auth.EcsStsCredentialsProvider