DataWorks の Data Integration サービスは、Kerberos 認証のみをサポートしています。Kerberos 認証を設定すると、信頼できるアプリケーションとサービスでのみ認証が実行されます。このようにして、認証に合格したアプリケーションとサービスのみがデータにアクセスできます。このトピックでは、Kerberos 認証のしくみについて説明します。
背景情報
Kerberos は、認証用のコンピューターネットワークセキュリティプロトコルです。ユーザーは、ID 認証情報を 1 回だけ提供することで、複数のサービスにアクセスするために使用できるサービスチケットを取得し、シングルサインオン(SSO)を実現できます。Kerberos は高度なセキュリティを提供します。Kerberos を使用すると、各クライアントとサービスの間に共有キーが作成されます。クライアントは、キーを使用してサービスと通信します。このようにして、信頼されていないサービスやアプリケーションはデータにアクセスできません。
制限事項
CDH V6.X クラスターのみが Kerberos 認証をサポートしています。他のバージョンの CDH クラスター、または Kerberos 認証テストが実行されていない自己管理型クラスターは、認証に失敗する可能性があります。
Alibaba Cloud HBase および Hive データソースのみが Kerberos 認証をサポートしています。自己管理型データソースは、Kerberos 認証をサポートしていません。
Data Integration 専用のリソースグループに接続されているデータソースのみが Kerberos 認証をサポートしています。
Kerberos 認証のしくみ
Kerberos は、対称鍵に基づくサードパーティ認証プロトコルです。クライアントとサービスは、Key Distribution Center(KDC)を使用して ID 認証を実行します。KDC は Kerberos のサーバープログラムであり、Ticket Granting Ticket(TGT)を配布できます。Kerberos の詳細については、Kerberos の概要をご参照ください。
前の図は、DataWorks での Kerberos 認証中に含まれる 4 つの段階を示しています。
クライアントが TGT を要求する: クライアント(プリンシパル)が Kerberos 認証が有効になっているデータソースにアクセスすると、クライアントは KDC の Authentication Server(AS)から TGT を要求します。次に、クライアントは取得した TGT を使用して、KDC の Ticket Granting Server(TGS)から特定のサービスの別の TGT を要求します。
KDC が TGT を割り当てる: KDC はクライアントから要求を受信すると、クライアントの ID を認証します。クライアントが認証に合格すると、KDC は特定の有効期間を持つ暗号化された TGT をクライアントに割り当てます。
クライアントが特定のサービスへのアクセスを要求する: クライアントが TGT を取得すると、クライアントはサービス名に基づいてサービスサーバーから特定のサービスリソースへのアクセスを要求します。
サービスサーバーがクライアントの ID を認証する: サービスサーバーはクライアントから要求を受信すると、クライアントの ID を認証します。クライアントが認証に合格すると、クライアントはサービスリソースにアクセスできます。
Kerberos 認証には、keytab 認証ファイルと krb5.conf 構成ファイルが必要です。krb5.conf 構成ファイルは、KDC サーバーの構成を保存するために使用されます。keytab ファイルは、プリンシパルと暗号化されたプリンシパルキーを含む、リソースプリンシパルの ID 認証チケットを保存するために使用されます。Kerberos 認証を実行する前に、DataWorks コンソールの認証ファイル管理ページで keytab 認証ファイルと keb5.conf 構成ファイルをアップロードし、アップロードされたファイルを参照し、データソースを追加するときにプリンシパルを設定する必要があります。 keytab 認証ファイルのアップロード方法と、さまざまな種類のデータソースの Kerberos 認証のパラメーターの詳細については、サードパーティ認証ファイルの管理とKerberos 認証をサポートするデータソースをご参照ください。
Kerberos 認証をサポートするデータソース
次の表に、Kerberos 認証をサポートするデータソースの種類と、これらの種類のデータソースの Kerberos 認証の構成ガイドを示します。
データソースの種類 | 参照 |
HBase | |
Hive |