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/ai-studio/concepts/rbac-ai-studio.md
+26-6Lines changed: 26 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ ms.service: azure-ai-studio
7
7
ms.custom:
8
8
- ignite-2023
9
9
ms.topic: conceptual
10
-
ms.date: 11/15/2023
10
+
ms.date: 02/14/2024
11
11
ms.reviewer: meyetman
12
12
ms.author: larryfr
13
13
author: Blackmist
@@ -23,8 +23,13 @@ In this article, you learn how to manage access (authorization) to an Azure AI h
23
23
> Applying some roles might limit UI functionality in Azure AI Studio for other users. For example, if a user's role does not have the ability to create a compute instance, the option to create a compute instance will not be available in studio. This behavior is expected, and prevents the user from attempting operations that would return an access denied error.
24
24
25
25
## Azure AI hub resource vs Azure AI project
26
+
26
27
In the Azure AI Studio, there are two levels of access: the Azure AI hub resource and the Azure AI project. The resource is home to the infrastructure (including virtual network setup, customer-managed keys, managed identities, and policies) as well as where you configure your Azure AI services. Azure AI hub resource access can allow you to modify the infrastructure, create new Azure AI hub resources, and create projects. Azure AI projects are a subset of the Azure AI hub resource that act as workspaces that allow you to build and deploy AI systems. Within a project you can develop flows, deploy models, and manage project assets. Project access lets you develop AI end-to-end while taking advantage of the infrastructure setup on the Azure AI hub resource.
27
28
29
+
:::image type="content" source="../media/concepts/azureai-hub-project-relationship.png" alt-text="Diagram of the relationship between AI Studio resources." lightbox="../media/concepts/azureai-hub-project-relationship.png":::
30
+
31
+
One of the key benefits of the AI hub and AI project relationship is that developers can create their own projects that inherit the AI hub security settings. You might also have developers who are contributors to a project, and can't create new projects.
32
+
28
33
## Default roles for the Azure AI hub resource
29
34
30
35
The Azure AI Studio has built-in roles that are available by default. In addition to the Reader, Contributor, and Owner roles, the Azure AI Studio has a new role called Azure AI Developer. This role can be assigned to enable users to create connections, compute, and projects, but not let them create new Azure AI hub resources or change permissions of the existing Azure AI hub resource.
@@ -41,7 +46,7 @@ Here's a table of the built-in roles and their permissions for the Azure AI hub
41
46
42
47
The key difference between Contributor and Azure AI Developer is the ability to make new Azure AI hub resources. If you don't want users to make new Azure AI hub resources (due to quota, cost, or just managing how many Azure AI hub resources you have), assign the AI Developer role.
43
48
44
-
Only the Owner and Contributor roles allow you to make an Azure AI hub resource. At this time, custom roles won't grant you permission to make Azure AI hub resources.
49
+
Only the Owner and Contributor roles allow you to make an Azure AI hub resource. At this time, custom roles can't grant you permission to make Azure AI hub resources.
45
50
46
51
The full set of permissions for the new "Azure AI Developer" role are as follows:
47
52
@@ -91,18 +96,33 @@ Here's a table of the built-in roles and their permissions for the Azure AI proj
91
96
| Azure AI Developer | User can perform most actions, including create deployments, but can't assign permissions to project users. |
92
97
| Reader | Read only access to the Azure AI project. |
93
98
94
-
When a user gets access to a project, two more roles are automatically assigned to the project user. The first role is Reader on the Azure AI hub resource. The second role is the Inference Deployment Operator role, which allows the user to create deployments on the resource group that the project is in. This role is composed of these two permissions: ```"Microsoft.Authorization/*/read"``` and ```"Microsoft.Resources/deployments/*"```.
99
+
When a user is granted access to a project (for example, through the AI Studio permission management), two more roles are automatically assigned to the user. The first role is Reader on the Azure AI hub resource. The second role is the Inference Deployment Operator role, which allows the user to create deployments on the resource group that the project is in. This role is composed of these two permissions: ```"Microsoft.Authorization/*/read"``` and ```"Microsoft.Resources/deployments/*"```.
95
100
96
101
In order to complete end-to-end AI development and deployment, users only need these two autoassigned roles and either the Contributor or Azure AI Developer role on a *project*.
97
102
103
+
The minimum permissions needed to create an AI project resource is a role that has the allowed action of `Microsoft.MachineLearningServices/workspaces/hubs/join` on the AI hub resource. The Azure AI Developer built-in role has this permission.
104
+
105
+
## Dependency service RBAC permissions
106
+
107
+
The Azure AI hub resource has dependencies on other Azure services. The following table lists the permissions required for these services when you create an Azure AI hub resource. These permissions are needed by the person that creates the AI hub. They aren't needed by the person who creates an AI project from the AI hub.
108
+
109
+
| Permission | Purpose |
110
+
|------------|-------------|
111
+
|`Microsoft.Storage/storageAccounts/write`| Create a storage account with the specified parameters or update the properties or tags or adds custom domain for the specified storage account. |
112
+
|`Microsoft.KeyVault/vaults/write`| Create a new key vault or updates the properties of an existing key vault. Certain properties might require more permissions. |
113
+
|`Microsoft.CognitiveServices/accounts/write`| Write API Accounts. |
114
+
|`Microsoft.Insights/Components/Write`| Write to an application insights component configuration. |
115
+
|`Microsoft.OperationalInsights/workspaces/write`| Create a new workspace or links to an existing workspace by providing the customer ID from the existing workspace. |
116
+
117
+
98
118
## Sample enterprise RBAC setup
99
-
Below is an example of how to set up role-based access control for your Azure AI Studio for an enterprise.
119
+
The following is an example of how to set up role-based access control for your Azure AI Studio for an enterprise.
100
120
101
121
| Persona | Role | Purpose |
102
122
| --- | --- | ---|
103
123
| IT admin | Owner of the Azure AI hub resource | The IT admin can ensure the Azure AI hub resource is set up to their enterprise standards and assign managers the Contributor role on the resource if they want to enable managers to make new Azure AI hub resources or they can assign managers the Azure AI Developer role on the resource to not allow for new Azure AI hub resource creation. |
104
-
| Managers | Contributor or Azure AI Developer on the Azure AI hub resource | Managers can create projects for their team and create shared resources (ex: compute and connections) for their group at the Azure AI hub resource level. |
105
-
|Managers | Owner of the Azure AI Project | When managers create a project, they become the project owner. This allows them to add their team/developers to the project. Their team/developers can be added as Contributors or Azure AI Developers to allow them to develop in the project. |
124
+
| Managers | Contributor or Azure AI Developer on the Azure AI hub resource | Managers can manage the AI hub, audit compute resources, audit connections, and create shared connections. |
125
+
|Team lead/Lead developer |Azure AI Developer on the Azure AI hub resource | Lead developers can create projects for their team and create shared resources (ex: compute and connections) at the Azure AI hub resource level. After project creation, project owners can invite other members. |
106
126
| Team members/developers | Contributor or Azure AI Developer on the Azure AI Project | Developers can build and deploy AI models within a project and create assets that enable development such as computes and connections. |
107
127
108
128
## Access to resources created outside of the Azure AI hub resource
0 commit comments