Partage via


Identités managées pour Azure SignalR Service

Dans Azure SignalR Service, vous pouvez utiliser une identité managée à partir de Microsoft Entra ID pour :

  • Obtenir des jetons d’accès.
  • Accéder aux secrets dans Azure Key Vault.

Le service ne prend en charge qu’une seule identité managée. Vous pouvez créer une identité affectée par le système ou une identité affectée par l’utilisateur. Une identité affectée par le système est dédiée à votre instance Azure SignalR Service et est supprimée lorsque vous supprimez l’instance. Une identité affectée par l’utilisateur est gérée indépendamment de votre ressource Azure SignalR Service.

Cet article explique comment créer une identité managée pour le service Azure SignalR Service et comment l’utiliser dans les scénarios serverless.

Prérequis

Pour utiliser une identité managée, vous devez disposer des éléments suivants :

  • Un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
  • Une ressource Azure SignalR Service.
  • Les ressources en amont auxquelles vous souhaitez accéder, comme une ressource Azure Key Vault.
  • Une application Azure Functions (application de fonction).

Ajouter une identité managée à Azure SignalR Service

Vous pouvez ajouter une identité managée à Azure SignalR Service dans le Portail Azure ou Azure CLI. Cet article vous montre comment ajouter une identité managée à Azure SignalR Service dans le Portail Azure.

Ajouter une identité affectée par le système

Pour ajouter une identité managée affectée par le système à votre instance Azure SignalR Service :

  1. Dans le Portail Azure, naviguez vers votre instance Azure SignalR Service.

  2. Sélectionnez Identité.

  3. Dans l’onglet Attribuée par le système, définissez État sur Activé.

    Capture d’écran montrant les sélections permettant d’ajouter une identité managée affectée par le système dans le Portail.

  4. Cliquez sur Enregistrer.

  5. Sélectionnez Oui pour confirmer la modification.

Ajouter une identité attribuée par l’utilisateur

Pour ajouter une identité affectée par l’utilisateur à votre instance Azure SignalR Service, vous devez créer l’identité, puis l’ajouter à votre service.

  1. Créez une ressource d’identité managée attribuée par l’utilisateur en suivant ces instructions.

  2. Dans le Portail Azure, naviguez vers votre instance Azure SignalR Service.

  3. Sélectionnez Identité.

  4. Dans l’onglet Attribuée par l’utilisateur, sélectionnez Ajouter.

  5. Dans le menu déroulant Identités managées affectées par l’utilisateur, sélectionnez l’identité.

    Capture d’écran montrant les sélections permettant d’ajouter une identité affectée par l’utilisateur dans le Portail.

  6. Sélectionnez Ajouter.

Utilisation d’une identité managée dans les scénarios serverless

Azure SignalR Service est un service complètement managé. Il utilise une identité managée pour obtenir un jeton d’accès. Dans les scénarios serverless, le service ajoute le jeton d’accès à l’en-tête Authorization dans une requête en amont.

Activer l’authentification de l’identité managée dans les paramètres en amont

Une fois que vous avez ajouté une identité affectée par le système ou une identité affectée par l’utilisateur à votre instance Azure SignalR Service, vous pouvez activer l’authentification d’identité managée dans les paramètres de points de terminaison en amont :

  1. Dans le Portail Azure, naviguez vers votre instance Azure SignalR Service.

  2. Sélectionnez Paramètres dans le menu.

  3. Sélectionnez le mode de service serverless.

  4. Dans la zone d’édition Ajouter un modèle d’URL en amont, entrez le modèle d’URL de point de terminaison en amont. Consultez Paramètres de modèle d’URL.

  5. Sélectionnez Ajouter un paramètre en amont, puis sélectionnez un astérisque quelconque.

    Capture d’écran montrant les paramètres d’Azure SignalR Service pour ajouter un modèle d’URL en amont.

  6. Dans les Paramètres en amont, configurez vos paramètres de point de terminaison en amont.

    Capture d’écran des paramètres en amont d’Azure SignalR Service.

  7. Dans les paramètres d’authentification de l’identité managée, pour Audience dans le jeton émis, vous pouvez préciser la ressource cible. La ressource devient une revendication aud dans le jeton d’accès obtenu. Celle-ci peut être utilisée dans le cadre de la validation dans vos points de terminaison en amont. La ressource peut avoir l’un des formats suivants :

    • ID d’application (client) du principal de service.
    • URI de l’ID d’application du principal de service.

    Important

    L’utilisation d’une ressource vide acquiert un jeton ciblant Microsoft Graph. À l’heure actuelle, Microsoft Graph permet de chiffrer les jetons. Une application doit donc utiliser Microsoft Graph pour authentifier le jeton. Dans la pratique, vous devez toujours créer un principal de service pour représenter votre cible en amont. Définissez l’ID d’application ou l’URI d’ID d’application du principal de service que vous avez créé.

