Skip to content

Commit 9a794be

Browse files
authored
Merge pull request #176960 from meenalsri/RbacUpdates
Changes to remove allow pipeline control from UI
2 parents a311c92 + c42cf9c commit 9a794be

File tree

6 files changed

+5
-47
lines changed

6 files changed

+5
-47
lines changed

articles/synapse-analytics/security/how-to-grant-workspace-managed-identity-permissions.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,6 @@ This article teaches you how to grant permissions to the managed identity in Azu
1919
>[!NOTE]
2020
>This workspace managed identity will be referred to as managed identity through the rest of this document.
2121
22-
## Grant managed identity permissions to the dedicated SQL pool
23-
24-
The managed identity grants permissions to the dedicated SQL pools in the workspace. With permissions granted, you can orchestrate pipelines that perform dedicated SQL pool-related activities. When you create an Azure Synapse workspace using Azure portal, you can grant the managed identity CONTROL permissions on dedicated SQL pools.
25-
26-
Select **Security** when you're creating your Azure Synapse workspace. Then select **Allow pipelines (running as workspace's system assigned identity) to access SQL pools.**.
27-
28-
![CONTROL permission on dedicated SQL pools](./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-16.png)
29-
3022
## Grant the managed identity permissions to ADLS Gen2 storage account
3123

3224
An ADLS Gen2 storage account is required to create an Azure Synapse workspace. To successfully launch Spark pools in Azure Synapse workspace, the Azure Synapse managed identity needs the *Storage Blob Data Contributor* role on this storage account . Pipeline orchestration in Azure Synapse also benefits from this role.

articles/synapse-analytics/security/how-to-set-up-access-control.md

Lines changed: 4 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -176,16 +176,15 @@ The workspace creator is automatically set up as the SQL Active Directory Admin
176176
177177
## STEP 7: Grant access to SQL pools
178178

179-
By default, all users assigned the Synapse Administrator role are also assigned the SQL `db_owner` role on the dedicated and serverless SQL pools in the workspace.
179+
By default, all users assigned the Synapse Administrator role are also assigned the SQL `db_owner` role on the serverless SQL pools in the workspace.
180180

181-
Access to SQL pools for other users and for the workspace MSI is controlled using SQL permissions. Assigning SQL permissions requires that SQL scripts are run on each SQL database after creation. There are three cases that require you run these scripts:
181+
Access to SQL pools for other users is controlled using SQL permissions. Assigning SQL permissions requires that SQL scripts are run on each SQL database after creation. There are three cases that require you run these scripts:
182182
1. Granting other users access to the serverless SQL pool, 'Built-in', and its databases
183183
2. Granting any user access to dedicated SQL pool databases
184-
3. Granting the workspace MSI access to a SQL pool database to enable pipelines that require SQL pool access to run successfully.
185184

186185
Example SQL scripts are included below.
187186

188-
To grant access to a dedicated SQL pool database, the scripts can be run by the workspace creator or any member of the `workspace1_SQLAdmins` group or the `workspace1_SynapseAdministrators` group.
187+
To grant access to a dedicated SQL pool database, the scripts can be run by the workspace creator or any member of the `workspace1_SynapseAdministrators` group.
189188

190189
To grant access to the serverless SQL pool, 'Built-in', the scripts can be run by any member of the `workspace1_SQLAdmins` group or the `workspace1_SynapseAdministrators` group.
191190

@@ -263,36 +262,6 @@ To grant access to a **single** dedicated SQL pool database, follow these steps
263262

264263
After creating the users, run queries to validate that the serverless SQL pool can query the storage account.
265264

