次の方法で共有


認証メカニズム

大事な

AKS 上の Azure HDInsight は、2025 年 1 月 31 日に廃止されました。 の発表でについて詳しく学びましょう。

ワークロードの突然の終了を回避するには、ワークロードを Microsoft Fabric または同等の Azure 製品 に移行する必要があります。

大事な

この機能は現在プレビュー段階です。 Microsoft Azure プレビューの 追加使用条件 には、ベータ版、プレビュー版、または一般公開されていない Azure 機能に適用される、より多くの法的条件が含まれています。 この特定のプレビューの詳細については、AKS プレビュー情報 Azure HDInsightを参照してください。 ご質問や機能の提案については、詳細を記載して AskHDInsight にリクエストを送信してください。また、Azure HDInsight Community をフォローして、最新の情報を入手してください。

AKS 上の HDInsight を使用した Trino には、クラスターにアクセスするための CLI クライアント、JDBC ドライバーなどのツールが用意されています。これは、ユーザーの認証を簡略化するために Microsoft Entra ID と統合されています。 サポートされているツールまたはクライアントは、Microsoft Entra ID OAuth2 標準を使用して認証する必要があります。つまり、Microsoft Entra ID によって発行された JWT アクセス トークンをクラスター エンドポイントに提供する必要があります。

このセクションでは、ツールでサポートされる一般的な認証フローについて説明します。

認証フローの概要

次の認証フローがサポートされています。

手記

名前は予約されており、特定のフローを指定するために使用する必要があります。

名前 必須パラメーター 省略可能なパラメーター 説明
AzureDefault 何一つ テナント ID、クライアント ID 対話型環境での開発中に使用されることを意味します。 ほとんどの場合、ユーザーはブラウザーを使用してサインインします。 の詳細を参照してください。
AzureInteractive 何一つ テナント ID、クライアント ID ユーザーはブラウザーを使用して認証します。 の詳細を参照してください。
AzureDeviceCode 何一つ テナント ID、クライアント ID ブラウザーが使用できない環境を対象としています。 ユーザーに提供されるデバイス コードでは、コードとブラウザーを使用して別のデバイスにサインインするためのアクションが必要です。
AzureClientSecret テナント ID、クライアント ID、クライアント シークレット 何一つ サービス プリンシパル ID が使用されます。資格情報は必須で、非対話型です。
AzureClientCertificate テナント ID、クライアント ID、証明書ファイル パス シークレット/パスワード。 指定した場合は、PFX 証明書の暗号化を解除するために使用されます。 それ以外の場合は、PEM 形式が必要です。 サービス プリンシパル ID が使用されます。証明書は必須であり、非対話型です。 詳細 を参照してください。
AzureManagedIdentity テナント ID、クライアント ID 何一つ Azure VM や AKS ポッドなど、環境のマネージド ID を使用します。

AzureDefault のフロー

auth パラメーターが指定されていない場合、このフローは Trino CLI と JDBC の既定のモードです。 このモードでは、クライアント ツールは、トークンが取得されるまで、いくつかのメソッドを使用してトークンの取得を試みます。 次のチェーン実行では、トークンが見つからないか認証が失敗した場合、プロセスは次の方法で続行されます。

DefaultAzureCredential ->AzureInteractive - ブラウザーがない場合は AzureDeviceCode を使用する>

AzureInteractive フロー

このモードは、auth=AzureInteractive が提供されている場合や AzureDefault のチェーン実行の一部として使用されます。

手記

ブラウザーが使用可能な場合は、認証プロンプトが表示され、ユーザーアクションが待機されます。 ブラウザーを使用できない場合は、AzureDeviceCode フローにフォールバックします。

AzureClientCertificate フロー

サービス プリンシパル認証に PEM/PFX(PKCS #12) ファイルを使用できるようにします。 シークレット/パスワードが指定されている場合は、PFX(PKCS #12) 形式のファイルを想定し、シークレットを使用してファイルの暗号化を解除します。 シークレットが指定されていない場合は、PEM 形式のファイルに秘密キーと公開キーが含まれると想定されます。

環境変数

必要なすべてのパラメーターは、引数または接続文字列で CLI/JDBC に直接指定できます。 省略可能なパラメーターの一部 (指定されていない場合) は、環境変数で検索されます。

手記

認証の問題が発生した場合は、必ず環境変数を確認してください。 フローに影響を与える可能性があります。

次の表では、さまざまな認証フローの環境変数で構成できるパラメーターについて説明します。
対応するパラメーターがコマンド ラインまたは接続文字列で指定されていない場合にのみ使用されます。

変数名 適用可能な認証フロー 説明
AZURE_TENANT_ID 全て Microsoft Entra テナント ID。
AZURE_CLIENT_ID AzureClientSecret、AzureClientCertificate、AzureManagedIdentity アプリケーション/プリンシパル クライアント ID。
AZURE_CLIENT_SECRET AzureClientSecret、AzureClientCertificate サービス プリンシパルまたは証明書ファイルのシークレットまたはパスワード。
AZURE_CLIENT_CERTIFICATE_PATH AzureClientCertificate 証明書ファイルへのパス。