Comment les clients composent le SPN d’un service

Pour authentifier un service, une application cliente compose un SPN pour le service instance auquel elle doit se connecter. L’application cliente peut utiliser la fonction DsMakeSpn pour composer un SPN. Le client spécifie les composants du SPN à l’aide de données connues ou de données récupérées à partir de sources autres que le service lui-même.

La forme d’un SPN est comme indiqué sous la forme suivante :

<service class>/<host>:<port>/<service name>

Dans ce formulaire, «< classe de> service » et «< hôte> » sont requis. «< port> » et «< nom> du service » sont facultatifs.

En règle générale, le client reconnaît la partie «< classe> de service » du nom et reconnaît les composants facultatifs à inclure dans le SPN. Le client peut récupérer les composants du SPN à partir de sources telles qu’un point de connexion de service (SCP) ou une entrée utilisateur. Par exemple, le client peut lire l’attribut serviceDNSName du scp d’un service pour obtenir le composant «< host> ». L’attribut serviceDNSName contient le nom DNS du serveur sur lequel le service instance est en cours d’exécution ou le nom DNS des enregistrements SRV contenant les données de l’hôte pour les réplicas de service. Le composant «< nom> du service », utilisé uniquement pour les services réplicables, peut être le nom unique du scp du service, le nom DNS du domaine pris en charge par le service ou le nom DNS des enregistrements SRV ou MX.

Pour plus d’informations et un exemple de code utilisé pour composer un SPN pour un service, consultez Comment un client authentifie un service Windows Sockets basé sur SCP.

Pour plus d’informations et une description des composants SPN, consultez Formats de nom pour les SPN uniques.