概覽
工作區管理員可使用 SharePoint 控制功能,允許已批准的網站集合、封鎖指定的網站集合,以及排除帶有指定 Microsoft Purview 敏感度標籤的受支援檔案。
SharePoint 網站集合又稱 SPSite,可包含多個網站。集合規則適用於整個集合,但仍受每位使用者現有的 Microsoft 權限限制。規則不會讓使用者取得其在 Microsoft 365 中無權存取的內容。
網站限制適用於受支援的 SharePoint 搜尋、瀏覽、檔案擷取及讀寫操作。OneDrive 存取權須另行管理。
選擇符合您政策的存取模式:
允許的網站:當允許清單非空時,使用者只能透過應用程式存取清單中的網站集合。
封鎖的網站:使用者可存取封鎖清單以外的網站集合,但仍受其 Microsoft 權限限制。
同一時間只能有一份清單包含項目。空白的允許清單不會封鎖所有網站。當兩份清單均為空白時,SharePoint 網站限制會解除;Microsoft 權限及其他已設定的控制措施仍然適用。
可用性
這些控制功能及工作區管理 API 須先為您的工作區啟用。可用的控制功能包括網站集合允許清單、網站集合封鎖清單、CSV 網站匯入,以及敏感度標籤排除項目。
規則適用於整個網站集合。這些網站集合控制功能不包括將範圍精確限定於個別網站、資料夾或檔案,也不包括強制執行 Microsoft Sites.Selected 權限。
開始之前
確定機構要允許或封鎖的網站集合。
取得每個集合的 GUID。完整 Microsoft Graph 網站 ID 的中間值就是集合 GUID。管理 API 使用集合 GUID;使用者介面的 CSV 匯入工具也可從 Graph 網站 ID 三元組中擷取集合 GUID。
請在 ChatGPT 權限設定和 Microsoft Entra 中啟用 SharePoint 應用程式所需的 Microsoft 權限,包括
Sites.Read.All和Files.Read.All。這些控制措施在 OpenAI 端篩選可存取的內容,並不取代 Microsoft 的委派權限。如要設定敏感度標籤排除項目,請向您的 Microsoft 365 或 Purview 管理員索取每個未加密標籤的固定 GUID。
如要透過 API 進行管理,請取得工作區 UUID 和 ChatGPT 工作區管理員金鑰;若需要解析 SharePoint 網址,還須取得 Microsoft Graph 權杖。這兩種憑證各有不同用途。
關於 OpenAI Cookbook
OpenAI Cookbook 是 OpenAI 公開提供的範例程式碼及指南集。本文使用其中的 SharePoint 網站存取指南及 Python 管理指令碼,兩者均託管於 GitHub。您可在瀏覽器中開啟這些連結,閱讀相關檔案。如要執行指令碼,請先下載,並遵循指南中的設定及指令說明。
本文中的「Cookbook」均指該 SharePoint 指南,而「Cookbook 公用程式」則指連結中的 Python 指令碼。如需指令範例及透過 API 管理允許清單的資訊,請參閱這些資料。
設定 API 管理憑證
注意:只有工作區管理員才能建立管理員金鑰。了解更多。
建立 ChatGPT 工作區管理員金鑰
開啟 ChatGPT 管理控制台,然後選取目標工作區。
前往憑證,然後選取管理員金鑰。
建立具有受限權限的金鑰,並將應用程式設為寫入。
請妥善保管金鑰。此金鑰可授權讀取和變更您工作區的 SharePoint 政策。
所需權限為 chatgpt.enterprise.apps.write。請注意,API 平台金鑰及 Microsoft Graph 權杖均不能取代 ChatGPT 工作區管理員金鑰。
詳情請參閱:在「憑證」分頁中管理管理員金鑰。有關指令碼的憑證環境變數及安全輸入範例,請參閱 Cookbook 憑證指引。
取得 Microsoft Graph 權杖
請使用機構批准的 Microsoft 驗證程序。如要進行互動式查詢,而您的機構允許使用 Graph Explorer:
開啟 Microsoft Graph Explorer,並使用 SharePoint 網站所屬租戶內的工作帳戶登入。
透過修改權限或同意授予權限,選取讀取網站所需的權限,通常是
Sites.Read.All。如機構有此要求,請 Microsoft 管理員批准存取權。開啟存取權杖分頁,複製權杖以供 Microsoft Graph 使用。
有關 Microsoft 的指引,請參閱使用 Graph Explorer。
Graph 權杖用於將 SharePoint 網址解析為識別碼。ChatGPT 管理員金鑰用於讀取或更新 ChatGPT 政策。Cookbook 公用程式只有在執行解析網址的指令時才需要 Graph 權杖;讀取或清空現有允許清單只需 ChatGPT 管理員金鑰。
請勿將任何一種憑證放入原始碼版本控制系統、共用文件、螢幕截圖或記錄檔中。
查找網站集合 GUID
使用 SharePoint 網站網址
使用具有存取權的帳戶登入 Microsoft,然後開啟 SharePoint 網站。
在網站網址後加上
/_api/site/id。例如,使用https://contoso.sharepoint.com/sites/Finance/_api/site/id。複製回應中傳回的 GUID。
注意:本文的範例網域和識別碼均為佔位內容。
使用 Microsoft Graph
Microsoft Graph 傳回的網站 ID 包含三個以逗號分隔的部分:主機名稱、網站集合 GUID 和網站 GUID。設定網站集合規則時,請使用中間的值。不同的網站網址可能會解析為同一個集合 GUID。
有關查詢和識別碼的範例,請參閱了解 SharePoint 網站識別碼。如要在不變更 ChatGPT 政策的情況下解析多個網址,請使用 Cookbook 檢查指引和 Python 管理指令碼。
有關 Microsoft 的查詢要求,請參閱按路徑取得 SharePoint 網站。
管理允許和封鎖的網站集合
使用工作區控制設定
在工作區中開啟 SharePoint 應用程式的安全與保安控制。
在存取模式下,選取允許的網站或封鎖的網站。
將網站集合新增至所選清單。您也可以使用下述 CSV 上載功能。
檢視變更,然後選取儲存。
檢查已儲存的政策並測試設定。
透過管理 API 新增的網站會顯示於工作區控制設定中。在使用者介面中新增的網站也可透過 API 取得。您可透過任一方式新增或移除項目;新增網站時使用的方式不會限制日後的管理方式。
在允許和封鎖網站模式之間切換
同一時間只能有一份清單包含項目。在另一模式新增項目前,請先清空現有清單並儲存變更。然後選取另一模式,新增所需集合,再次儲存。
清空目前使用的清單並儲存後,存取權會立即變更。清空允許清單會解除其網站限制;清空封鎖清單則會解除其中的封鎖。請與其他管理員規劃切換安排,因為在清空一份清單與儲存另一份清單之間,可能會暫時允許存取最終政策將限制的內容。
從 CSV 上載網站集合
CSV 上載僅支援網站集合。如要按敏感度標籤排除檔案,請在排除的未加密敏感度標籤下新增標籤 GUID。
開啟安全與保安控制,然後選取所需的存取模式。
準備一份包含網站集合 GUID 或 Microsoft Graph 網站 ID 三元組的 CSV 檔案。整份檔案須使用同一種識別碼格式。
選取上載 CSV 檔案,然後選擇檔案。
檢視匯入結果及所選清單。繼續前,請先處理各列的錯誤或警告。
選取儲存以套用變更,然後檢查已儲存的清單。
CSV 要求及處理方式:
檔案大小上限:1 MB。
欄位標題可有可無。
每列填入一個集合 GUID,或使用 Graph 網站 ID 三元組。三元組可用引號括起並放在一個欄位中,或分置於三欄。
Graph 三元組會轉換為集合 GUID。匯入三元組不會建立僅針對特定網站的規則。
匯入會將項目新增至所選清單,並保留現有項目。重複的集合會合併;匯入數量顯示的是新加入的集合數目。
混用格式及格式錯誤的資料列會被拒絕。若上載的檔案僅包含網站網址,系統會顯示警告,且不會新增網站。請先將網址解析為集合 GUID。
上載只會變更清單草稿。只有選取儲存後,工作區存取權才會更新。
此處介紹的 CSV 上載功能用於管理網站集合。敏感度標籤排除項目須另行設定。
如果您有一份包含 SharePoint 網址的 CSV 檔案,Cookbook 公用程式的 CSV 工作流程可解析這些網址,並透過 API 管理允許清單。其 site_url 或 url 輸入格式及工作流程,與使用者介面的識別碼上載功能不同。
了解政策及請求限制
政策預設上限為 10,000 個網站集合。如需提高工作區政策上限,最高可增至 120,000 個網站集合,但須由 OpenAI 啟用;規劃更大規模的部署前,請先聯絡您的 OpenAI 團隊。
個別 API 變更操作及目前的 Cookbook 指令碼,均接受每個請求最多 10,000 個集合 GUID。提高工作區政策上限不會提高每個請求的上限。請按不重複的網站集合計數,而非來源網址:多個網址可能指向同一集合。
使用工作區管理 API
請在 https://api.chatgpt.com 使用您的工作區 UUID 和 ChatGPT 工作區管理員金鑰。
如需持續維護的允許清單指令及請求範例,請參閱 Cookbook:
變更前,請檢視目前的政策;變更後再次讀取政策,並測試變更後的存取權。移除最後一個允許的集合或清空允許清單,會解除該網站限制。除非您有意解除允許清單的限制,否則請勿傳送空白的新增請求。
公開的 Cookbook 公用程式目前僅管理允許清單。它不會管理封鎖清單或敏感度標籤排除項目。請使用上述工作區控制設定完成這些工作。
排除帶有敏感度標籤的檔案
查找標籤 GUID
請向您的 Microsoft 365 或 Purview 管理員索取目標標籤的固定 GUID。請使用 GUID,而非顯示名稱。
管理員可透過 Microsoft Graph 列出標籤。權杖須具備適用的 SensitivityLabel.Read 或 SensitivityLabels.Read.All 權限。核對目標標籤的名稱與其 ID 是否相符,並檢查其保護設定。
有關要求及範例,請參閱列出敏感度標籤及敏感度標籤屬性。這些標籤權限與解析 SharePoint 網址所用的網站讀取權限各自獨立。
新增標籤排除項目
開啟 SharePoint 應用程式的安全與保安控制。
在排除的未加密敏感度標籤下輸入每個未加密標籤的 GUID。
儲存設定,並使用帶有已排除標籤的受支援檔案進行測試。
SharePoint 應用程式的結果會排除帶有相符受支援標籤的檔案。帶有會套用加密的標籤的檔案,預設已被排除。
測試設定
請使用機構批准的測試檔案和帳戶。測試前,請確認同一個 Microsoft 帳戶可直接在 SharePoint 中存取每個檔案。
在允許的網站模式下,使用非空清單,分別檢查允許的集合及未列出的集合中的檔案。應只有允許的集合可透過應用程式存取。
在封鎖的網站模式下,分別檢查已封鎖集合及未封鎖集合中的檔案。已封鎖的集合應無法存取;未封鎖的集合仍受 Microsoft 權限及其他控制措施限制。
檢查帶有已排除敏感度標籤的受支援測試檔案。該檔案不應出現在應用程式的結果中。
透過 API 進行變更後,請比較使用者介面中已儲存的清單與 API 傳回的政策。
上載 CSV 後,請儲存變更並重新開啟控制設定,確認所需的集合已保留。
如果結果與預期政策不符,請檢查工作區、所選存取模式、已儲存清單、集合 GUID、標籤 GUID、檔案類型是否受支援,以及使用者的 Microsoft 權限。除非您確實希望產生相應的存取權變更,否則請勿為了排解問題而清空清單。
如需協助處理控制選項缺失或非預期的存取情況,請參閱:聯絡 OpenAI 支援團隊。請勿在支援請求中提供管理員金鑰或 Microsoft Graph 權杖。
了解限制
集合規則涵蓋整個網站集合。無法將存取範圍限定於某個子網站、資料夾或檔案。
SharePoint 網站限制不會自動限制 OneDrive 的存取。
敏感度標籤篩選僅適用於 Microsoft Graph 提供受支援標籤中繼資料的檔案,包括受支援的 Office 文件、PDF 和 MP4 檔案。
不支援敏感度標籤的檔案類型 (例如 TXT 和 CSV) 會被視為未加上標籤的檔案。只要其他權限允許,這些檔案仍可供存取。這項檔案類型限制與上載 CSV 來設定網站存取權無關。
CSV 上載功能和公開的範例公用程式均無法設定敏感度標籤排除項目。本文不涉及批次標籤管理 API。
即使政策已儲存或 API 回應成功,仍須使用目標帳戶測試存取權。
使用 Python 管理公用程式
完整的範例程式碼和指令均在 OpenAI Cookbook 中維護:
請使用 Python 3.10 或更新版本。此公用程式使用 Python 標準程式庫。執行前請先閱讀指南,並透過模擬執行檢視變更。
此公用程式目前會從環境變數讀取憑證;請遵循指南中的安全輸入指引。清空允許清單前,必須明確確認。移除操作則無須此項確認即可執行,因此請先透過模擬執行檢視移除操作。
有關重試行為和選用的冪等性金鑰,請參閱安全地重試政策更新。僅在工作區支援時使用冪等性金鑰;若發生結果不明的失敗,請檢查目前的政策。
此公用程式不會啟用工作區功能,也不會驗證政策是否生效。其離線測試使用模擬的 Microsoft Graph 和 ChatGPT 管理 API 呼叫。
涉及多個請求的變更不具原子性。如果移除多個集合的操作中途失敗,之前的移除操作可能已成功。重試前請先讀取目前的政策。
常見問題
網站控制功能會取代 Microsoft 權限嗎?
不會。應用程式仍會使用每位使用者的 Microsoft 權限。在向使用者和模型顯示回應之前,OpenAI 會先套用已設定的網站篩選規則。
空白的允許清單會封鎖所有網站嗎?
不會。空白的允許清單並不代表「全部封鎖」。如果封鎖清單包含項目,這些集合仍會被封鎖。當兩份清單均不包含任何項目時,存取權由使用者的 Microsoft 權限及其他已設定的控制措施決定。
管理 API 的變更會記錄下來嗎?
管理 API 的政策變更會透過工作區審計及合規記錄功能記錄下來。
