You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/machine-learning/how-to-assign-roles.md
+14-14Lines changed: 14 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ This article explains how to manage access (authorization) to Azure Machine Lear
31
31
32
32
## Default roles
33
33
34
-
Azure Machine Learning workspaces have built-in roles that are available by default. When adding users to a workspace, they can be assigned one of the following roles.
34
+
Azure Machine Learning workspaces have built-in roles that are available by default. When you add users to a workspace, they can be assigned one of the following roles.
35
35
36
36
| Role | Access level |
37
37
| --- | --- |
@@ -41,13 +41,13 @@ Azure Machine Learning workspaces have built-in roles that are available by defa
41
41
|**Contributor**| View, create, edit, or delete (where applicable) assets in a workspace. For example, contributors can create an experiment, create or attach a compute cluster, submit a run, and deploy a web service. |
42
42
|**Owner**| Full access to the workspace, including the ability to view, create, edit, or delete (where applicable) assets in a workspace. Additionally, you can change role assignments. |
43
43
44
-
In addition, [Azure Machine Learning registries](how-to-manage-registries.md) have an AzureML Registry User role that can be assigned to a registry resource to grant user-level permissions to data scientists. For administrator-level permissions to create or delete registries, use the Contributor or Owner role.
44
+
In addition, [Azure Machine Learning registries](how-to-manage-registries.md) have an Azure Machine Learning Registry User role that can be assigned to a registry resource to grant user-level permissions to data scientists. For administrator-level permissions to create or delete registries, use the Contributor or Owner role.
45
45
46
46
| Role | Access level |
47
47
| --- | --- |
48
48
|**AzureML Registry User**| Can get registries, and read, write, and delete assets within them. Can't create new registry resources or delete them. |
49
49
50
-
You can combine the roles to grant different levels of access. For example, you can grant a workspace user both AzureML Data Scientist and AzureML Compute Operator roles to permit the user to perform experiments while creating computes in a self-service manner.
50
+
You can combine the roles to grant different levels of access. For example, you can grant a workspace user both **AzureML Data Scientist** and **AzureML Compute Operator** roles to permit the user to perform experiments while creating computes in a self-service manner.
51
51
52
52
> [!IMPORTANT]
53
53
> Role access can be scoped to multiple levels in Azure. For example, someone with owner access to a workspace may not have owner access to the resource group that contains the workspace. For more information, see [How Azure RBAC works](/azure/role-based-access-control/overview#how-azure-rbac-works).
@@ -74,13 +74,13 @@ az role assignment create --role "Contributor" --assignee "[email protected]" --re
74
74
75
75
You can use Microsoft Entra security groups to manage access to workspaces. This approach has following benefits:
76
76
* Team or project leaders can manage user access to workspace as security group owners, without needing Owner role on the workspace resource directly.
77
-
* You can organize, manage and revoke users' permissions on workspace and other resources as a group, without having to manage permissions on user-by-user basis.
77
+
* You can organize, manage, and revoke users' permissions on workspace and other resources as a group, without having to manage permissions on user-by-user basis.
78
78
* Using Microsoft Entra groups helps you to avoid reaching the [subscription limit](/azure/role-based-access-control/troubleshoot-limits) on role assignments.
79
79
80
80
To use Microsoft Entra security groups:
81
81
1.[Create a security group](/azure/active-directory/fundamentals/active-directory-groups-view-azure-portal).
82
82
2.[Add a group owner](/azure/active-directory/fundamentals/how-to-manage-groups#add-or-remove-members-and-owners). This user has permissions to add or remove group members. The group owner isn't required to be group member, or have direct RBAC role on the workspace.
83
-
3. Assign the group an RBAC role on the workspace, such as AzureML Data Scientist, Reader, or Contributor.
83
+
3. Assign the group an RBAC role on the workspace, such as **AzureML Data Scientist**, **Reader**, or **Contributor**.
84
84
4.[Add group members](/azure/active-directory/fundamentals/how-to-manage-groups#add-or-remove-members-and-owners). The members gain access to the workspace.
85
85
86
86
## Create custom role
@@ -115,7 +115,7 @@ To create a custom role, first construct a role definition JSON file that specif
115
115
116
116
> [!TIP]
117
117
> You can change the `AssignableScopes` field to set the scope of this custom role at the subscription level, the resource group level, or a specific workspace level.
118
-
> The above custom role is just an example, see some suggested [custom roles for the Azure Machine Learning service](#customroles).
118
+
> The previous custom role is just an example, see some suggested [custom roles for the Azure Machine Learning service](#customroles).
119
119
120
120
This custom role can do everything in the workspace except for the following actions:
121
121
@@ -172,7 +172,7 @@ You need to have permissions on the entire scope of your new role definition. Fo
172
172
173
173
## Use Azure Resource Manager templates for repeatability
174
174
175
-
If you anticipate that you'll need to recreate complex role assignments, an Azure Resource Manager template can be a significant help. The [machine-learning-dependencies-role-assignment template](https://github.com/Azure/azure-quickstart-templates/tree/master//quickstarts/microsoft.machinelearningservices/machine-learning-dependencies-role-assignment) shows how role assignments can be specified in source code for reuse.
175
+
If you anticipate that you need to recreate complex role assignments, an Azure Resource Manager template can be a significant help. The [machine-learning-dependencies-role-assignment template](https://github.com/Azure/azure-quickstart-templates/tree/master//quickstarts/microsoft.machinelearningservices/machine-learning-dependencies-role-assignment) shows how role assignments can be specified in source code for reuse.
176
176
177
177
## Common scenarios
178
178
@@ -223,7 +223,7 @@ You can make custom roles compatible with both V1 and V2 APIs by including both
223
223
224
224
### Create a workspace using a customer-managed key
225
225
226
-
When using a customer-managed key (CMK), an Azure Key Vault is used to store the key. The user or service principal used to create the workspace must have owner or contributor access to the key vault.
226
+
When you use a customer-managed key (CMK), an Azure Key Vault is used to store the key. The user or service principal used to create the workspace must have owner or contributor access to the key vault.
227
227
228
228
If your workspace is configured with a **user-assigned managed identity**, the identity must be granted the following roles. These roles allow the managed identity to create the Azure Storage, Azure Cosmos DB, and Azure Search resources used when using a customer-managed key:
229
229
@@ -232,7 +232,7 @@ If your workspace is configured with a **user-assigned managed identity**, the i
232
232
-`Microsoft.DocumentDB/databaseAccounts/write`
233
233
234
234
235
-
Within the key vault, the user or service principal must have create, get, delete, and purge access to the key through a key vault access policy. For more information, see [Azure Key Vault security](/azure/key-vault/general/security-features#controlling-access-to-key-vault-data).
235
+
Within the key vault, the user or service principal must have **create**, **get**, **delete**, and **purge** access to the key through a key vault access policy. For more information, see [Azure Key Vault security](/azure/key-vault/general/security-features#controlling-access-to-key-vault-data).
236
236
237
237
### User-assigned managed identity with Azure Machine Learning compute cluster
238
238
@@ -244,8 +244,8 @@ To perform MLflow operations with your Azure Machine Learning workspace, use the
244
244
245
245
| MLflow operation | Scope |
246
246
| --- | --- |
247
-
| (V1) List, read, create, update or delete experiments |`Microsoft.MachineLearningServices/workspaces/experiments/*`|
248
-
| (V2) List, read, create, update or delete jobs |`Microsoft.MachineLearningServices/workspaces/jobs/*`|
247
+
| (V1) List, read, create, update, or delete experiments |`Microsoft.MachineLearningServices/workspaces/experiments/*`|
248
+
| (V2) List, read, create, update, or delete jobs |`Microsoft.MachineLearningServices/workspaces/jobs/*`|
249
249
| Get registered model by name, fetch a list of all registered models in the registry, search for registered models, latest version models for each requests stage, get a registered model's version, search model versions, get URI where a model version's artifacts are stored, search for runs by experiment IDs |`Microsoft.MachineLearningServices/workspaces/models/*/read`|
250
250
| Create a new registered model, update a registered model's name/description, rename existing registered model, create new version of the model, update a model version's description, transition a registered model to one of the stages |`Microsoft.MachineLearningServices/workspaces/models/*/write`|
251
251
| Delete a registered model along with all its version, delete specific versions of a registered model |`Microsoft.MachineLearningServices/workspaces/models/*/delete`|
@@ -448,7 +448,7 @@ Allows you to perform all operations within the scope of a workspace, **except**
448
448
* Creating a new workspace
449
449
* Assigning subscription or workspace level quotas
450
450
451
-
The workspace admin also cannot create a new role. It can only assign existing built-in or custom roles within the scope of their workspace:
451
+
The workspace admin also can't create a new role. It can only assign existing built-in or custom roles within the scope of their workspace:
452
452
453
453
*workspace_admin_custom_role.json* :
454
454
@@ -475,15 +475,15 @@ The workspace admin also cannot create a new role. It can only assign existing b
475
475
476
476
### Data labeling
477
477
478
-
There is a built-in role for data labeling, scoped only to labeling data. The following custom roles give other levels of access for a data labeling project.
478
+
There's a built-in role for data labeling, scoped only to labeling data. The following custom roles give other levels of access for a data labeling project.
Here are a few things to be aware of while you use Azure RBAC:
485
485
486
-
- When you create a resource in Azure, such as a workspace, you're not directly the owner of the resource. Your role is inherited from the highest scope role that you're authorized against in that subscription. As an example if you're a Network Administrator, and have the permissions to create a Machine Learning workspace, you would be assigned the Network Administrator role against that workspace, and not the Owner role.
486
+
- When you create a resource in Azure, such as a workspace, you're not directly the owner of the resource. Your role is inherited from the highest scope role that you're authorized against in that subscription. As an example, if you're a Network Administrator and have the permissions to create a Machine Learning workspace, you would be assigned the **Network Administrator** role against that workspace. Not the **Owner** role.
487
487
488
488
- To perform quota operations in a workspace, you need subscription level permissions. This means setting either subscription level quota or workspace level quota for your managed compute resources can only happen if you have write permissions at the subscription scope.
0 commit comments