OneDrive 同步處理應用程式中的 B2B 同步允許使用者同步 Microsoft SharePoint 或 Microsoft OneDrive 中與其他組織共享的資料庫或資料夾。 這種情境通常被稱為企業對企業 (B2B) 協作。
Microsoft Entra 訪客帳號對 B2B 共同作業至關重要。 一個組織的訪客帳號會連結到另一個組織的會員帳號。 一旦建立訪客帳號,Microsoft 365 服務如 OneDrive 和 SharePoint 就能像組織內的成員一樣,授予網站和資料夾訪客權限。 由於兩個組織的帳號是連結的,使用者只需記住自己組織帳號的使用者名稱和密碼即可。 單一登入可存取自己組織及其他為其建立訪客帳號的組織內容。
重要事項
我們建議您啟用 SharePoint 與 Microsoft Entra B2B 的整合,以確保分享收件人在組織目錄中建立所需的 Microsoft Entra 訪客帳號。
B2B 同步有什麼要求?
對於組織外的人來同步共享函式庫和資料夾:
- 您必須為您的組織啟用外部共享。
- 您必須啟用網站或 OneDrive 的外部分享。
- 你必須在網站或資料夾層級與組織外的人分享內容。 如果資料夾被分享,必須透過需要登入的連結。
- 分享接收者必須在Microsoft Entra ID) 擁有Microsoft 365工作或學校帳號 (,且與內容租戶同雲端Microsoft Azure商業、Microsoft Azure Government或中國21Vianet Microsoft Azure。 (Microsoft Azure商業環境包含Microsoft 365商業及GCC雲端環境,Microsoft Azure Government包含GCC High及DoD雲端環境 )
- 任何 Microsoft Entra 條件存取政策都必須與訪客相容。 有關外部存取與相容性的更多資訊,請參閱 條件存取政策 。
- 若使用 19.086 之前的建置版本,則不得啟用 Microsoft 認證函式庫。
本文概述了 B2B Sync 的體驗,並更詳細說明這些需求。
有哪些已知的問題?
- 不支援不同雲端使用者間的同步。例如,Microsoft Azure 中國 21Vianet 租戶分享的內容,對於使用 Microsoft Azure 商業雲端的使用者來說,並未同步。
- 在 Mac 上,隨選檔案縮圖不會從外部機構網站顯示。 縮圖會正確顯示來自使用者自己組織的檔案。
- 在 Mac 上,如果訪客帳號的電子郵件格式與同步應用程式的表單不同,外部網站的內容就無法同步。 例如, first.last@fabrikam.com 對 alias@fabrikam.com。
- 在 Mac 上,外部內容可以放在使用者自己組織的本地電腦資料夾,而非外部組織名稱的資料夾。
- 來自外部組織的來賓帳號互動式認證介面並不支援同步客戶端。
B2B 同步體驗是如何運作的?
以下是「Contoso」有人與「Fabrikam」分享網站或資料夾後會發生什麼事的例子:
Fabrikam 收件人會收到如下郵件。
當收件人在電子郵件中選擇連結前往該共享項目時,他們需要選擇「組織帳號」才能以 Fabrikam 帳號登入。 在幕後,這會建立 Microsoft Entra ID 中的 Contoso 訪客帳號。
收件人可能需要輸入 Fabrikam 用戶名或密碼,才能查看該共享項目。 如果他們不想同步所有分享的內容,可以瀏覽到想要同步的函式庫或資料夾。要設定同步,他們需要選擇同步按鈕。
訪客的瀏覽器會跳出訊息詢問是否要開啟「Microsoft OneDrive」,而訪客必須允許此選項。
如果這是訪客第一次用 Fabrikam 帳號使用同步應用程式,他們需要登入。 電子郵件地址會自動設定為前述步驟中使用的 Fabrikam 帳號。 來賓需要選擇「登入」。
如果訪客用同一帳號登入 Windows,可能能在不輸入 Fabrikam 密碼的情況下登入同步應用程式。 否則他們必須輸入密碼。
來賓確認他們想在電腦上同步共享物品的位置。
注意事項
內容會被放入一個資料夾,資料夾名稱包含組織名稱 ( 此範例) 中為「SharePoint - Contoso」。 如果使用者同時同步 Fabrikam 的 SharePoint 內容,他們也會有一個「SharePoint - Fabrikam」資料夾。
訪客會繼續透過 OneDrive 同步處理應用程式設定。
訪客完成設定後,網站將開始同步。 使用者可以在通知區選擇藍色雲圖示,開啟 OneDrive 同步處理活動中心並查看檔案同步,或開啟包含檔案的本地資料夾,或在網頁瀏覽器中開啟 SharePoint 網站。
如何?為我的組織啟用外部共享?
為了讓你組織的使用者能與其他組織的夥伴分享,你必須在組織層級啟用外部分享。 您必須是 Microsoft 365 中的全域管理員或 SharePoint 管理員才能做到這點。 在組織層級啟用外部分享後,你可以逐個網站限制分享。 網站的設定可以和組織設定相同,也可以更嚴格,但不能更寬鬆。
你可以在兩個不同地方更改組織層級的分享設定 (兩者都控制同一個) :
- 在新 SharePoint 管理中心的分享頁面。 欲了解更多資訊,請參閱 變更組織層級的外部分享設定
- 在 Microsoft 365 系統管理中心,組織設定頁面>的 SharePoint 中。
重要事項
如果你允許 Anyone 連結 (有時稱為「匿名存取」連結) ,這些連結不會建立訪客帳號,因此外部分享者在收到該連結類型時無法使用 B2B 同步。
更多資訊請參閱 外部分享概覽。
控制外部共享
當你允許使用者將組織內容分享到外部時,你可以利用 Microsoft 365 中的多項功能來管理誰有權存取這些內容。 管理員和網站擁有者可以檢視權限並審核網站存取權限。 欲知詳情,請參閱「 搜尋與組織外人士分享的網站內容 」及 「開啟外部分享通知」。 你可以只對特定網域啟用外部分享,或是封鎖特定網域。 詳情請參見 「受限網域共享」。 你也可以只允許特定安全群組的成員對外分享。 詳情請參見 「開啟或關閉外部分享」。
我們建議為每個想對外分享的工作單元建立獨立 (網站,而不是) 子網站。 這樣一來,你可以清楚標註網站,表明組織外的人有權限存取,並避免無意間洩漏資訊。 對於個人用戶分享 OneDrive 內容,我們建議為不同專案或協作群組建立獨立資料夾。
你可以移除訪客對某個網站或資料夾的權限,或者刪除訪客帳號,讓訪客從組織所有內容中移除他們的權限。
重要事項
移除權限後,任何同步的內容仍會保留在使用者的電腦上。
如何?啟用網站的外部共享?
要查看或更改任何網站的分享設定,請使用新的 SharePoint 管理中心。
請前往 SharePoint 管理中心的 Active 網站,並用擁有你組織管理員權限的帳號登入。
注意事項
如果您使用由 21Vianet (中國) 提供的 Office 365,請登入 Microsoft 365 系統管理中心,然後瀏覽至 SharePoint 系統管理中心,並開啟 [使用中網站] 頁面。
視需要自訂檢視以顯示外部分享欄位。
如果需要, 可以更改網站的外部分享設定。
如何?確保條件存取政策相容?
作為管理員,你可以在租戶啟用多種條件存取政策。 當訪客存取租戶內容時,您可能需要調整這些政策,確保訪客能夠取得存取權限。
目前同步客戶端在同步外部內容時不支援互動式認證介面。 任何需要登入介面的政策,例如多重身份驗證( (MFA)、多重驗證) 或使用條款 () 提示,都會阻止該租戶的外部內容同步。 如果租戶管理員在來賓開始從該租戶同步之前部署了此政策,使用者將無法建立同步關係。 如果該政策是在來賓同步租戶內容後才部署,該來賓將收到錯誤,無法繼續與租戶同步。
租戶可不時更新其使用條款 (條款(TOU)) 。 政策可透過互動式驗證提示觸發使用者查看並接受更新後的 TOU。 由於 Sync 不支援外部租戶登入介面,Sync 表示無法同步外部網站的內容。
裝置合規要求使用者機器由租戶管理,並持續符合最新需求。 對來賓來說,他們的機器很可能由自己的組織管理,因此不適合要求內容共享租戶管理他們的機器。
基於位置的條件存取政策通常用於強制執行更多要求,例如當使用者未從可信地點 ((如租戶辦公室網路) )連線時。 通常在訪客情況下,客戶端機器不會位於受信任的位置,而 sync 不支援多重驗證,你很可能不希望這個政策適用於訪客。
欲了解更多資訊,請參閱 外部身份的認證與條件存取。
分享的方法有哪些?
SharePoint 和 OneDrive 中的網站與資料夾可以用不同方式分享:
- 如果使用者正在同步資料夾,可以在檔案總管中右鍵點擊該資料夾來分享。
- 使用者可以前往網頁上的 SharePoint 網站或資料夾,選擇分享按鈕來分享。
- 使用者可以在 SharePoint 和 OneDrive 行動應用程式中分享網站和資料夾。
- 管理員可以建立訪客帳號,並使用管理中心或 PowerShell 將訪客加入網站。
注意事項
欲了解更多這些方法,請參閱「 學習如何分享網站 」及 「學習如何分享資料夾」。
B2B Sync 適用於所有這些分享方式。 它僅有以下幾項要求:
- 要讓訪客同步共享內容,內容必須在網站或資料夾層級分享。 訪客無法同步像 Office 應用程式) 那樣個別分享的檔案 (。
- B2B 同步只有在組織內建立訪客帳號,且收件人擁有 Microsoft Entra 帳號時才有效。 當使用者透過建立「任何人連結」(也稱為「匿名存取」連結) ()分享,或是與擁有Microsoft帳號或其他個人帳號的人分享時,該系統無法運作。
如何?將訪客加入 SharePoint 網站?
作為 Microsoft 365 的管理員,你可以透過在 Microsoft Entra 系統管理中心建立訪客,然後分別加入 SharePoint 團隊網站,或加入已擁有你想分享網站權限的安全群組,與組織外部的人分享。 如果你是透過進階權限頁面 (而非分享網站按鈕授予權限) ,你需要通知訪客你已授權他們使用該網站。 他們不會收到邀請郵件。
重要事項
如果你使用進階權限頁面,我們建議在網站層級授予權限,而非文件庫或資料夾層級。
如何?使用 PowerShell 來批量建立訪客帳號?
如果你需要建立並授權多個訪客帳號,可以使用以下 PowerShell 腳本,建立訪客帳號並授予他們網站權限。 腳本會接收一個 CSV (逗號分隔值的) 檔案作為輸入,檔案內包含使用者顯示名稱和電子郵件地址的清單。 每個名字和電子郵件地址都會建立一個訪客帳號,並將該帳號加入安全群組以授予權限。 腳本設計是讓你能在後續執行時,將輸出的 CSV 作為腳本的輸入。 這樣你就可以新增更多使用者到你的 CSV 檔案,或重新嘗試建立失敗的帳號。
注意事項
Azure AD 和 MSOnline PowerShell 模組自 2024 年 3 月 30 日起已不再使用。 想了解更多,請閱讀 退役更新。 此後,這些模組的支援僅限於遷移至 Microsoft Graph PowerShell SDK 及安全修補。 被淘汰的模組將持續運作至 2025 年 3 月 30 日。
我們建議遷移到 Microsoft Graph PowerShell,以便與Microsoft Entra ID (先前的 AD) Azure互動。 關於常見的移民問題,請參閱 移民常見問題集。
請注意版本 1.0。MSOnline 的 x 可能會在 2024 年 6 月 30 日後出現中斷。
當使用者加入 Microsoft Entra 群組時,他們應該會收到歡迎加入群組的電子郵件。 執行腳本後,你需要寄信給使用者,附上你授權的 SharePoint 網站連結。 當他們選擇連結時,會跳出以下介面以接受邀請條款。 一旦他們接受,就會被帶到你分享給他們的網站。 接著他們可以選擇同步按鈕,開始將網站檔案同步到電腦或 Mac。
# first line of InviteGuests.ps1 PowerShell script
# requires latest AzureADPreview
# Get-Module -ListAvailable AzureAD*
# Uninstall-Module AzureAD
# Uninstall-Module AzureADPreview
# Install-Module AzureADPreview
# customizable properties for this script
$csvDir = ''
$csvInput = $csvDir + 'BulkInvite.csv'
$csvOutput = $csvDir + 'BulkInviteResults.csv'
$domain = 'YourTenantOrganization.onmicrosoft.com'
$admin = "admin@$domain"
$redirectUrl = 'https://YourTenantOrganization.sharepoint.com/sites/SiteName/'
$groupName = 'SiteName'
# CSV file expected format (with the header row):
# Name,Email
# Jane Doe,jane@contoso.com
$csv = import-csv $csvInput
# will prompt for credentials for the tenantorganization admin account
# (who has permissions to send invites and add to groups)
Connect-AzureAD -TenantDomain $domain -AccountId $admin
$group = (Get-AzureADGroup -SearchString $groupName)
foreach ($row in $csv)
{
Try
{
if ((Get-Member -inputobject $row -name 'error') -and `
($row.error -eq 'success'))
{
$out = $row #nothing to do, user already invited and added to group
}
else
{
echo ("name='$($row.Name)' email='$($row.Email)'")
$inv = (New-AzureADMSInvitation -InvitedUserEmailAddress $row.Email -InvitedUserDisplayName $row.Name `
-InviteRedirectUrl $redirectUrl -SendInvitationMessage $false)
$out = $row
$out|Add-Member -MemberType ScriptProperty -force -name 'time' -Value {$(Get-Date -Format u)}
$out|Add-Member -MemberType ScriptProperty -force -name 'status' -Value {$inv.Status}
$out|Add-Member -MemberType ScriptProperty -force -name 'userId' -Value {$inv.InvitedUser.Id}
$out|Add-Member -MemberType ScriptProperty -force -name 'redeemUrl' -Value {$inv.inviteRedeemUrl}
$out|Add-Member -MemberType ScriptProperty -force -name 'inviteId' -Value {$inv.Id}
# this will send a welcome to the group email
Add-AzureADGroupMember -ObjectId $group.ObjectId -RefObjectId $inv.InvitedUser.Id
$out|Add-Member -MemberType ScriptProperty -force -name 'error' -Value {'success'}
}
}
Catch
{
$err = $PSItem.Exception.Message
$out|Add-Member -MemberType ScriptProperty -force -name 'error' -Value {$err}
}
Finally
{
$out | export-csv -Path $csvOutput -Append
}
}
# for more information please see
# https://learn.microsoft.com/azure/active-directory/b2b/b2b-tutorial-bulk-invite
# end of InviteGuests.ps1 powershell script
如需詳細資訊,請參閱:
當訪客失去使用權時會發生什麼事?
如果某人的訪客帳號被刪除或其分享內容的權限被移除,同步應用程式會顯示錯誤訊息。
會跳出通知表示圖書館無法同步。
通知區的 OneDrive 圖示顯示錯誤。
當訪客選擇該圖示時,他們會在活動中心看到錯誤橫幅。
如何?防止 B2B 同步?
你可以在你的組織中,透過在使用者的 Windows PC 或 Mac 上設定政策值來阻擋外部同步,阻止使用者使用 B2B 同步。
新的 BlockExternalSync 設定在 adm\OneDrive.admx 和 OneDrive.adml 檔案中描述,這些檔案是 OneDrive 同步處理版本 19.086.* 或更高版本的一部分。 如果你用 ADM 管理同步應用程式政策,請像平常一樣匯入新檔案,這樣才能看到新的設定。
如果你使用其他管理系統部署政策到使用者的 Windows 電腦,請使用以下等效指令來防止 B2B 同步:
reg add "HKLM\SOFTWARE\Policies\Microsoft\OneDrive" /v BlockExternalSync /t REG_DWORD /d 1
在搭載 Apple Store 版本 OneDrive 的 Mac 上,請使用以下等效指令來防止 B2B 同步:
defaults write com.microsoft.OneDrive-mac BlockExternalSync -bool YES
在搭載獨立版 OneDrive 的 Mac 上,請使用以下等效指令來防止 B2B 同步:
defaults write com.microsoft.OneDrive BlockExternalSync -bool YES