Réservations d’espaces de noms, inscriptions et routage

La réservation et l’inscription sont les opérations par lesquelles l’API du serveur HTTP donne accès à l’espace de noms d’URL sur une machine. Les applications peuvent s’inscrire pour une partie de l’espace de noms d’URL afin de traiter les demandes des clients HTTP. L’application inscrit un espace de noms auprès de l’API du serveur HTTP à l’aide de la fonction HttpAddUrl . L’API serveur HTTP ajoute les URL à la file d’attente des requêtes pour l’application et les achemine vers les applications en fonction des URL de leurs files d’attente. Toutefois, avant que l’application puisse s’inscrire pour recevoir des demandes pour un espace de noms d’URL, l’administrateur système doit effectuer une réservation pour cette URL au nom de l’utilisateur qui exécute l’application. Par défaut, l’espace de noms est fermé, c’est-à-dire que seul l’administrateur peut inscrire UrlPrefixes jusqu’à ce que l’administrateur entre une réservation.

Une réservation alloue de manière permanente une partie de l’espace de noms d’URL à des utilisateurs individuels, ce qui leur permet de réserver ou de « posséder » cette partie de l’espace de noms. Les réservations donnent à l’utilisateur le droit de s’inscrire aux demandes de service pour l’espace de noms. L’API serveur HTTP garantit que les utilisateurs n’inscrivent pas d’URL à partir de parties de l’espace de noms qu’ils ne possèdent pas. Pour garantir la sécurité de l’espace de noms, les listes de contrôle d’accès (Access Control List) sont appliquées à la partie de l’espace de noms réservée à chaque utilisateur.

Les espaces de noms réservés sont identifiés par des chaînes de préfixe d’URL, mises en forme de la même manière que les préfixes d’URL utilisés pour les inscriptions. Cela signifie que toutes les différentes catégories de spécificateurs d’hôte sont également disponibles pour les réservations.

Les réservations d’espaces de noms sont conservées entre les redémarrages, et les modifications prennent effet dynamiquement, il n’est donc pas nécessaire d’arrêter et de redémarrer l’ordinateur.

Les concepts suivants sont encore plus précisés puisqu’ils s’appliquent au processus d’inscription et de réservation d’espaces de noms.

  • ENREGISTREMENT. L’inscription est l’opération par laquelle une application indique l’intérêt à recevoir des demandes pour un UrlPrefix spécifié. L’API pour l’inscription d’URL est HttpAddUrl. L’inscription se produit généralement au démarrage de l’application et doit être effectuée chaque fois que l’application démarre.
  • ROUTAGE. Le routage est effectué par l’API de serveur HTTP pour déterminer l’application vers laquelle distribuer la demande, en fonction du meilleur urlPrefix correspondant qui est inscrit et/ou réservé. L’opération de routage utilise à la fois les informations d’inscription et de réservation.
  • RÉSERVATION. La réservation alloue une partie de l’espace de noms d’URL à un ou plusieurs utilisateurs. Cette opération donne aux utilisateurs le droit de s’inscrire à l’espace de noms spécifié. Un utilisateur pour lequel un espace de noms est réservé est dit « propriétaire » de cette partie de l’espace de noms d’URL. Les réservations d’espaces de noms sont généralement effectuées pendant l’installation de l’application et sont une opération peu fréquente. Les réservations persistent entre les redémarrages de l’ordinateur et nécessitent des privilèges d’administrateur sur l’ordinateur ou la propriété avec des privilèges de délégation pour créer ou supprimer.
  • DÉLÉGATION. Les privilèges de délégation permettent à un utilisateur propriétaire d’un espace de noms de transmettre la propriété d’une sous-arborescence à un autre utilisateur par une réservation ultérieure. Les privilèges de délégation sont accordés à un utilisateur par l’administrateur système lors de la réservation. Un ou plusieurs utilisateurs peuvent se voir attribuer des privilèges de délégation à un espace de noms.