在 SharePoint 專案中使用 Azure 自訂宣告提供者,第 1 部
英文原文已於 2012 年 2 月 11 日星期六發佈
大家好,自從我上回發表那篇關於 SAML 宣告的文章後,已沉寂好一段時間了。現在我決定重出江湖,再多寫一些有關它的內容,並結合幾個我最愛的主題 – SharePoint、SAML、自訂宣告提供者、CASI 套件以及 Azure。本文是一系列文章中的第一部,我將利用原始程式碼完成作業,示範為 SharePoint 建立以 Windows Azure 作為資料來源的自訂宣告提供者,藉此描述概念。而我們提到的原始程式碼,您之後也可以自行加以發揮運用。綜觀來看,我們的實作整體流程大致如下:
- 使用者會登入使用 SAML 與 ACS 同盟的網站。在 ACS 這一端,我會設定幾個不同的身分提供者,可能會是 Google、Yahoo 和 Facebook。所以舉例來說,使用者可能會用他們的 Google 電子郵件地址登入,然後在驗證完成之後,就會重新導引到網站中。
- 我會使用 Azure 佇列來安排有關使用者之宣告資訊的路線,並填入 Azure 資料表儲存體
- 我將介紹一個用以處理前端對 Azure 資料表儲存體資料的要求,並將新項目丟進佇列中的 WCF 應用程式。我們會建立 SharePoint 網站和此 WCF 應用程式之間的信任,以控制可進入網站的對象、他們可看見的內容,以及可以進行的動作。
- 在 SharePoint 這一端,我將會建立一個自訂宣告提供者。它會取得我支援的宣告類型清單,並會負責人員選擇搜尋與名稱解析。而且它會藉此使用 CASI 套件與 Windows Azure 交流。
在一切完成之後,我們就擁有一個完美整合 SharePoint 到雲端的環境了。希望您喜歡這個結果。
在第 2 部中,我將會帶您認識所有於雲端運行的元件,像是用於 Azure 資料表儲存體以及佇列的資料類別、負責讀取佇列中的項目並填入資料表儲存體的工作角色,以及可讓用戶端應用程式能於佇列中建立新項目並處理所有標準 SharePoint 人員選擇工作的 WCF 前端,以提供一份可支援之宣告類型的清單、搜尋宣告值及解析宣告等。
在第 3 部中,我將會建立所有用於 SharePoint 伺服器陣列中的元件。它包含有以 CASI 套件為基礎,負責管理所有 SharePoint 與 Azure 之間通訊的自訂元件。我們還會提到一個自訂網頁組件,它可以擷取有關新使用者的資訊,並將其插入 Azure 佇列。最後,還有一種自訂宣告提供者,會透過 WCF (再經由 CASI 套年自訂元件) 與 Azure 資料表儲存體交流,以啟用輸入控制項與人員選擇功能。
這是翻譯後的部落格文章。英文原文請參閱 The Azure Custom Claim Provider for SharePoint Project Part 1