簡體   English   中英

為 WCF 配置傳輸安全性

[英]Configuring transport security for WCF

我有一個托管 WCF 服務的 windows 服務,以及作為客戶端的另一台機器上的 web 服務。 我使用 Windows 身份驗證將 nettcpbinding 設置為傳輸安全。 我是否正確假設運行 web 服務的 windows 用戶必須有權訪問另一台機器上的 WCF 服務? 如果 web 服務在 NetworkService 下運行,是否可以使用它或者我需要設置一個新用戶才能使用它?

是的,您需要設置另一個用戶。 網絡服務是本地用戶,不會存在於 WCF 主機上。 (確實如此,但它有一個不同的密碼,因此不共享)

您有幾個選擇 - 如果兩台機器都在域中,您可以以域用戶身份運行 web 應用程序池,或者如果您在工作組中,您可以在兩台機器上創建相同的用戶名/密碼組合並配置 web在該帳戶下運行的網站。 在任何一種情況下,您都需要通過發出

aspnet_regiis -ga MachineName\AccountName

如果您在域和 kerberos 身份驗證中,那么您還需要為新用戶帳戶設置 SPN

setspn -A HTTP/webservername domain\customAccountName
setspn -A HTTP/webservername.fullyqualifieddomainname domain\customAccountName 

有關網絡服務的詳細信息,請參閱http://msdn.microsoft.com/en-us/library/ms684272(VS.85).aspx 將會發生的情況是,您的 WCF 客戶端將嘗試以 domain\computername$ 身份驗證到托管服務的計算機。 我個人更喜歡有一個特定的身份用於審計目的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM