This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
Microsoft Purview's protection policies help you safeguard sensitive data in Microsoft Fabric items, including SQL databases. In this article, we’ll explain how these policies override Microsoft Fabric item permissions for users, apps, and groups, limiting their actions within the database. If you are not familiar with how item permissions and workspace roles work in SQL databases, please refer to our earlier blog post: Manage access for SQL databases in Microsoft Fabric with workspace roles and item permissions.
Microsoft Purview is a family of data governance, risk, and compliance solutions that can help your organization govern, protect, and manage your entire data estate. Many customers have been using Microsoft Purview with Microsoft 365 and Power BI, for example, to protect sensitive information in SharePoint files, Power BI reports, or emails. Microsoft Fabric and Microsoft Purview working together extend those benefits to the world of data, including operational databases.
The comprehensive functionality of Microsoft Purview is accessible through various applications within the Microsoft Purview portal. One such application is Microsoft Purview Information Protection, which allows compliance administrators in your organization to create sensitivity labels for categorizing Microsoft Fabric items. These administrators can then set up protection policies that control access to items based on their sensitivity labels. For example, they can restrict access to full-time employee or specific teams within the organization.
To start using Information Protection, your organization needs to meet several pre-requisites, for example, acquiring an appropriate license. For details, refer to Information protection in Fabric - Microsoft Fabric | Microsoft Learn.
Let’s review an example that explains how protection policies work for SQL database items. In the example, we’ll reference a database, named Database01, labeled with the Confidential label.
In the Microsoft Fabric portal, you can view an item's label from the flyout menu on the database page (Figure 1) or from the database settings, if you have the Read item permission. To apply a label, you need the Write item permission.
Govern_your_data_in_SQL_database_in_Microsoft_Fabric_with_protection_policies_in
Let’s assume there is a protection policy associated with the Confidential label in the organization. Access control settings are the key components defining each protection policy.
These settings include two sections:
Figure 2 shows the access control settings for the protection policy associated with the Confidential label in Microsoft Purview portal. Note that User1 is specified in the first section and User2 is specified in the latter section.
Govern_your_data_in_SQL_database_in_Microsoft_Fabric_with_protection_policies_in
In our example, assume User1, User2, and User3 (not listed in the policy) are all in the Contributor role in the workspace containing the database – see Figure 3. They all have both Read and Write permissions.
Govern_your_data_in_SQL_database_in_Microsoft_Fabric_with_protection_policies_in
Next, we will examine how the protection policy affects the permissions and capabilities of each user with regard to the labeled database.
User1 is listed in the Allow users to retain read access section, but not in the Allows users to retain full control section. Consequently, the policy revokes user's Write permission while retaining all other permissions.
As a result, User1:
Govern_your_data_in_SQL_database_in_Microsoft_Fabric_with_protection_policies_in
User2 appears in both policy sections, so the policy does not affect the user's effective permissions.
User3 is not listed in either section of the protection policy. Hence, User3 loses all database access, specifically:
Govern_your_data_in_SQL_database_in_Microsoft_Fabric_with_protection_policies_in
Microsoft Purview’s protection policies allow organizations to restrict access to Microsoft Fabric items, including SQL databases, based on their sensitivity labels. They work by effectively revoking the Read and/or Write item permissions granted in Microsoft Fabric, preventing users from connecting to the database (and reading data) and/or updating the database.
For simplicity the provided example demonstrates a policy that limits access for specific users. In practice, protection policies often limit access to groups, such as all employees or specific departments, to ensure sensitive data stays within the organization's or team's boundaries.
The current limitation in SQL database is that protection policies do not alter permissions granted via SQL native access controls (For information about SQL native access controls, see Manage access in SQL database in Microsoft Fabric with SQL native authorization controls.) For instance, if a user is added to the db_owner native database role, a protection policy will not remove their admin access.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.