Mécanisme d’authentification
Important
Azure HDInsight sur AKS a été mis hors service le 31 janvier 2025. En savoir plus avec cette annonce.
Vous devez migrer vos charges de travail vers Microsoft Fabric ou un produit Azure équivalent pour éviter l’arrêt brusque de vos charges de travail.
Important
Cette fonctionnalité est actuellement en préversion. Les Conditions d’utilisation supplémentaires pour les préversions Microsoft Azure incluent des termes juridiques supplémentaires qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou qui ne sont pas encore publiées en disponibilité générale. Pour plus d’informations sur cette préversion spécifique, consultez informations sur Azure HDInsight sur AKS en préversion. Pour des questions ou des suggestions de fonctionnalités, envoyez une demande sur AskHDInsight avec les détails et suivez-nous pour plus de mises à jour sur Communauté Azure HDInsight.
Trino avec HDInsight sur AKS fournit des outils tels que le client CLI, le pilote JDBC, etc., pour accéder au cluster, qui est intégré à l’ID Microsoft Entra pour simplifier l’authentification pour les utilisateurs. Les outils ou clients pris en charge doivent s’authentifier à l’aide des normes OAuth2 d’ID Microsoft Entra, ce qui signifie qu’un jeton d’accès JWT émis par l’ID Microsoft Entra doit être fourni à point de terminaison du cluster.
Cette section décrit les flux d’authentification courants pris en charge par les outils.
Vue d’ensemble des flux d’authentification
Les flux d’authentification suivants sont pris en charge.
Note
Le nom est réservé et doit être utilisé pour spécifier certains flux.
Nom | Paramètres obligatoires | Paramètres facultatifs | Description |
---|---|---|---|
AzureDefault | Aucun | ID de locataire, ID client | Destiné à être utilisé pendant le développement dans un environnement interactif. Dans la plupart des cas, l’utilisateur se connecte à l’aide du navigateur. Consultez les détails . |
AzureInteractive | Aucun | ID de locataire, ID client | L’utilisateur s’authentifie à l’aide du navigateur. Consultez les détails . |
AzureDeviceCode | Aucun | ID de locataire, ID client | Destiné aux environnements où le navigateur n’est pas disponible. Le code de l’appareil fourni à l’utilisateur nécessite une action pour se connecter à un autre appareil à l’aide du code et du navigateur. |
AzureClientSecret | ID de locataire, ID client, clé secrète client | Aucun | L’identité du principal de service est utilisée, les informations d’identification requises, non interactives. |
AzureClientCertificate | ID de locataire, ID client, chemin d’accès au fichier de certificat | Secret/mot de passe. S’il est fourni, utilisé pour déchiffrer le certificat PFX. Sinon, attend le format PEM. | Identité de principal de service utilisée; certificat requis, non interactif. Consultez détails. |
AzureManagedIdentity | ID de locataire, ID client | Aucun | Utilise l’identité managée de l’environnement, par exemple sur des machines virtuelles Azure ou des pods AKS. |
Flux AzureDefault
Ce flux est le mode par défaut pour l’interface CLI Trino et JDBC si auth
paramètre n’est pas spécifié. Dans ce mode, l’outil client tente d’obtenir le jeton à l’aide de plusieurs méthodes jusqu’à ce que le jeton soit acquis.
Dans l’exécution chaînée suivante, si le jeton n’est pas trouvé ou si l’authentification échoue, le processus continue avec la méthode suivante :
DefaultAzureCredential -> AzureInteractive -> AzureDeviceCode (si aucun navigateur disponible)
Flux AzureInteractive
Ce mode est utilisé lorsque auth=AzureInteractive
est fourni ou pour l'exécution chaînée de AzureDefault
.
Note
Si le navigateur est disponible, il affiche l’invite d’authentification et attend l’action de l’utilisateur. Si le navigateur n’est pas disponible, il retombe sur le flux AzureDeviceCode
.
Flux de certificat client Azure
Permet d’utiliser des fichiers PEM/PFX(PKCS #12) pour l’authentification du principal de service. Si le secret/mot de passe est fourni, attend le fichier au format PFX(PKCS #12) et utilise le secret pour déchiffrer le fichier. Si le secret n’est pas fourni, attend que le fichier au format PEM inclue des clés privées et publiques.
Variables d’environnement
Tous les paramètres requis peuvent être fournis à CLI/JDBC directement dans des arguments ou une chaîne de connexion. Certains des paramètres facultatifs, s’ils ne sont pas fournis, sont recherchés dans les variables d’environnement.
Note
Veillez à vérifier les variables d’environnement si vous rencontrez des problèmes d’authentification. Ils peuvent affecter le flux.
Le tableau suivant décrit les paramètres qui peuvent être configurés dans les variables d’environnement pour les différents flux d’authentification.
Ils ne seront utilisés que si le paramètre correspondant n’est pas fourni dans la ligne de commande ou la chaîne de connexion.
Nom de la variable | Flux d’authentification applicables | Description |
---|---|---|
AZURE_TENANT_ID | Tout | ID de client Microsoft Entra. |
AZURE_CLIENT_ID | AzureClientSecret, AzureClientCertificate, AzureManagedIdentity | ID client d’application/principal. |
AZURE_CLIENT_SECRET | AzureClientSecret, AzureClientCertificate | Secret ou mot de passe pour le service principal ou le fichier de certificat. |
AZURE_CLIENT_CERTIFICATE_PATH | AzureClientCertificate | Chemin d’accès au fichier de certificat. |