DataWorks的數據同步功能支持第三方身份認證機制,您需要提前在DataWorks的認證文件管理頁面上傳認證文件,并在配置數據源同時開啟第三方認證功能,使得只有可信的應用和服務才能訪問數據資源。本文為您介紹如何上傳和引用認證文件。
背景信息
第三方認證機制用于用戶和服務的強身份驗證,通過該機制,可以有效地避免不受信任的程序或服務來獲取數據訪問權限,提高數據同步過程中訪問數據資源的安全性。DataWorks的認證文件管理功能,可以為您提供統一入口來管理認證文件,您可以通過認證文件管理頁面上傳和查看認證文件引用關系等。
使用限制
目前僅支持Kerberos認證機制(后續會逐步支持其他認證機制,敬請期待),詳情請參見附錄:配置Kerberos認證。
注意事項
一般情況下證書有自己的有效期,請留意您上傳的證書有效期,如果證書過期將會導致對應的數據同步任務因無法獲得授權而失敗,請及時更換為最新有效期的證書。
上傳認證文件
使用認證功能前,需要提前準備好認證文件并上傳至認證文件管理頁面。
進入數據集成頁面。
登錄DataWorks控制臺,切換至目標地域后,單擊左側導航欄的 ,在下拉框中選擇對應工作空間后單擊進入數據集成。
在左側導航欄,單擊 。
單擊認證文件管理頁面右上方的上傳認證文件。
在上傳認證文件對話框,單擊上傳文件選擇對應文件并填寫相應文件描述,單擊確定。
引用認證文件
如果需要使用第三方身份認證功能,請在配置數據源頁面選擇開啟特殊身份認證方式,配置相關參數并引用相關認證文件。目前DataWorks僅支持Kerberos認證,具體介紹請參見附錄:配置Kerberos認證。
以下以HDFS數據源配置Kerberos認證為例,列舉Kerberos認證的關鍵配置,關于數據源詳細配置,請參見配置數據源。
配置項 | 說明 |
特殊認證方式 | 選擇特殊認證方式為Kerberos認證。 |
keytab文件 | 在下拉列表選擇已上傳的keytab文件。如果需要重新上傳認證文件,請單擊新增認證文件。 |
conf文件 | 在下拉列表選擇已上傳的conf文件。如果需要重新上傳認證文件,請單擊新增認證文件。 |
principal | Kerberos認證的主體,包括主名稱、實例和領域三部分,格式為:主名稱/實例名@領域名。例如****/hadoopclient@**.*** 。 |
其他操作
您還可以在認證文件管理頁面進行認證文件的批量刪除、重新上傳和查看引用等操作。
附錄:配置Kerberos認證
DataWorks的數據同步功能目前僅支持Kerberos認證,配置kerberos認證后,可以僅對受信任的應用和服務提供認證,使得只有經過認證的應用和服務才能訪問數據資源。
Kerberos協議主要用于計算機網絡的身份鑒別(Authentication),其特點是用戶只需輸入一次身份驗證信息就可以憑借此驗證獲得的票據(Ticket-Granting Ticket,網絡授權憑證)訪問多個服務,即SSO(Single Sign On,單點登錄)。使用Kerberos協議時,會在每個Client和Service之間建立共享密鑰,服務之間使用密鑰進行通信,避免不受信任的服務或應用訪問數據資源,因此該協議具有較高的安全性。
使用限制
Kerberos認證功能僅支持CDH集群6.X版本,其他版本或者自建集群未經過Kerberos認證測試,可能會導致認證失敗。
Kerberos認證功能僅支持HBase、HDFS和Hive數據源(后續會逐步支持其他數據源類型,敬請期待)。
Kerberos認證功能僅支持在獨享數據集成資源組上使用。
Kerberos認證原理
Kerberos是一種基于對稱密鑰的第三方認證協議,客戶端和服務器均是依賴KDC(Kerberos的服務端程序,即密鑰分發中心)來進行身份認證。有關Kerberos的詳細介紹請參見概述。
如上圖所示,在DataWorks上進行Kerberos認證分為如下四個階段:
客戶端請求TGT:當客戶端用戶(Principal)訪問已開啟Kerberos認證的數據源時,會先向KDC請求頒發一個認證憑證TGT,作為客戶端向KDC請求特定服務的身份證明。
KDC發放TGT:KDC收到請求后,先對客戶端進行身份認證,認證通過后,KDC會以加密形式為客戶端發放一個有使用期限的認證憑證TGT。
客戶端請求訪問服務器:客戶端獲取TGT后,會根據需要訪問的服務名稱向服務器請求訪問特定服務資源。
服務器認證客戶端:服務器收到請求后,先對客戶端進行身份認證,認證通過后,才會允許客戶端正常訪問服務資源。
Kerberos認證過程中需要使用keytab認證文件和krb5.conf配置文件完成認證行為,其中krb5.conf文件主要用于存儲KDC服務器的相關配置,keytab文件用于存儲資源主體的身份驗證憑據,包含principals和加密principal key。使用Kerberos認證前,需要先將這兩個文件上傳到認證文件管理頁面,并在數據源配置頁面完成認證文件引用和配置,即可使用Kerberos認證。上傳認證文件請參見上傳認證文件。
支持Kerberos認證的數據源
Kerberos支持的數據源類型及配置指引如下所示:
數據源類型 | 配置指引 |
HBase | |
HDFS | |
Hive |