266-
### STEP 7.3: SQL access control for Azure Synapse pipeline runs
267-
268-
### Workspace managed identity
269-
270-
> [!IMPORTANT]
271-
> To run pipelines successfully that include datasets or activities that reference a SQL pool, the workspace identity needs to be granted access to the SQL pool.
272-
273-
For more information on the workspace managed identity, see [Azure Synapse workspace managed identity](synapse-workspace-managed-identity.md). Run the following commands on each SQL pool to allow the workspace managed system identity to run pipelines on the SQL pool database(s):
274-
275-
>[!note]
276-
>In the scripts below, for a dedicated SQL pool database, `<databasename>` is the same as the pool name. For a database in the serverless SQL pool 'Built-in', `<databasename>` is the name of the database.
277-
278-
```sql
279-
--Create a SQL user for the workspace MSI in database
280-
CREATE USER [<workspacename>] FROM EXTERNAL PROVIDER;
281-
282-
--Granting permission to the identity
283-
GRANT CONTROL ON DATABASE::<databasename> TO <workspacename>;
284-
```
285-
286-
This permission can be removed by running the following script on the same SQL pool:
287-
288-
```sql
289-
--Revoke permission granted to the workspace MSI
290-
REVOKE CONTROL ON DATABASE::<databasename> TO <workspacename>;
291-
292-
--Delete the workspace MSI user in the database
293-
DROP USER [<workspacename>];
294-
```
295-
296265
## STEP 8: Add users to security groups
297266

298267
The initial configuration for your access control system is complete.
@@ -315,7 +284,7 @@ Your workspace is now fully configured and secured.
315284

316285
This guide has focused on setting up a basic access control system. You can support more advanced scenarios by creating additional security groups and assigning these groups more granular roles at more specific scopes. Consider the following cases:
317286

318-
**Enable Git-support** for the workspace for more advanced development scenarios including CI/CD. While in Git mode, Git permissions will determine whether a user can commit changes to their working branch. Publishing to the service only takes place from the collaboration branch. Consider creating a security group for developers who need to develop and debug updates in a working branch but don't need to publish changes to the live service.
287+
**Enable Git-support** for the workspace for more advanced development scenarios including CI/CD. While in Git mode, Git permissions and Synapse RBAC will determine whether a user can commit changes to their working branch. Publishing to the service only takes place from the collaboration branch. Consider creating a security group for developers who need to develop and debug updates in a working branch but don't need to publish changes to the live service.
319288
320289
**Restrict developer access** to specific resources. Create additional finer-grained security groups for developers who need access only to specific resources. Assign these groups appropriate Azure Synapse roles that are scoped to specific Spark pools, Integration runtimes, or credentials.
321290
-235 KB
Loading
-1 MB
Loading

articles/synapse-analytics/security/synapse-workspace-access-control-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ The creator of a workspace is assigned as the Active Directory Admin on the work
7171

7272
**Serverless SQL pools**: Synapse Administrators are granted `db_owner` (`DBO`) permissions on the serverless SQL pool, 'Built-in'. To grant other users access to serverless SQL pools, Synapse administrators need to run SQL scripts on each serverless pool.
7373

74-
**Dedicated SQL pools**: Synapse Administrators are granted `db_owner` (`DBO`) permissions on the dedicated SQL pools. Active Directory Admin permission is granted to the creator of the workspace and the workspace MSI. Permission to access dedicated SQL pools isn't otherwise granted automatically. To grant other users or groups access to dedicated SQL pools, the Active Directory Admin must run SQL scripts against each dedicated SQL pool.
74+
**Dedicated SQL pools**: Synapse Administrators have full access to data in dedicated SQL pools, and the ability to grant access to other users. Synapse Administrators can also perform configuration and maintenance activities on dedicated pools, except for dropping databases. Active Directory Admin permission is granted to the creator of the workspace and the workspace MSI. Permission to access dedicated SQL pools isn't otherwise granted automatically. To grant other users or groups access to dedicated SQL pools, the Active Directory Admin or Synapse Administrator must run SQL scripts against each dedicated SQL pool.
7575

7676
See [How to set up Synapse Access Control](./how-to-set-up-access-control.md) for examples of SQL scripts for granting SQL permissions in SQL pools.
7777

articles/synapse-analytics/sql/how-to-pause-resume-pipelines.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,3 @@ Further details on Managed Identity for Azure Synapse, and how Managed Identity
222222
[Azure Synapse workspace managed identity](../security/synapse-workspace-managed-identity.md)
223223
224224
[Grant permissions to workspace managed identity](../security/how-to-grant-workspace-managed-identity-permissions.md)
225-
226-
[SQL access control for Synapse pipeline runs](../security/how-to-set-up-access-control.md#step-73-sql-access-control-for-azure-synapse-pipeline-runs)
227-

0 commit comments

Comments
 (0)