全部產品
Search
文件中心

E-MapReduce:為Kyuubi Gateway配置並啟用LDAP認證

更新時間:Jul 05, 2025

通過啟用LDAP認證,可以增強Kyuubi的安全性,確保只有提供正確的使用者名稱和密碼後,用戶端才能成功串連到Kyuubi Server啟動Spark Session並執行SQL查詢,有效防止未授權訪問敏感性資料和功能的風險。

前提條件

  • 已建立Kyuubi Gateway和Token,具體請參見Gateway管理

    推薦使用下述引擎版本:

    • esr-4.x:esr-4.3.0及之後版本。

    • esr-3.x:esr-3.3.0及之後版本。

    • esr-2.x:esr-2.7.0及之後版本。

  • 可選:如果您需要使用阿里雲EMR on ECS叢集的OpenLDAP服務,則需建立選擇了OpenLDAP服務的叢集並添加了使用者,詳情請參見建立叢集OpenLDAP使用者管理

操作流程

步驟一:網路準備

在開始配置之前,必須先設定好網路,確保Serverless Spark可以與您的虛擬私人雲端(VPC)之間網路互連,使得Kyuubi Gateway能夠順利串連到LDAP服務進行認證。具體操作,請參見EMR Serverless Spark與其他VPC間網路互連

步驟二:配置Kyuubi Gateway

對於希望開啟LDAP認證功能的Kyuubi Gateway,需先停止該會話。然後編輯Kyuubi Gateway,在網路連接下拉式清單中選擇已建立的串連名稱,在Kyuubi配置中添加以下配置項。編輯完成後,請務必重新啟動Kyuubi Gateway,以確保所做更改生效。

kyuubi.authentication                       LDAP
kyuubi.authentication.ldap.baseDN           <ldap_base_dn>
kyuubi.authentication.ldap.userDNPattern    <ldap_user_pattern>
kyuubi.authentication.ldap.binddn           <ldap_bind_dn>
kyuubi.authentication.ldap.bindpw           <ldap_bind_pwd>
kyuubi.authentication.ldap.url              ldap://<ldap_url>:<ldap_port>/

參數說明如下,請根據您的實際情況替換。

說明

如果您串連的是阿里雲EMR on ECS叢集的OpenLDAP服務,則可以參考樣本內容填寫。

參數

說明

樣本

kyuubi.authentication

固定為LDAP,表示啟用LDAP認證。

LDAP

kyuubi.authentication.ldap.baseDN

LDAP服務認證的基礎DN。

o=emr

kyuubi.authentication.ldap.userDNPattern

登入使用者到LDAP DN的轉換模式。

uid=%s,ou=people,o=emr

使用者test登入時,會將其轉換為DN = uid=test,ou=people,o=emr到LDAP服務中進行查詢驗證。

kyuubi.authentication.ldap.binddn

串連LDAP服務綁定的DN。

uid=admin,o=emr

kyuubi.authentication.ldap.bindpw

串連LDAP服務綁定的DN的密碼。

在OpenLDAP服務的配置中尋找admin_pwd的參數值。

kyuubi.authentication.ldap.url

LDAP服務的串連地址,填寫格式為ldap://<ldap_url>:<ldap_port>。

<ldap_url>填寫為Master節點的內網IP地址或網域名稱,<ldap_port>預設為10389,例如 ldap://master-1-1.c-xxxxxxxxxx.cn-hangzhou.emr.aliyuncs.com:10389。

說明

如果LDAP是高可用服務,則多個LDAP串連地址之間需要用空格進行分隔,例如ldap://<ldap_url_1>:<ldap_port> ldap://<ldap_url_2>:<ldap_port>

步驟三:串連開啟LDAP認證的Kyuubi Gateway

為您提供了兩種常用的串連方法。串連Kyuubi Gateway前,請根據您的實際情況替換以下資訊:

  • <endpoint>:您在總覽頁簽擷取的Endpoint(外網)Endpoint(內網)資訊。

    如果使用內網Endpoint,訪問Kyuubi Gateway僅限於同一VPC內的資源。

  • <token>Token管理頁簽的Token資訊。

  • <port>:連接埠號碼。使用外網網域名稱訪問時連接埠號碼為443,使用內網網域名稱訪問時連接埠號碼為80。

  • <username><password>:用於登入LDAP服務的帳號名稱與密碼。如果您串連的是阿里雲EMR on ECS叢集的OpenLDAP服務,則為您在EMR on ECS的使用者管理頁面添加的使用者名稱和密碼。

方式一:使用kyuubi-beeline命令列工具

  • 直接指定使用者名稱和密碼:如果您不介意在命令列中顯示密碼,則可以直接通過命令列參數提供使用者憑證。

    kyuubi-beeline -u 'jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>' -n <username> -p <password>
  • 互動式輸入密碼:為了安全起見,您可以省略-p後面的密碼,在執行命令後根據提示手動輸入密碼而不顯示字元。

    kyuubi-beeline -u 'jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>' -n <username> -p

方式二:使用JDBC URL

如果您希望通過其他應用程式(如Java程式)或構建完整的JDBC連結字串時,應採用以下格式。

jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>;user=<username>;password=<password>