身為 Microsoft 365 中的 SharePoint 系統管理員 ,您可以暫時允許自定義腳本,讓使用者使用一些「傳統」功能進行操作,例如「腳本編輯器網頁元件」 () 變更網站和頁面的外觀、風格和行為,以符合組織目標或個別需求。 如果您允許自訂指令碼,則所有對網站或頁面具有 「新增和自訂頁面」 權限的使用者都可以新增他們想要的任何指令碼。 (根據預設,建立網站的使用者是網站擁有者,因此具有此權限 ) 。
注意事項
如需變更網站外觀和風格的簡單方法,請參閱 變更 SharePoint 網站的外觀。
根據預設,系統管理員使用 SharePoint 系統管理中心建立的幾乎所有網站,以及使用 New-SPOSite PowerShell 命令建立的所有網站,都不允許腳本。 這同樣適用於 OneDrive、網站使用者自行建立、新式小組和通訊網站,以及組織的根網站。 如需自訂腳本安全性影響的詳細資訊,請參閱 允許自訂腳本的安全性考慮。
重要事項
如果 SharePoint 是在 2015 年之前為您的組織設定的,您的自訂腳本設定可能仍會設定為 [未設定] ,即使在 SharePoint 系統管理中心中,它們似乎已設定為防止使用者執行自訂腳本。 在此情況下,使用者無法在 SharePoint 網站之間以及 OneDrive 與 SharePoint 之間複製專案。 在 SharePoint 系統管理中心的 [設定] 頁面上,若要接受出現的自定義腳本設定,請選取 [ 確定],然後啟用跨網站複製。 如需在 OneDrive 和 SharePoint 之間複製項目的詳細資訊,請參閱 在 OneDrive 和 SharePoint 網站之間複製檔案和資料夾。
暫時允許 SharePoint 網站上的自訂腳本
注意
在允許在組織中的網站上使用自訂指令碼之前,請確定您瞭解 安全性影響。
若要立即允許特定網站 (先前稱為 網站集合) 上的自訂腳本,請遵循下列步驟:
下載最新的 SharePoint Online 管理命令介面。
注意事項
如果您安裝了舊版的 SharePoint Online 管理命令介面,請移至 新增或移除程式 並解除安裝 SharePoint Online 管理命令介面。
在 Microsoft 365 中以 SharePoint 系統管理員 身分連線到 SharePoint。 若要了解如何進行,請參閱開始使用 SharePoint Online 管理命令介面。
執行下列指令:
Set-SPOSite <SiteURL> -DenyAddAndCustomizePages 0或使用 PnP.PowerShell Cmdlet Set-PnPSite
Set-PnPSite -Identity <SiteURL> -NoScriptSite $false
允許自訂指令碼的變更會在 24 小時內覆寫為「不允許」。
注意事項
無法允許個別使用者的 OneDrive 上的自訂腳本。
從 SharePoint 系統管理中心管理自定義腳本
租用戶系統管理員在 SharePoint 租用戶管理中有一組可用的工具,可管理其組織內的自定義腳本。 具體而言,租用戶系統管理員可以:
- 驗證自訂指令碼狀態
- 變更自訂指令碼設定
- 保存自訂指令碼設定
驗證自訂指令碼狀態
新的 自訂指令碼 欄現在可在 [ 使用中網站 ] 頁面中的 [ 網站 ] 下。
該欄可以添加到任何視圖中。 新的 自定義腳本允許網站 也可用來輕鬆存取啟用自定義腳本的所有網站:
變更自訂指令碼設定
在 [ 作用中網站 ] 頁面中,選取網站,然後在 [設定>] [自訂指令碼] 下,您可以編輯是否允許或封鎖自訂指令碼。
您可以控制特定網站的自訂指令碼設定;決定是否要允許或封鎖特定網站上的自訂指令碼:
根據預設,對特定網站的自訂指令碼設定的任何變更最多只會持續 24 小時。 之後,該特定網站的設定會重設為 [已封鎖]。
重要事項
如果網站已鎖定,因為它處於 ReadOnly 或 *NoAccess」 狀態,則自訂腳本設定的變更不會反映在 SharePoint 租用戶管理中。 但是,一旦網站狀態返回 解鎖,自訂指令碼設定就會立即變成「不允許」,然後任何使用者都可以存取網站
封鎖自訂指令碼時受影響的功能
當使用者無法在 OneDrive 或他們建立的傳統小組網站上執行自訂指令碼時,網站系統管理員和擁有者就無法建立新專案,例如範本、解決方案、佈景主題和說明檔案集合。 如果您過去允許自訂指令碼,則已建立的專案仍可運作。
當使用者無法執行自訂指令碼時,下列網站設定無法使用:
| 網站特色 | 行為 | 附註 |
|---|---|---|
| 將網站另存為模板 | 在網站設定中不再可用 | 使用者仍然可以從自訂指令碼被封鎖之前建立的範本建置網站。 |
| 將文件庫儲存為範本 | 在「資料庫設定」中不再可用 | 使用者仍然可以從自訂指令碼遭到封鎖之前建立的範本建置文件庫。 |
| 將清單儲存為範本 | 清單設定中不再可用 | 使用者仍然可以從自訂指令碼被封鎖之前建立的範本建立清單。 |
| 主題圖庫 | 在網站設定中不再可用 | 使用者仍然可以使用在自訂指令碼被封鎖之前建立的主題。 |
| 說明設定 | 在網站設定中不再可用 | 使用者仍然可以存取自訂指令碼被封鎖之前可用的說明檔案集合。 |
| 沙箱解決方案 | 解決方案庫不再在網站設定中使用 | 使用者無法新增、管理或升級沙箱解決方案。 他們仍然可以執行在封鎖自訂指令碼之前部署的沙箱解決方案。 |
| SharePoint Designer | 非 HTML 的頁面無法再更新。 處理清單: 建立表單 和 自訂動作 將不再有效。 子網站: 新增子網站 和 刪除網站會 重新導向至瀏覽器中的「 網站設定」 頁面。 資料來源: 屬性按鈕 不再可用。 |
使用者仍然可以開啟一些資料來源。 若要在 SharePoint Designer 中開啟不允許自訂腳本的網站,您必須先開啟允許自訂腳本的網站。 |
| 可能包含指令碼的操作檔案 | 下列檔案類型無法在文件庫中上傳、複製、移動或開啟。 .ASMX 域名 .ASCX 域名 .aspx .htc 域名 。罐 。主人 .swf .xap 域名 .xsf 域名 |
文件庫中的現有檔案不受影響。 |
| 將文件上傳至內容類型 | 嘗試將文件範本附加至內容類型時,會拒絕存取訊息。 | 建議您使用文件庫文件範本。 |
| 發佈 SharePoint 2010 工作流程 | 嘗試發佈 SharePoint 2010 工作流程時,會存取拒絕的訊息。 | |
| 自訂動作 | 嘗試建立新的自訂動作時存取拒絕的訊息。 | 現有的自訂動作不會受到影響。 |
| 設計管理員 | 嘗試建立新的版面配置、主版頁面或設計套件時,會存取拒絕的訊息。 | 使用者仍然可以使用在自訂指令碼被封鎖之前建立的頁面設計。 |
預設情況下,當使用者無法執行自訂指令碼時,不允許更新網站屬性包。 租用戶系統管理員可以執行下列命令來變更該行為
Set-SPOTenant -AllowWebPropertyBagUpdateWhenDenyAddAndCustomizePagesIsEnabled $True
如需詳細資訊,請參閱 AllowWebPropertyBagUpdateWhenDenyAddAndCustomizePagesIsEnabeld 選項。
當您防止網站系統管理員和擁有者執行自定義腳本時,無法使用下列網頁元件和功能。
| 網頁組件類別 | 網頁組件 |
|---|---|
| 商務資料 | 商務資料動作 商務資料項目 商務資料項目建立幫手 商務資料清單 商務資料相關清單 Excel Web Access 指標詳細資料 狀態清單 Visio Web Access |
| Community | 關於這個社區 加入 我的會員資格 工具 發生了什麼 |
| 內容彙總 | 類別 專案摘要 相關文件 RSS 檢視器 網站彙總工具 類別中的網站 字詞屬性 時間表 WSRP 檢視器 XML 檢視器 |
| Document Sets | 文件集內容 文件集屬性 |
| 進階 | 嵌入 |
| 表單 | HTML 表單網頁組件 |
| 媒體及內容 | 內容編輯器 指令碼編輯器 Silverlight 網頁組件 頁面檢視器 (無法設定網頁URL) |
| 搜尋 | 精煉 搜尋框 搜尋導覽 搜尋結果 |
| 搜尋導向內容 | Catalog-Item 重複使用 |
| 社交共同作業 | 連絡人詳細資料 記事區 組織瀏覽器 網站摘要 標籤雲 使用者工作 |
| 主版頁面圖庫 | 無法建立或編輯主版頁面 |
| 發佈網站 | 無法建立或編輯主版頁面和頁面版面配置 |
此外,將 requiresCustomScript 值設定為 true 的 SharePoint 架構網頁組件的行為如下:
- 網頁組件無法在網頁組件選擇器中使用。
- 當允許執行的自訂腳本時,新增至頁面的網頁組件的每個實例將不再出現在這些頁面中。 作者仍然可以在編輯頁面時移除它們。
將指令碼設定變更傳達給使用者的最佳做法
在您先前允許的網站上阻止自訂指令碼之前,建議您提前傳達變更,以便使用者瞭解其影響。 否則,習慣於變更佈景主題或在其網站上新增網頁組件的使用者會突然無法看到下列錯誤訊息。
提前傳達變更可以減少使用者的挫折感和支援電話。