共用方式為


在 SharePoint Server 中規劃 Business Connectivity Services 解決方案

適用於:yes-img-132013 yes-img-16 2016yes-img-19 2019yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

Microsoft Business Connectivity Services 解決方案將外部資料深入整合到 SharePoint Server 和 Office。 每個 Business Connectivity Services 解決方案都是使用 Visual Studio 量身打造。 沒有您可以使用的現成 Business Connectivity Services 設定或範本。

本文列出五個問題,請先回答問題,然後再開始設計 Business Connectivity Services 解決方案。 請務必將所有收集到的資訊傳達給專案的主要關係人進行審核及核准。 當您這樣做時,您將協助確保所有相關人員對專案的需求以及解決方案的運作方式有相同的瞭解。

資料位於何處?

規劃 Business Connectivity Services 解決方案的第一步,是先知道您所需要的外部資料位於何處。 您必須從三個角度確認這項資訊。

您必須知道誰對外部數據源負有每日系統管理責任。 這是您需要使用的群組,以協助設定外部數據的連線能力。 他們將能夠告訴您如何將數據提供給外部取用、其如何受到保護等等。 您可能會需要他們協助建立外部系統的認證供您使用。 除此之外,您也必須要有萬全的準備,以回答您的 Business Connectivity Services 解決方案對其資料與外部系統所造成之影響的各項問題。

網路考量

您也需要考慮外部數據源與 Business Connectivity Services 和使用者將使用的網路相關的位置。 若要協助您瞭解這一點,請繪製網路上三個元件的圖表,並查看它們的所在位置。 例如,您可以查看它們是否全都在您的內部網路和防火牆內。 或者,您會看到 Business Connectivity Services 基礎結構和外部數據源是以防火牆或界限網路分隔,而且它們位於完全不同的網路上。 以下是一些基本規則,可用來引導您的設計:

  • 如果外部資料來源在您的網路外部 (例如在網際網路上),Business Connectivity Services 必須透過您的公司防火牆與外部資料來源進行通訊,而且您必須規劃該流量。

  • 查看使用者將從何處存取 Business Connectivity Services 解決方案。 請務必考慮用戶端與 Business Connectivity Services 解決方案之間的數據通訊是否需要加密,以及基礎網路基礎結構是否可支援新增的負載。 此外,請確定瀏覽器和 Office 用戶端支援解決方案所提供的功能。

資料要如何呈現?

Business Connectivity Services 解決方案可以經由 OData、SQL Server、Windows Communication Foundation (WCF) 服務及 .NET 組件連接到外部資料來源。 您必須知道如何呈現資料供外部使用 (您可以向外部系統管理員洽詢這方面的資訊)。 外部數據的呈現方式會決定您將用來建立外部內容類型的開發工具。 下表列出外部資料來源所適用的工具。

如何維謢資料的安全?

Business Connectivity Services 會處理其本身與外部系統之間所有的通訊驗證。 基本上,Business Connectivity Services 會向外部系統顯示可讓外部系統驗證的資訊, (判斷您是否為要求) ,然後授權存取外部系統中的數據。 Business Connectivity Services 支援多種驗證類型。

針對您的 Business Connectivity Services 解決方案設計,您必須知道外部系統需要哪些驗證機制。 如此一來,您將知道如何設定 Business Connectivity Services,讓它以外部系統所需的方式呈現驗證資訊。 Business Connectivity Services 支援三種驗證模型:

  • 認證型驗證 在認證型驗證模型中,認證會從 Business Connectivity Services 傳送到外部系統。 認證包含了使用者名稱與某種特定形式的密碼。 Business Connectivity Services 有許多方法可執行這項操作,包括傳遞登入使用者的認證、傳遞提出要求之服務的認證,或將登入的使用者認證對應至外部系統辨識的不同認證集。

  • 宣告式驗證 在某些驗證案例中,外部系統不會直接接受來自 Business Connectivity Services 的認證。 不過,外部系統會從它信任的第三方驗證服務接受它們。 第三方驗證服務 (安全性令牌提供者) 接受資訊群組, (稱為有關要求者的判斷提示) 。 整個群組稱為宣告,而宣告可以包含要求者的詳細資訊,而不只是使用者名稱和密碼。 例如,宣告可以包含要求者的相關元數據,例如要求者的電子郵件位址或要求者所屬的安全組。 第三方驗證服務會根據宣告中的判斷提示來執行要求者的驗證,並建立要使用之要求者的安全性令牌。 要求者 (Business Connectivity Services) 接著向外部系統出示安全性令牌,而外部系統會查看要求者已獲授權存取的數據。

  • 自訂驗證 如果您使用的外部系統不支援認證型或宣告型驗證,則您必須開發、測試和實作自定義解決方案,以採用 Business Connectivity Services 可產生並轉譯為外部系統將接受的格式。 由內部部署中之 OAuth 或自訂 ASP.NET HTTP 模型維護安全性的 OData 資料來源,可以施行自訂驗證解決方案。

