Skip to content

Commit 20d14fd

Browse files
committed
acrolinx
1 parent 8228951 commit 20d14fd

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

articles/machine-learning/how-to-assign-roles.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ This article explains how to manage access (authorization) to Azure Machine Lear
3131
3232
## Default roles
3333

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.
3535

3636
| Role | Access level |
3737
| --- | --- |
@@ -41,13 +41,13 @@ Azure Machine Learning workspaces have built-in roles that are available by defa
4141
| **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. |
4242
| **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. |
4343

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.
4545

4646
| Role | Access level |
4747
| --- | --- |
4848
| **AzureML Registry User** | Can get registries, and read, write, and delete assets within them. Can't create new registry resources or delete them. |
4949

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.
5151

5252
> [!IMPORTANT]
5353
> 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
7474

7575
You can use Microsoft Entra security groups to manage access to workspaces. This approach has following benefits:
7676
* 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.
7878
* Using Microsoft Entra groups helps you to avoid reaching the [subscription limit](/azure/role-based-access-control/troubleshoot-limits) on role assignments.
7979

8080
To use Microsoft Entra security groups:
8181
1. [Create a security group](/azure/active-directory/fundamentals/active-directory-groups-view-azure-portal).
8282
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**.
8484
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.
8585

8686
## Create custom role
@@ -115,7 +115,7 @@ To create a custom role, first construct a role definition JSON file that specif
115115

116116
> [!TIP]
117117
> 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).
119119
120120
This custom role can do everything in the workspace except for the following actions:
121121

@@ -172,7 +172,7 @@ You need to have permissions on the entire scope of your new role definition. Fo
172172
173173
## Use Azure Resource Manager templates for repeatability
174174

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.
176176

177177
## Common scenarios
178178

@@ -223,7 +223,7 @@ You can make custom roles compatible with both V1 and V2 APIs by including both
223223

224224
### Create a workspace using a customer-managed key
225225

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.
227227

228228
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:
229229

@@ -232,7 +232,7 @@ If your workspace is configured with a **user-assigned managed identity**, the i
232232
- `Microsoft.DocumentDB/databaseAccounts/write`
233233

234234

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).
236236

237237
### User-assigned managed identity with Azure Machine Learning compute cluster
238238

@@ -244,8 +244,8 @@ To perform MLflow operations with your Azure Machine Learning workspace, use the
244244

245245
| MLflow operation | Scope |
246246
| --- | --- |
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/*` |
249249
| 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` |
250250
| 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` |
251251
| 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**
448448
* Creating a new workspace
449449
* Assigning subscription or workspace level quotas
450450

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:
452452

453453
*workspace_admin_custom_role.json* :
454454

@@ -475,15 +475,15 @@ The workspace admin also cannot create a new role. It can only assign existing b
475475

476476
### Data labeling
477477

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.
479479

480480
[!INCLUDE [custom-role-data-labeling](includes/custom-role-data-labeling.md)]
481481

482482
## Troubleshooting
483483

484484
Here are a few things to be aware of while you use Azure RBAC:
485485

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.
487487

488488
- 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.
489489

0 commit comments

Comments
 (0)