HttpListener.DefaultServiceNames 屬性

定義

取得由已註冊前置詞所決定之服務提供者名稱 (SPN) 的預設清單。

public:
 property System::Security::Authentication::ExtendedProtection::ServiceNameCollection ^ DefaultServiceNames { System::Security::Authentication::ExtendedProtection::ServiceNameCollection ^ get(); };
public System.Security.Authentication.ExtendedProtection.ServiceNameCollection DefaultServiceNames { get; }
member this.DefaultServiceNames : System.Security.Authentication.ExtendedProtection.ServiceNameCollection
Public ReadOnly Property DefaultServiceNames As ServiceNameCollection

屬性值

ServiceNameCollection,包含 SPN 清單。

備註

屬性DefaultServiceNames會與整合式 Windows 驗證 搭配使用,以提供延伸保護。 當將新的前置詞新增至 Prefixes 屬性時,會從 Prefixes 屬性初始化SPN清單。

DefaultServiceNames如果應用程式在其擴充保護原則上未設定 屬性,CustomServiceNames則會使用 屬性。

ServiceNameCollection使用 屬性擷取的 DefaultServiceNames ,會根據下列規則從 Prefixes 屬性建置:

  1. 如果主機名為 「+」、「*」 或 IPv4 或 IPv6 常值, (相當於 “*” 但僅限於特定本機介面) ,則會新增下列 SPN:

"HTTP/" 加上電腦的完整功能變數名稱。

  1. 如果主機名不包含任何點, (沒有網域或子域) ,則會嘗試使用 DNS 解析完整功能變數名稱, () 所使用的 HttpWebRequest 相同行為。 如果可以解析完整功能變數名稱,則會新增下列SPN:

"HTTP/" 加上主機名 (簡短名稱) 。

"HTTP/" 加上主機名的完整功能變數名稱。

  1. 如果主機名不包含點, (沒有網域或子域) 且無法解析完整功能變數名稱,則會新增下列SPN:

"HTTP/" 加上主機名。

  1. 如果主機名包含點 (網域或子域) ,則會新增下列SPN:

"HTTP/" 加上主機名。

應用程式 DefaultServiceNames 可以使用 屬性來檢閱預設SPN清單,如果未提供任何自定義清單,則會用於驗證。 如果需要其他SPN,應用程式可以使用其中 Merge 一種方法加以新增。

使用擴充保護來根據要求的 URL 做出原則決策並不安全,因為這可以詐騙。 相反地,應用程式應該依賴 LocalEndPointRemoteEndPoint 屬性來做出這類原則決策。

適用於

另請參閱