Autoriser l’accès aux ressources Event Hubs à l’aide de Microsoft Entra ID

Azure Event Hubs prend en charge l’utilisation de Microsoft Entra ID pour autoriser les requêtes de ressources Event Hubs. Microsoft Entra ID vous permet d’utiliser le contrôle d’accès en fonction du rôle (RBAC) Azure pour accorder des autorisations à un principal de sécurité, qui peut être un utilisateur ou un principal de service d’application. Pour en savoir plus sur les rôles et les attributions de rôles, consultez Comprendre les différents rôles.

Vue d’ensemble

Lorsqu’un principal de sécurité (un utilisateur ou une application) tente d’accéder à une ressource Event Hubs, la requête doit être autorisée. Avec Microsoft Entra ID, l’accès à une ressource est un processus en deux étapes.

  1. Pour commencer, l’identité du principal de sécurité est authentifiée, et un jeton OAuth 2.0 est renvoyé. Le nom de la ressource pour demander un jeton est https://eventhubs.azure.net/. Il est identique pour tous les clouds/locataires. Pour les clients Kafka, la ressource pour demander un jeton est https://<namespace>.servicebus.windows.net.
  2. Ensuite, ce jeton est transmis dans le cadre d’une requête adressée au service Event Hubs pour autoriser l’accès à la ressource spécifiée.

L’étape d’authentification nécessite qu’une requête d’application contienne un jeton d’accès OAuth 2.0 au moment de l’exécution. Si une application s’exécute dans une entité Azure telle qu’une machine virtuelle Azure, un groupe de machines virtuelles identiques ou une application de fonction Azure, elle peut utiliser une identité managée pour accéder aux ressources. Pour plus d’informations sur l’authentification des requêtes adressées par une identité managée au service Event Hubs, consultez l’article Authentifier l’accès aux ressources Azure Event Hubs avec Microsoft Entra ID et les identités managées pour les ressources Azure.

L’étape d’autorisation exige qu’un ou plusieurs rôles Azure soient attribués au principal de sécurité. Azure Event Hubs fournit des rôles Azure qui englobent des jeux d’autorisations pour les ressources Event Hubs. Les rôles qui sont attribués à un principal de sécurité déterminent les autorisations dont disposera le principal. Pour plus d’informations sur les rôles Azure, consultez Rôles intégrés Azure pour Azure Event Hubs.

Les applications natives et applications web qui adressent des requêtes à Event Hubs peuvent également autoriser l’accès avec Microsoft Entra ID. Pour savoir comment demander un jeton d’accès et l’utiliser pour autoriser les requêtes aux ressources Event Hubs, consultez Authentifier l’accès à Azure Event Hubs avec Microsoft Entra ID à partir d’une application.

Attribuer des rôles Azure pour les droits d’accès

Microsoft Entra autorise les droits d’accès aux ressources sécurisées via le contrôle d’accès en fonction du rôle Azure (Azure RBAC). Azure Event Hubs définit un ensemble de rôles intégrés Azure qui englobent les jeux d’autorisations communs utilisés pour accéder aux données Event Hubs, et vous pouvez également définir des rôles personnalisés pour accéder aux données.

Lorsqu’un rôle Azure est attribué à un principal de sécurité Microsoft Entra, Azure octroie l’accès à ces ressources pour ce principal de sécurité. L’accès peut être limité au niveau de l’abonnement, du groupe de ressources, de l’espace de noms Event Hubs ou de toute ressource sous-jacente. Un principal de sécurité Microsoft Entra peut être un utilisateur ou un principal de service d’application ou une identité managée pour les ressources Azure.

Rôles intégrés Azure pour Azure Event Hubs

Azure fournit les rôles intégrés Azure suivants pour autoriser l’accès aux données Event Hubs à l’aide de Microsoft Entra ID et d’OAuth :

Rôle Description
Propriétaire de données Azure Event Hubs Utilisez ce rôle pour accorder un accès complet aux ressources Event Hubs.
Expéditeur de données Azure Event Hubs Utilisez ce rôle pour accorder un accès en envoi aux ressources Event Hubs.
Récepteur de données Azure Event Hubs Utilisez ce rôle pour accorder un accès en réception/utilisation aux ressources Event Hubs.

Pour les rôles intégrés du registre de schémas, consultez Rôles du registre de schémas.

Étendue des ressources

Avant d’attribuer un rôle Azure à un principal de sécurité, déterminez l’étendue de l’accès dont doit disposer le principal de sécurité. Selon les bonnes pratiques, il est toujours préférable d’accorder la plus petite étendue possible.

La liste suivante décrit les niveaux auxquels vous pouvez étendre l’accès aux ressources Event Hubs, en commençant par la plus petite étendue :

  • Groupe de consommateurs : Dans cette étendue, l’attribution de rôle s’applique uniquement à cette entité. Actuellement, le portail Azure ne prend pas en charge l’attribution d’un rôle Azure à un principal de sécurité de ce niveau.
  • Event Hub : l’attribution de rôle s’applique aux hubs d’événements et à leurs groupes de consommateurs.
  • Espace de noms : L’attribution de rôle s’étend à toute la topologie d'Event Hubs sous l’espace de noms et au groupe de consommateurs qui lui est associé.
  • Groupe de ressources : L’attribution de rôle s’applique à toutes les ressources Event Hubs sous le groupe de ressources.
  • Abonnement: L’attribution de rôle s’applique à toutes les ressources Event Hubs dans tous les groupes de ressources de l’abonnement.

Remarque

  • Gardez à l’esprit que la propagation des attributions de rôles Azure peut prendre cinq minutes.
  • Ce contenu s’applique à la fois à Event Hubs et à Event Hubs pour Apache Kafka. Pour plus d’informations sur la prise en charge d’Event Hubs pour Kafka, consultez Event Hubs pour Kafka - Sécurité et authentification.

Pour plus d’informations sur la définition des rôles intégrés, consultez Comprendre les définitions de rôles. Pour plus d’informations sur la création de rôles personnalisés Azure, consultez Rôles personnalisés Azure.

Exemples

Étapes suivantes

Consultez les articles associés suivants :