資料如何使用?

在收集各種需求的同時,您也必須了解貴公司專案關係人期望解決方案有哪些功能,以及使用者與解決方案的互動方式。 使用者可能需要透過外部清單,以及外部網頁元件和 Office 應用程式,與 SharePoint Server 中的數據互動。 或者,他們可能需要解決方案,才能透過 Office 應用程式和 SharePoint 應用程式呈現數據。 如需 Office 和 SharePoint 應用程式的詳細資訊, 請參閱 (OLD) SharePoint 2016 應用程式概觀。 解決方案也可能需要其他瀏覽器、用戶端或應用程式對於外部資料的權限組合。

使用者存取數據的方式會影響您如何界定 Business Connectivity Services 用來存取外部資料的外部內容類型。 如果您的 Business Connectivity Services 解決方案需要 Office 與 SharePoint 相關應用程式 應用程式,則外部內容類型必須限定為該應用程式。 如果您的 Business Connectivity Services 解決方案不會使用 Office 和 SharePoint 的應用程式來存取外部數據,則外部內容類型必須限於 Business Data Connectivity 服務應用程式。

範圍限定在 Business Connectivity Services 的外部內容類型會集中儲存在 BDC 中繼資料存放區中,而伺服器陣列管理員會管理其安全性。 您可以與多個 Business Connectivity Services Web 應用程式共用這些外部內容類型。

範圍限定在 Office 與 SharePoint 相關應用程式 的外部內容類型會儲存為 Office 與 SharePoint 相關應用程式 應用程式本身的 XML 檔案。 任何其他 Office 與 SharePoint 相關應用程式 應用程式都無法使用這些外部內容類型。

線上設定物件 只能與 OData 數據源搭配使用。 它們包含連線資訊,例如呈現外部數據之服務的服務位址、要使用的驗證類型、因特網對向URL,以及任何必要憑證的名稱。 連接設定物件是與外部內容類型不同的物件。 當 Business Connectivity Services 解決方案需要連線到外部系統時,它會使用連線設定物件中的資訊。 當外部內容類型開發人員不知道或無法存取外部內容類型時,您通常會選擇與外部內容類型分開定義連線資訊。 應用程式範圍的外部內容類型和服務範圍的外部內容類型都可以使用連線設定物件。 多個 Business Connectivity Services 解決方案可以使用連線設定物件。 每個解決方案都必須被授與使用連線設定對象的許可權。

如何指派權限給解決方案?

每項 Business Connectivity Services 解決方案都必須針對不同的物件規劃不同使用者的存取權限。 這是限制及授與使用者存取權最恰當的方式。 您必須與外部系統管理員和 SharePoint Server 伺服器陣列管理員、網站集合管理員和網站管理員合作,以設定許可權。 規劃至少應考慮下列事項。

每項 Business Connectivity Services 解決方案都應具備三個基本角色:

  • 管理角色 這類角色負責管理外部系統的權限、建立及管理 Business Data Connectivity Service 應用程式、將 Business Data Connectivity (BDC) 模型匯入 BDC 中繼資料存放區,以及管理 BDC 中繼資料存放區與其中所有物件的權限。 SharePoint 應用程式 如有使用 Business Connectivity Services,則 SharePoint Server 伺服器陣列管理員也必須負責發佈應用程式及建立和管理連線物件。 一般來說,這些工作會由擔任 SharePoint Server 伺服器陣列管理員、外部系統管理員的人員,以及獲委派這些管理權限的人員負責執行。

  • 開發人員或設計人員角色 這些角色負責建立外部內容類型、BDC 模型,以及使用 Business Connectivity Services 的 SharePoint 應用程式。 這些人員的主要工作在負責了解解決方案的所有商務需求。

  • 使用者角色 這類角色的人員會使用及操作 Business Connectivity Services 解決方案中的外部資料。 解決方案中可有多種使用者角色,每一種各有不同的權限等級。 例如,在使用 Business Connectivity Services 將外部資訊整合到解決方案中的票證系統中,第一層服務台技術人員可授與其讀取與啟動票證工作流程的能力,第二層及第三層的技術人員則可授與其更新票證的能力。

您將管理權限的每個 Business Connectivity Services 解決方案也有四個主要層面:

  • 外部系統 每個外部系統都會有執行驗證和授權的方法。 (如需詳細資訊,請參閱本文稍早的 如何保護數據 ?) 您需要與外部系統管理員合作,以根據最低許可權原則來識別如何將存取權授與解決方案使用者。 一般而言,您會將 Business Connectivity Services 端的使用者群組對應至外部系統端的單一帳戶,並使用單一外部系統帳戶來限制存取。 另一種方式是在每個系統上的個別帳戶之間執行 1:1 對應。 在任一情況下,除非外部系統可以直接接受使用者向 SharePoint Server 驗證的認證,否則您必須使用 Secure Store Service。 如需 Business Connectivity Services 所支援之驗證模型的詳細資訊,請參閱 Business Connectivity Services 安全性概觀 (SharePoint 2010)

  • Business Connectivity Services 中央基礎結構 在 管理中心 中,您可以管理如何將權限指派給 BDC 中繼資料存放區。 在 BDC 中繼資料存放區中,您可以管理 BDC 模型、外部系統和外部內容類型。 您必須將外部內容類型的執行權限指派給將使用 Business Connectivity Services 解決方案的所有使用者。 下列各表提供能力、權限和物件的詳細對應。

    BDC 中繼資料存放區 此 SQL Server 資料庫可以儲存模型定義、外部內容類型及外部系統定義。

    表格:BDC 中繼資料存放區的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
藉由傳播的方式設定 BDC 中繼資料存區所含物件的權限 SetPermissions BDC 中繼資料存放區

模型 模型是一個 XML 檔案,其中包含一或多個外部內容類型的描述集、相關的外部系統,以及環境特定的資訊,例如驗證屬性。

表格:模型的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
建立新模型 編輯 BDC 中繼資料存放區
編輯模型 編輯 模型
設定模型的權限 SetPermissions 模型
匯入模型 編輯 BDC 中繼資料存放區
匯出模型 編輯 模型與模型中的所有外部系統

BDC 元數據存放區中的外部系統 外部系統是可模型化之支持數據源的元數據定義,例如資料庫、Web 服務或 .NET 聯機組件。

表格:BDC 中繼資料存放區中之外部系統的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
建立新的外部系統 編輯 BDC 中繼資料存放區
編輯外部系統 編輯 外部系統物件
設定外部系統的權限 SetPermissions 外部系統物件

外部內容類型 外部內容類型是可重複使用的元數據集合,可定義來自一或多個外部系統的一組數據、該數據可用的作業,以及與該數據相關的連線資訊。

表格:外部內容類型的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
建立新的外部內容類型 編輯 外部系統
對外部內容類型執行作業 執行 外部內容類型 (作業的方法執行個體)
建立外部內容類型的清單 可從用戶端選取 外部內容類型
設定外部內容類型的權限 SetPermissions 外部內容類型

方法 Business Data Connectivity 方法是商務連線服務如何與外部數據源互動的 XML 定義。

表格:方法的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
編輯方法 編輯 方法
設定方法的權限 SetPermissions 方法

方法實例 方法實例描述特定方法如何使用一組特定的預設值來使用方法。

表格:方法執行個體的權限對應

若要允許使用者或群組... 提供下列權限... 上。。。
編輯方法執行個體 編輯 方法執行個體
執行方法執行個體 執行 方法執行個體
設定方法執行個體的權限 SetPermissions 方法執行個體
  • 開發環境 當您開發 Business Connectivity Services 解決方案,包括外部內容類型,以及 SharePoint 的任何應用程式和連線設定物件時,最佳做法是使用與生產環境不同的開發環境。 在開發環境中,您可以將更高層級的權限授與開發人員,而這些權限與在實際執行環境中授與的權限不同。

  • 使用者環境 所有外部資料的存取都必須透過外部清單、外部資料欄、商務資料網頁組件、SharePoint 應用程式或 Office。 對於 SharePoint 應用程式,您可以選擇由 Office 與 SharePoint 相關應用程式來施行權限。 在此情況下,若使用者可以存取 Office 與 SharePoint 相關應用程式,便可以存取 Office 與 SharePoint 相關應用程式中呈現的所有外部資料。 您必須與網站和網站集合管理員合作,以規劃和實作解決方案中外部數據的許可權。

另請參閱

概念

SharePoint Server 中的 Business Connectivity Services 概觀