管理商務資料目錄的驗證
Microsoft Office SharePoint Server 2007 的商務資料目錄支援兩種驗證模型和三種使用單一登入 (SSO) 的驗證模式來儲存使用者認證。
本文內容:
選取喜好的驗證模型和驗證模式
設定後端應用程式的帳戶
啟用和設定單一登入服務
建立和設定企業應用程式定義
修改和匯入應用程式的應用程式定義
工作需求
若要使用 SSO 管理商務資料目錄的驗證,請先完成本文件中已整合到部署的每個資料庫或 Web 服務步驟。
選取喜好的驗證模型和驗證模式
商務資料目錄中的應用程式可以使用數種不同的驗證模式,而驗證模式可以使用兩種不同驗證模型的其中一種模型。
選取驗證模型
商務資料目錄所使用的驗證模型屬於概念性,而且未對應任何特定 XML 或其他組態設定。驗證模型的實作方式是設定應用程式定義 XML 檔案,以使用特定帳戶來連線至後端伺服器。
商務資料目錄支援下列驗證模型:
受信任子系統
模擬和委派
在「受信任子系統」模型中,中間層 (通常是網頁伺服器) 會以固定身分識別來驗證後端伺服器。而在「模擬和委派」模型中,用戶端會將驗證委派給中間層,而中間層會模擬用戶端並代表用戶端來驗證後端伺服器。每種模型都支援可用於不同整合案例的多種驗證方式。
「受信任子系統」模型具有下列優點:
資料庫連線集區
較不複雜的管理
應用程式的後端伺服器管理員只需要管理單一帳戶的權限
「受信任子系統」最適合用於新的部署。應用程式管理員不需要在後端伺服器上設定大量使用者的授權權限。而是應該設定一個帳戶,供每個應用程式使用,然後在 Office SharePoint Server 中設定授權。
「受信任子系統」模型使用與企業應用程式定義中的群組帳戶相關的服務帳戶或資料庫帳戶。
「模擬和委派」模型具有下列優點:
後端伺服器上的稽核
未含其他任何設定之後端伺服器的每個使用者授權
「模擬和委派」最適合用於針對每個使用者授權設定的現有應用程式。設定「模擬和委派」模型之後,會使用後端應用程式上的設定持續驗證每位使用者。當組織管理多種整合至 Office SharePoint Server 部署的企業營運系統應用程式,而每種都有必須持續管理的專屬授權設定時,這會變得有點繁重。在設定「受信任子系統」模型之前,除非需要在後端伺服器上進行稽核,否則通常最好是只在初始部署期間才使用「模擬和委派」模型。
「模擬和委派」模型使用個別 Windows 使用者帳戶,以及與個別帳戶相關的資料庫使用者帳戶 (僅適用於資料庫) 或表單型驗證使用者 (僅適用於 Web 服務)。
選取和設定驗證模式
下表說明商務資料目錄支援的驗證模式,以及模式是否使用 SSO。
驗證模式 |
描述 |
使用 SSO |
PassThrough |
使用登入使用者的認證來驗證後端伺服器上的應用程式。這種模式只適用於「模擬和委派」驗證模型。PassThrough 驗證需要啟用 Kerberos 委派。 |
否 |
RevertToSelf |
使用應用程式集區身分識別帳戶,向後端伺服器驗證使用者。因為一律會使用服務帳戶,而不是使用個別帳戶,所以 RevertToSelf 使用「受信任子系統」驗證模型。 |
否 |
WindowsCredentials |
用於 Web 服務和資料庫。商務資料目錄會透過企業應用程式定義來模擬具有認證的 Windows 使用者帳戶,並執行 Windows 驗證。 |
是 |
Credentials |
用於使用基本或摘要驗證的 Web 服務,而非使用 Windows 驗證的 Web 服務。為了協助保留安全性,當使用 Credentials 驗證模式時,強烈建議使用安全通訊端階層 (SSL) 或網際網路通訊協定安全性 (IPSec) 來保護商務資料目錄與後端伺服器之間的通道。 |
是 |
RdbCredentials |
只用於後端資料庫。商務資料目錄使用企業應用程式定義的認證進行驗證。 |
是 |
這些模式大部分使用 SSO,以利用設定為企業應用程式定義的個別或群組身分識別來儲存應用程式的認證。PassThrough 模式使用登入使用者的認證,而 RevertToSelf 模式使用應用程式集區身分識別帳戶來驗證使用者。
針對所有的 SSO 驗證模式,企業應用程式定義都會使用「受信任子系統」模型的群組帳戶以及「模擬和委派」模型的個別帳戶。如需企業應用程式定義的詳細資訊,請參閱本文件的<建立和設定企業應用程式定義>一節。
您所選取的驗證模式會影響您在後端伺服器上設定的帳戶或認證,以及 SSO 的設定。本文後述之<修改和匯入應用程式定義 XML 檔案>一節會說明必須設定的應用程式定義 XML 檔案屬性。
如需驗證模型和驗證模式的詳細資訊,請參閱商務資料目錄驗證 (英文) (https://go.microsoft.com/fwlink/?linkid=100498&clcid=0x404)。
針對應用程式設定帳戶
在設定應用程式的 SSO 或應用程式定義 XML 檔案之前,設定後端伺服器之一或多個認證的授權權限:
如果您使用的是「受信任子系統」驗證模型,則只需要在應用程式上設定單一帳戶或一組認證。
如果您使用的是「模擬和委派」驗證模型,則需要設定商務資料目錄透過 SSO 群組帳戶模擬之每個認證的授權。如果貴組織已在使用應用程式,則可能已設定必要認證,而您可以略過這個步驟。
帳戶設定於資料庫或 Web 服務內,而且設定詳細資料會視應用程式的特定權限而不同。
啟用和設定單一登入服務
如果您已為使用 SSO 的商務資料目錄選取驗證模式,則必須在伺服器陣列的所有前端網頁伺服器上啟用和設定 Microsoft Single Sign-On 服務 (SSOSrv)。如果也使用商務資料目錄的搜尋,則必須在索引伺服器上啟用 SSOrv。
服務的登入帳戶必須是:
網域使用者帳戶。不能是群組帳戶。
Office SharePoint Server 伺服器陣列帳戶。
加密金鑰伺服器上的本機管理員群組成員 (加密金鑰伺服器是您啟動 SSOSrv 的第一部伺服器)。
執行 Microsoft SQL Server 之電腦上的安全性管理員角色和 db_creator 角色的成員。
與 SSO 管理員帳戶相同的帳戶,或 SSO 管理員帳戶群組帳戶的成員。
設定 SSO 服務之後,請在管理中心頁面上設定其他設定。SSO 的伺服器設定包含不同的 SSO 管理員帳戶的帳戶資訊、SSO 資料庫伺服器和伺服器名稱,以及逾時和稽核記錄檔設定。
指定為 SSO 管理員帳戶的使用者或群組必須為:
輸入 Windows 通用群組或個別使用者帳戶。這個帳戶不能是網域本機群組帳戶或通訊群組清單。
如果有指定使用者,則是與單一登入服務帳戶相同的帳戶。如果指定群組,單一登入服務帳戶就必須是該群組的成員。
如果指定使用者,則是與 SSO 的設定帳戶相同的帳戶。如果指定群組,SSO 的設定帳戶就必須是該群組的成員。
SharePoint 伺服器陣列管理員群組的成員。
如需啟用和啟動單一登入服務的詳細資訊,請參閱<設定並啟動 Microsoft Single Sign-On 服務>。如需設定單一登入服務的詳細資訊,請參閱<設定單一登入 (Office SharePoint Server)>。
建立和設定企業應用程式定義
當您設定單一登入服務之後,必須建立和設定企業營運系統應用程式的企業應用程式定義。請為企業營運系統應用程式、資料庫和 Web 服務使用的每個儲存認證建立一個企業應用程式定義。一般而言,會為每個應用程式或服務建立一個企業應用程式定義,即使您有多個應用程式使用相同一組認證,還是只需要可以用來連線至使用那些認證之所有應用程式的其中一個企業應用程式定義。
注意
SSO 的企業應用程式定義,不同於匯入到每個應用程式或服務之商務資料目錄的應用程式定義 XML 檔案。您必須建立企業應用程式定義,並且另外參閱應用程式定義 XML 檔案中的該企業應用程式定義。
在您建立企業應用程式定義之後,必須設定企業應用程式定義的帳戶資訊。您必須以本機管理員的身分登入伺服器,才可完成此程序。
如需建立企業應用程式定義的詳細資訊,請參閱<建立商務資料目錄的企業應用程式定義>。如需設定企業應用程式定義的詳細資訊,請參閱<設定商務資料目錄的企業應用程式定義>。
修改和匯入應用程式定義 XML 檔案
當您設定 SSO 並建立和設定企業應用程式定義之後,必須修改應用程式定義,使其包含應用程式的驗證模式、應用程式所使用 ISsoProvider 介面的實作,以及應用程式的企業應用程式識別碼。這些屬性設定於應用程式定義 XML 檔案的 LOBSystemInstance 物件中。
您也可以修改應用程式的其他屬性。如需列出可用於設定資料庫和 Web 服務驗證之完整屬性清單的表格,請參閱 LOBSystemInstance (英文) (https://go.microsoft.com/fwlink/?linkid=124545&clcid=0x404)。其中也會一併提供範例。
在您使用商務資料目錄的驗證設定之前,必須將應用程式定義 XML 檔案匯入至商務資料目錄。
如需建立、修改和匯入商務資料目錄之應用程式定義的詳細資訊,請參閱<管理應用程式定義>。
下列各小節會說明應用程式定義 XML 檔案的常見製作工作:
設定資料庫的 SSO 驗證
設定 Web 服務的 SSO 驗證
設定應用程式的 SSO 提供者
設定 RevertToSelf 驗證
設定 PassThrough 驗證
設定應用程式的應用程式層級驗證
設定資料庫的 SSO 驗證
若要搭配使用 SSO 與資料庫系統,則需要下列屬性:
LOBSystemInstance 物件的 AuthenticationMode 設為 WindowsCredentials 或 RdbCredentials。
SsoProviderImplementation 會設為 ISsoProvider 介面的完整名稱。
注意
若使用協力廠商 ISsoProvider 介面,而非 Office SharePoint Server ISsoProvider 介面,就必須納入該提供廠商的完整名稱。
SsoApplicationId 設為應用程式的企業應用程式識別碼值。在您建立企業應用程式定義時,就會提供它的名稱。
設定 Web 服務的 SSO 驗證
若要搭配使用 SSO 與 Web 服務系統,則需要下列屬性:
LOBSystemInstance 物件的 WebServiceAuthenticationMode 設為 WindowsCredentials 或 Credentials。
SsoProviderImplementation 會設為 ISsoProvider 介面的完整名稱。
注意
若使用協力廠商 ISsoProvider 介面,而非 Office SharePoint Server ISsoProvider 介面,就必須納入該提供廠商的完整名稱。
WebServiceSsoApplicationId 設為應用程式的企業應用程式識別碼值。
設定應用程式的 SSO 提供者
使用 SSO 驗證使用者的企業營運系統應用程式可以設定 SsoProviderImplementation 屬性和 ISsoProvider 介面,以使用任何協力廠商 SSO 提供者。若要使用 Office SharePoint Server SSO 提供者之外的 SSO 提供者,則必須設定該提供者,然後將提供者的完整名稱加入這個屬性的應用程式定義中。如需詳細資訊,請參閱 ISsoProvider 成員 (英文) (https://go.microsoft.com/fwlink/?linkid=124546&clcid=0x404)。
設定應用程式的 RevertToSelf 驗證
如果不想要使用 SSO,則可以使用 RevertToSelf 驗證模式來設定利用應用程式集區帳戶身分識別執行應用程式,以及使用每位使用者對應用程式的個別權限來進行驗證。若要使用 RevertToSelf 驗證模式,請設定下列驗證屬性:
若要對資料庫進行驗證,請將 LOBSystemInstance 物件的 AuthenticationMode 屬性設為 RevertToSelf。
若要對 Web 服務進行驗證,請將 LOBSystemInstance 物件的 WebServiceAuthenticationMode 屬性設為 RevertToSelf。
設定應用程式的 PassThrough 驗證
PassThrough 驗證也不會使用 SSO 來儲存帳戶,而是直接使用後端應用程式中每個帳戶的權限來驗證每位使用者。若要使用 PassThrough 驗證模式,請設定下列驗證屬性:
若要對資料庫進行驗證,請將 LOBSystemInstance 物件的 AuthenticationMode 屬性設為 PassThrough。
若要對 Web 服務進行驗證,請將 LOBSystemInstance 物件的 WebServiceAuthenticationMode 屬性設為 PassThrough。
設定應用程式的應用程式層級驗證
商務資料目錄也支援次要應用程式層級驗證。除了針對系統設定的主要驗證之外,還會使用這種驗證。例如,這特別適用於後端應用程式需要在方法呼叫中傳遞次要認證以授權使用者時。若要啟用應用程式層級驗證,請採取下列步驟:
在 LobSystemInstance 物件的 SecondarySsoApplicationId 屬性中,指定含有認證的 SSO 應用程式。
定義 UsernameCredentialFilter 和 PasswordCredentialFilter 屬性,並建立這些屬性與輸入參數的關聯。
設定匿名存取
2007 Microsoft Office Servers Service Pack 1 為應用程式定義新增了一項 AllowAnonymousExecute 屬性,以對商務資料網頁組件的商務資料啟用匿名存取。將此屬性值設為 true 即可啟用匿名存取。以下為此屬性的 XML:
<Properties>
<Property Name="AllowAnonymousExecute" Type="System.Boolean">true</Property>
</Properties>
若要對「商務資料清單網頁組件」或「商務資料項目網頁組件」的資料啟用匿名存取,請將此屬性加入至該網頁組件所用的方法執行個體。
例如,若要讓匿名使用者對顯示音樂藝人資訊的「商務資料項目網頁組件」執行 ArtistRead 方法執行個體:
<MethodInstance Type="SpecificFinder" ReturnParameterName="ArtistRead" Name="ArtistRead">
<Properties>
<Property Name="AllowAnonymousExecute" Type="System.Boolean">true</Property>
</Properties>
</MethodInstance>
工作需求
以下是執行這項工作之程序的必要條件:
若要設定商務資料目錄中後端企業營運系統應用程式的帳戶,則您必須擁有應用程式權限才可設定帳戶權限。
若要啟用伺服器上的單一登入服務,必須是本機管理員群組的成員。
若要在管理中心內設定 SSO 管理員帳戶,則您必須是伺服器陣列管理員以及本機管理員群組成員。
若要在管理中心內建立和設定企業應用程式定義,則您必須是伺服器陣列管理員以及本機管理員群組成員。
若要修改或匯入應用程式的現有應用程式定義 XML 檔案,則您必須擁有商務資料目錄中應用程式的 [編輯] 權限。
若要管理商務資料目錄的驗證,則可依序執行下列程序: