適用於: ✔️ SMB Azure 檔案共用
當您在儲存體帳戶上啟用身分識別來源之後,您必須設定共用層級權限,才能存取您的檔案共用。 您可以透過兩種方式來指派共用層級權限。 您可以將其指派給特定 Microsoft Entra 使用者/群組,也可以將其指派給所有已驗證的身分識別,作為預設共用層級權限。
選擇如何指派共用層級權限
Azure 檔案共用上的共用層級權限是針對 Microsoft Entra 使用者、群組或服務主體所設定,然而目錄和檔案層級權限則使用 Windows 存取控制清單 (ACL) 強制執行。 您必須將共用層級權限指派給代表應該具有存取權的使用者、群組或服務主體的 Microsoft Entra 身分識別。
大部分使用者都應該將共用層級權限指派給特定 Microsoft Entra 使用者或群組,然後使用 Windows ACL 在目錄和檔案層級進行細微的存取控制。 這是最嚴格且安全的設定。
有些情境我們建議改用 預設的共享層級權限 ,允許讀者、貢獻者、提升貢獻者、特權貢獻者或特權讀者存取所有認證身份:
- 你正在使用 Microsoft Entra Kerberos 來驗證僅限雲端的身份(預覽版)。
- 如果你無法將本地的 Active Directory 網域服務(AD DS)同步到 Microsoft Entra ID,可以使用預設的共享層級權限。 指派預設共用層級權限可讓您解決同步需求,因為您不需要在 Microsoft Entra ID 中指定身分識別的權限。 然後,您可以使用 Windows ACL,在您的檔案和目錄上強制執行細微的權限。
- 繫結至 AD 但未同步至 Microsoft Entra ID 的身分識別也可以利用預設的共用層級權限。 這會包括獨立受控服務帳戶 (sMSA)、群組受控服務帳戶 (gMSA) 以及電腦帳戶。
- 您所使用的內部部署 AD DS 會同步處理至與檔案共用部署所在 Microsoft Entra ID 不同的 Microsoft Entra ID。
- 這通常會在您管理多租用戶環境時發生。 使用預設的共用層級權限,可讓您略過 Microsoft Entra ID 混合式身分識別的需求。 您仍然可以使用 Windows ACL,在您的檔案和目錄上強制執行細微的權限。
- 您只想要在檔案和目錄層級使用 Windows ACL 來強制執行驗證。
適用於 Azure 檔案儲存體的 Azure RBAC 角色
Azure 檔案儲存體有內建的 Azure 角色型存取控制 (RBAC) 角色,其中一些角色允許將共用層級權限授與使用者和群組。 如果您使用 Azure 儲存體總管,您也需要讀者和資料存取角色,才能讀取/存取 Azure 檔案儲存體共用。
附註
因為電腦帳戶在 Microsoft Entra ID 中沒有身分識別,您無法為其設定 Azure RBAC。 不過,電腦帳戶可以使用預設共用層級權限存取檔案共用。
| 內建 Azure RBAC 角色 | 說明 |
|---|---|
| 儲存體檔案資料 SMB 共用讀者 | 允許 Azure 檔案共用中檔案和目錄的讀取存取權。 此角色類似於 Windows 檔案伺服器上的讀取檔案共用 ACL。 |
| 儲存體檔案資料 SMB 共用參與者 | 允許讀取、寫入及刪除 Azure 檔案共用上的檔案和目錄。 |
| 儲存體檔案資料 SMB 共用提升權限的參與者 | 允許對 Azure 檔案共用上的檔案和目錄,讀取、寫入、刪除和修改 ACL。 此角色類似於 Windows 檔案伺服器上的變更檔案共用 ACL。 |
| 儲存體檔案資料特殊權限參與者 | 藉由覆寫現有的 ACL,來允許讀取、寫入、刪除和修改 Azure 檔案共用中的 ACL。 |
| 儲存體檔案資料特殊權限讀者 | 透過覆寫現有的 ACL,允許在 Azure 檔案儲存體共用中進行讀取存取。 |
| 儲存體檔案資料 SMB 系統管理員 | 針對透過 SMB 的終端使用者,允許相當於儲存體帳戶金鑰的系統管理員存取權。 |
特定 Microsoft Entra 使用者或群組的共用層級權限
如果您想要使用特定 Microsoft Entra 使用者或群組來存取 Azure 檔案共用資源,該身分識別必須是同時存在於內部部署 AD DS 與 Microsoft Entra ID 中的混合式身分識別。 僅限雲端的身份必須使用預設的共享層級權限。
例如,假設您的 AD 中有使用者 user1@onprem.contoso.com,而且您以 user1@contoso.com 的身分使用 Microsoft Entra Connect Sync 或 Microsoft Entra Connect 雲端同步來同步至 Microsoft Entra ID。若要讓此使用者存取 Azure 檔案儲存體,您必須將共用層級權限指派給 user1@contoso.com。 相同的概念也適用於群組和服務主體。
重要事項
藉由明確宣告動作和資料動作,而非使用萬用 (*) 字元來指派權限。 如果資料動作的自訂角色定義包含萬用字元,則指派給該角色的所有身分識別都會授與所有可能資料動作的存取權。 這表示所有這類的身分識別,也會被授與任何新增至平台的新資料動作。 透過新動作或資料動作授與的額外存取權和權限,可能是使用萬用字元的客戶所不想要的行為。
若要讓共用層級權限可以運作,您必須:
- 如果您的 AD 來源是 AD DS 或 Microsoft Entra Kerberos,您必須使用內部部署 Microsoft Entra Connect Sync 應用程式或 Microsoft Entra Connect 雲端同步 (可從 Microsoft Entra 管理中心安裝的輕量型代理程式),將您本機 AD 中的使用者和群組同步處理至 Microsoft Entra ID。
- 將 AD 同步的群組新增至 RBAC 角色,使其可以存取您的儲存體帳戶。
秘訣
選用:想要將 SMB 伺服器共用層級權限移轉至 RBAC 權限的客戶,可以使用 Move-OnPremSharePermissionsToAzureFileShare PowerShell Cmdlet,將目錄和檔案層級權限從內部部署移轉至 Azure。 此 Cmdlet 會評估特定內部部署檔案共用的群組,然後使用三個 RBAC 角色,將適當的使用者和群組寫入 Azure 檔案共用。 叫用 Cmdlet 時,您會提供內部部署共用和 Azure 檔案共用的資訊。
您可以使用 Azure 入口網站、Azure PowerShell 或 Azure CLI,將內建角色指派給使用者的 Microsoft Entra 身分識別,以授與共用層級權限。
重要事項
分享層級的權限變更通常會在 30 分鐘內生效。 請預留時間讓權限生效,再用你的憑證連接文件共享。
若要使用 Azure 入口網站將 Azure 角色指派給 Microsoft Entra 身分識別,請遵循下列步驟:
- 在 Azure 入口網站中,移至您的檔案共用,或建立 SMB 檔案共用。
- 選取 [存取控制 (IAM)]。
- 選取 [新增角色指派]
- 在 [新增角色指派] 刀鋒視窗中,從 [角色] 清單中選取適當的內建角色。
- 對 [存取權指派對象] 保留預設設定:[Microsoft Entra 使用者、群組或服務主體]。 依名稱或電子郵件地址選取目標 Microsoft Entra 身分識別。 選取的 Microsoft Entra 身分識別必須是混合式身分識別,且不能是僅限雲端身分識別。 這表示相同的身分識別也會以 AD DS 表示。
- 選取 [儲存] 以完成角色指派作業。
所有已驗證身分識別的共用層級權限
您可以在儲存體帳戶上新增預設共用層級權限,而不是設定 Microsoft Entra 使用者或群組的共用層級權限。 指派給儲存體帳戶的預設共用層級權限會套用至儲存體帳戶中包含的所有檔案共用。
重要事項
如果您在儲存帳戶上設定預設分享層級權限,則不需要將內部部署身分識別同步到 Microsoft Entra ID。
當您設定預設共用層級權限時,所有已驗證的使用者和群組都會具有相同的權限。 系統會識別已驗證的使用者或群組,因為身分識別可針對與儲存體帳戶相關聯的內部部署 AD DS 進行驗證。 預設共用層級權限在初始化時設為 [無],表示不允許存取 Azure 檔案共用中的檔案或目錄。
若要使用 Azure 入口網站在儲存體帳戶上設定預設共用層級權限,請遵循下列步驟。
在 Azure 入口網站中,移至包含檔案共用的儲存體帳戶,然後選取 [資料儲存體] > [檔案共用]。
您必須在儲存體帳戶上啟用 AD 來源,才能指派預設共用層級權限。 如果您已經這麼做,請選取 [Active Directory],然後繼續進行下一個步驟。 否則,請選取 [Active Directory:未設定],在所需的 AD 來源之下選取 [設定],然後啟用 AD 來源。
啟用 AD 來源之後,步驟 2:設定共用層級權限將可供設定。 選取 [啟用所有已驗證使用者和群組的權限]。
從下拉式清單中選取要啟用的適當角色作為預設共用權限。
選取 [儲存]。
如果您同時使用這兩種設定,會發生什麼事
您也可以將權限指派給所有已驗證的 Microsoft Entra 使用者和特定的 Microsoft Entra 使用者/群組。 使用此設定時,特定使用者或群組將會有來自預設共用層級權限和 RBAC 指派的較高層級權限。 換句話說,假設您已將目標檔案共用上的儲存體檔案資料 SMB 讀者角色授與使用者。 您也將預設共用層級權限儲存體檔案資料 SMB 共用提升權限的參與者授與所有已驗證的使用者。 使用此設定時,該特定使用者將會有檔案共用的儲存體檔案資料 SMB 共用提升權限的參與者層級存取權。 較高層級的權限一律優先。
了解非同步使用者的群組式存取
未同步 Microsoft Entra ID 的使用者仍可透過群組成員身份存取 Azure 檔案分享。 如果使用者屬於與 Microsoft Entra ID 同步且有 Azure RBAC 角色指派的本地 AD DS 群組,該使用者會繼承該群組的權限,儘管他們在 Microsoft Entra 入口網站中不會出現為群組成員。
運作方式:
- 只有群組需要同步到 Microsoft Entra ID,不需要同步到個別使用者。
- 當使用者進行驗證時,內部部署的網域控制器會發出包含所有使用者群組成員資格的 Kerberos 票證。
- Azure Files 會讀取 Kerberos 工單中的群組安全識別碼(SID)。
- 如果這些群組中的任何一個與 Microsoft Entra ID 同步,Azure Files 會套用相應的 RBAC 角色指派。
授權依據是 Kerberos 驗證票證中列出的群組,而非 Microsoft Entra 入口網站中顯示的內容。 未同步的使用者可透過同步的 AD DS 群組成員存取檔案分享,無需個別同步至 Microsoft Entra ID。
後續步驟
既然您已指派共用層級權限,您可以設定目錄和檔案層級權限。 請記住,共用層級權限最多可能需要三個小時才會生效。