Authentification dans une application de fonction

Vous pouvez facilement définir la validation d’accès pour une application de fonction sans modifier le code à l’aide du Portail Azure :

  1. Dans le Portail Azure, accédez à l’application de fonction.

  2. Sélectionnez Authentification dans le menu déroulant.

  3. Sélectionnez Ajouter un fournisseur d’identité.

  4. Sous l’onglet Informations de base, dans la liste déroulante Fournisseur d’identité, sélectionnez Microsoft.

  5. Dans Action à exécuter quand une demande n’est pas authentifiée, sélectionnez Se connecter avec Microsoft Entra ID.

  6. L’option permettant de créer une nouvelle inscription est sélectionnée par défaut. Vous pouvez modifier le nom de l’inscription. Pour plus d’informations sur l’activation d’un fournisseur Microsoft Entra, consultez Configurer votre application App Service ou Azure Functions pour utiliser une connexion Microsoft Entra ID.

    Capture d’écran montrant des informations de base pour ajouter un fournisseur d’identité.

  7. Accédez à Azure SignalR Service, puis suivez les étapes pour ajouter une identité affectée par le système ou une identité affectée par l’utilisateur.

  8. Dans Azure SignalR Service, accédez à Paramètres en amont, puis choisissez Utiliser une identité gérée et Sélectionner à partir d’applications existantes. Sélectionnez l’application créée précédemment.

Une fois ces paramètres configurés, l’application de fonction rejette les requêtes sans jeton d’accès dans l’en-tête.

Validation des jetons d’accès

Si vous n’utilisez pas WebApp ou Azure Function, vous pouvez également valider le jeton.

Le jeton dans l’en-tête Authorization est un jeton d’accès à la plateforme d’identité Microsoft.

Afin de valider les jetons d’accès, votre application doit également valider l’audience et les jetons de signature. Ces jetons doivent être validés d’après les valeurs du document de découverte OpenID. Pour trouver un exemple, consultez la version du document indépendante du locataire.

L’intergiciel Microsoft Entra intègre des fonctionnalités permettant de valider les jetons d’accès. Vous pouvez parcourir nos exemples de code de Plateforme d’identités Microsoft pour en trouver dans la langue de votre choix.

Des bibliothèques et des exemples de code qui montrent comment gérer la validation des jetons sont disponibles. Il existe également plusieurs bibliothèques partenaires open source disponibles pour la validation des JSON Web Tokens (JWT). Il existe au moins une option pour la plupart des plateformes et des langues. Pour obtenir plus d’informations sur les bibliothèques d’authentification Microsoft Entra et des exemples de code, consultez Bibliothèques d’authentification de plateforme d’identité Microsoft.

Utiliser une identité managée pour une référence Key Vault

Azure SignalR Service peut accéder à Key Vault pour recevoir des secrets en utilisant l’identité managée.

  1. Ajoutez une identité affectée par le système ou une identité affectée par l’utilisateur à votre instance Azure SignalR Service.
  2. Accordez une autorisation d’accès en lecture de secret pour l’identité managée dans les stratégies d’accès de Key Vault. Consultez Attribuer une stratégie d’accès Key Vault à l’aide du Portail Azure.

Actuellement, vous pouvez utiliser cette fonctionnalité pour référencer un secret dans le modèle d’URL en amont.

Étapes suivantes