Share via


HOW TO:建立 ASP.NET 信賴憑證者應用程式

在這個案例中,您要使用 WIF Visual Studio 範本和 FedUtil 來建立 ASP.NET 網站,以便讓您透過 IClaimsPrincipal 來存取目前使用者的宣告。 促成這個步驟成功的關鍵,在於 FedUtil 會將 ClaimsPrincipalHttpModule 新增到您的專案中。 此模組可讓您將目前使用者的 IPrincipal 物件轉換成 IClaimsPrincipal 物件。

注意

您必須以提升權限的模式執行 Visual Studio,才能使 FedUtil 正常運作。

在 Visual Studio 中,建立如同宣告感知 ASP.NET 網站所示的宣告感知 ASP.NET 網站。

接著,在方案總管中,用滑鼠右鍵按一下專案,然後選取 [新增 STS 參考]:

79a0b161-f082-4c34-96e7-7da5d3126776

這時會執行 FedUtil 工具。 這時會出現 FedUtil 對話方塊,開頭為 [歡迎使用同盟公用程式工具] 頁面:

55362f83-729f-4ecb-84a6-7d7f18ce736a

這個頁面會要求您輸入兩個欄位:

  1. 應用程式設定位置:請指定 ASP.NET 網站的 web.config 檔案路徑。 如果您是從 Visual Studio 之外執行 FedUtil,這個欄位將會是空白的。 如果是從 Visual Studio 當中執行 FedUtil,這個欄位就會預先包含專案的 web.config 檔案路徑。 web.config 檔案必須已經存在,而且必須呈現其預設狀態 (也就是一開始由 Visual Studio 產生時所呈現的狀態)。 如果對相同的 web.config 檔案執行 FedUtil 超過一次,FedUtil 會直接覆寫其新增到該 web.config 檔案上的內容。

  2. 應用程式 URI:請指定 ASP.NET 網站的 URI。 如果您是從 Visual Studio 之外執行 FedUtil,這個欄位將會是空白的。 如果是從 Visual Studio 當中執行 FedUtil,這個欄位就會預先包含專案的兩個 URI:一個會使用 localhost,另一個是使用電腦的完整網域名稱 (若有的話)。 如果不是使用安全的 URI (也就是開頭不是 "https://"),則當您按 [下一步] 時將會收到警告訊息。

提供資訊之後,請按 [下一步]。 這時會出現 [安全性權杖服務] 頁面:

92008115-e10f-474a-b0ae-3090f860897f

選取 [沒有 STS],然後按 [下一步]。 這時會出現 [摘要] 頁面:

b625c9c6-004d-43d8-a278-b1e8ea252ef7

按一下 [完成]。

現在,開啟 default.aspx.cs 檔案,然後記下 Page_Load 方法的前面兩行:

IClaimsPrincipal claimsPrincipal = Page.User as IClaimsPrincipal; IClaimsIdentity claimsIdentity = ( IClaimsIdentity )claimsPrincipal.Identity;

其他的程式碼只是列出目前使用者的宣告及其值。