Bir Hizmet SPN'lerini Nasıl Oluşturur?
Bir hizmet SPN'lerini oluşturmak için iki işlev kullanabilir: DsGetSpn SPN'leri oluşturmak için genel amaçlı bir işlevdir ve DsServerRegisterSpn, konak tabanlı bir hizmet için basit SPN'leri oluşturmak ve kaydetmek için özel bir işlevdir.
Hizmet yükleyicisi genellikle SPN'ler oluşturmak için DsGetSpn işlevini kullanır ve ardından DsWriteAccountSpn işlevini kullanarak hizmetin oturum açma hesabına kaydeder. DsGetSpn aşağıdaki işlevleri gerçekleştirebilir.
- Host tabanlı bir hizmet için "<hizmet sınıfı>/<ana bilgisayar>" formatında basit bir SPN oluşturun.
- Çoğaltılabilir hizmetler tarafından kullanılan "<hizmet adı>" bileşenini veya tek bir konakta bir hizmetin birden çok örneğini ayıran "<bağlantı noktası>" bileşenini içeren karmaşık bir SPN oluşturun.
- "<ana bilgisayar>" bileşeni varsayılan olarak belirtilen konağın adına veya yerel bilgisayarın adına ayarlanmış tek bir SPN oluşturun.
- Orman genelinde birden çok sunucuda çalışacak birden çok hizmet örneği için bir SPN dizisi oluşturun. Her bir SPN, bir hizmet örneği için sunucunun adını belirtir.
- Aynı konakta çalışacak birden çok hizmet örneği için bir SPN dizisi oluşturun. Her SPN, bir hizmet örneği için konağın adını ve bağlantı noktası numarasını belirtir.
DsGetSpn tarafından döndürülen ad dizisi, DsFreeSpnArray işlevi çağrılarak serbest edilmelidir.
DsGetSpn, DsWriteAccountSpnve DsServerRegisterSpn işlevlerinin SPN'lerin benzersiz olduğunu doğrulamadığını unutmayın. İstemci benzersiz olmayan bir SPN sunarsa karşılıklı kimlik doğrulaması başarısız olduğundan, SPN'yi kaydetmeden önce benzersizliği doğrulayın. Bunu yapmak için genel katalogda (GC) servicePrincipalName özniteliklerini SPN'nizle eşleşen şekilde arayın. GC'de arama yapma hakkında daha fazla bilgi için bkz. Genel Katalog'ta Arama.