Informations de référence sur l’API REST du plan de données du service Azure Web PubSub

Diagramme montrant le workflow Web PubSub Service.

Comme illustré par le graphique de workflow ci-dessus, ainsi que le workflow détaillé décrit dans internals, votre serveur d’applications peut envoyer des messages aux clients ou gérer les clients connectés à l’aide d’API REST exposées par le service Web PubSub. Cet article décrit en détail les API REST.

Important

Des chaînes de connexion brutes sont utilisées dans cet article uniquement à des fins de démonstration.

Une chaîne de connexion inclut les informations d’autorisation dont votre application a besoin pour accéder au service Azure Web PubSub. La clé d’accès dans la chaîne de connexion agit comme un mot de passe root pour votre service. Dans les environnements de production, protégez toujours vos clés d’accès. Utilisez Azure Key Vault pour gérer et faire pivoter vos clés en toute sécurité et sécuriser votre connexion avec WebPubSubServiceClient.

Évitez de distribuer des clés d’accès à d’autres utilisateurs, de les coder en dur ou de les enregistrer en texte brut dans un emplacement accessible à d’autres personnes. Effectuez une rotation de vos clés si vous pensez qu’elles ont pu être compromises.

Utilisation de l'API REST

S’authentifier via une clé d’accès Azure Web PubSub Service

Dans chaque requête HTTP, un en-tête d’autorisation avec un jeton web JSON (JWT) est requis pour s’authentifier auprès d’Azure Web PubSub Service.

Algorithme de signature et signature

HS256, à savoir HMAC-SHA256, est utilisé comme algorithme de signature.

Vous devriez utiliser la chaîne de connexion de l'AccessKeyinstance du service Azure Web PubSub pour signer le JWT généré.

Revendications

Les revendications ci-dessous doivent être incluses dans le JWT.

Type de revendication Est obligatoire Description
aud true Doit être identique à votre URL de requête HTTP. Par exemple, le public d’une requête de diffusion ressemble à : https://example.webpubsub.azure.com/api/hubs/myhub/:send?api-version=2022-11-01.
exp true Heure Epoch d’expiration de ce jeton.

Un pseudo-code dans JS :

Des chaînes de connexion brutes sont utilisées dans cet article uniquement à des fins de démonstration. Dans les environnements de production, protégez toujours vos clés d’accès. Utilisez Azure Key Vault pour gérer et faire pivoter vos clés en toute sécurité et sécuriser votre connexion avec WebPubSubServiceClient.

const bearerToken = jwt.sign({}, connectionString.accessKey, {
  audience: request.url,
  expiresIn: "1h",
  algorithm: "HS256",
});

S’authentifier via le jeton Microsoft Entra

Comme l’utilisation de AccessKey, un jeton web JSON (JWT) est également nécessaire pour authentifier la requête HTTP.

La différence, c’est que dans ce scénario, JWT est généré par Microsoft Entra ID.

Découvrez comment générer des jetons Microsoft Entra

L’étendue des informations d’identification utilisée doit être https://webpubsub.azure.com/.default.

Vous pouvez également utiliser le contrôle d’accès en fonction du rôle (RBAC) pour autoriser la requête de votre serveur à Azure Web PubSub Service.

Apprenez à ajouter des attributions de rôles

API

Groupe d’opérations Description
État du service Fournit des opérations pour vérifier l’état du service
Opérations REST Fournit des opérations pour gérer les connexions et envoyer des messages dessus.