Condividi tramite


Come un servizio compone i nomi SPN

Un servizio può usare due funzioni per comporre i nomi SPN: DsGetSpn è una funzione per utilizzo generico per la composizione di SPN e DsServerRegisterSpn è una funzione specializzata per la composizione e la registrazione di nomi SPN semplici per un servizio basato su host.

Un programma di installazione del servizio usa in genere la funzione DsGetSpn per comporre nomi SPN, che quindi registra nell'account di accesso del servizio usando la funzione DsWriteAccountSpn. DsGetSpn può eseguire le funzioni seguenti.

  • Creare un nome SPN semplice con il formato "<classe>/<host> del servizio" per un servizio basato su host.
  • Creare un nome SPN complesso che includa il componente "<nome> servizio" usato dai servizi replicabili o dal componente "<porta>" che distingue più istanze di un servizio in un singolo host.
  • Creare un singolo NOME SPN con il componente "<host>" impostato sul nome di un host specificato o sul nome del computer locale per impostazione predefinita.
  • Creare una matrice di nomi SPN per più istanze del servizio che verranno eseguite in più host in tutta la foresta. Ogni NOME SPN specifica il nome dell'host per un'istanza del servizio.
  • Creare una matrice di nomi SPN per più istanze del servizio che verranno eseguite nello stesso host. Ogni NOME SPN specifica il nome dell'host e un numero di porta per un'istanza del servizio.

La matrice di nomi restituiti da DsGetSpn deve essere liberata chiamando la funzione DsFreeSpnArray.

Tenere presente che le funzioni DsGetSpn, DsWriteAccountSpn e DsServerRegisterSpn non verificano che i nomi SPN siano univoci. Poiché l'autenticazione reciproca ha esito negativo se un client presenta un nome SPN non univoco, verificare l'univocità prima di registrare un NOME SPN. A tale scopo, cercare gli attributi servicePrincipalName del catalogo globale corrispondenti al nome SPN. Per altre informazioni sulla ricerca nel catalogo globale, vedere Ricerca nel catalogo globale.