文档首页> 数据湖探索 DLI> 常见问题> Spark作业相关问题> 作业开发> 通用队列操作OBS表如何设置AK/SK
更新时间:2024-01-23 GMT+08:00

通用队列操作OBS表如何设置AK/SK

建议使用临时AK/SK,获取方式可参见统一身份认证服务_获取临时AK/SK

认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。

  • 获取结果为AK和SK时,设置如下:
    • 代码创建SparkContext
      val sc: SparkContext = new SparkContext()
      sc.hadoopConfiguration.set("fs.obs.access.key", ak)
      sc.hadoopConfiguration.set("fs.obs.secret.key", sk)
    • 代码创建SparkSession
      val sparkSession: SparkSession = SparkSession
            .builder()
            .config("spark.hadoop.fs.obs.access.key", ak)
            .config("spark.hadoop.fs.obs.secret.key", sk)
            .enableHiveSupport()
            .getOrCreate()
  • 获取结果为ak、sk和securitytoken时,鉴权时,临时AK/SK和securitytoken必须同时使用,设置如下:
    • 代码创建SparkContext
      val sc: SparkContext = new SparkContext()
      sc.hadoopConfiguration.set("fs.obs.access.key", ak)
      sc.hadoopConfiguration.set("fs.obs.secret.key", sk)
      sc.hadoopConfiguration.set("fs.obs.session.token", sts)
    • 代码创建SparkSession
      val sparkSession: SparkSession = SparkSession
            .builder()
            .config("spark.hadoop.fs.obs.access.key", ak)
            .config("spark.hadoop.fs.obs.secret.key", sk)
            .config("spark.hadoop.fs.obs.session.token", sts)
            .enableHiveSupport()
            .getOrCreate()

作业开发 所有常见问题

more