Skip to content

Commit c5b0f32

Browse files
author
Jill Grant
authored
Merge pull request #292225 from duongau/erroles
ExpressRoute - Roles and permissions (new article)
2 parents 14144f3 + 9ca61eb commit c5b0f32

File tree

2 files changed

+65
-0
lines changed

2 files changed

+65
-0
lines changed

articles/expressroute/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,8 @@
9595
items:
9696
- name: Security baseline
9797
href: /security/benchmark/azure/baselines/expressroute-security-baseline?toc=/azure/expressroute/TOC.json
98+
- name: Roles and permissions
99+
href: roles-permissions.md
98100
- name: BFD over ExpressRoute
99101
href: expressroute-bfd.md
100102
- name: QoS requirements
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
title: About ExpressRoute roles and permissions
3+
titleSuffix: ExpressRoute
4+
description: Learn about roles and permissions for ExpressRoute circuits and gateways.
5+
author: rambk
6+
ms.service: azure-expressroute
7+
ms.topic: conceptual
8+
ms.date: 12/18/2024
9+
ms.author: rambala
10+
---
11+
12+
# About roles and permissions for ExpressRoute circuits and gateways
13+
14+
ExpressRoute circuits and gateways utilize multiple resources, such as virtual networks and IP addresses, during both creation and management operations.
15+
Because of this, it's essential to verify permissions on all involved resources during these operations.
16+
17+
## Azure built-in roles
18+
19+
You can choose to assign [Azure built-in roles](../role-based-access-control/built-in-roles.md) to a user, group, service principal, or managed identity such as [Network contributor](../role-based-access-control/built-in-roles.md#network-contributor), which support all the required permissions for creating the gateway.
20+
For more information, see [Steps to assign an Azure role](../role-based-access-control/role-assignments-steps.md).
21+
22+
## Custom roles
23+
24+
If the [Azure built-in roles](../role-based-access-control/built-in-roles.md) don't meet the specific needs of your organization, you can create your own custom roles.
25+
Just like built-in roles, you can assign custom roles to users, groups, and service principals at management group, subscription, and resource group scopes.
26+
For more information, see [Steps to create a custom role](../role-based-access-control/custom-roles.md#steps-to-create-a-custom-role) .
27+
28+
To ensure proper functionality, check your custom role permissions to confirm user service principals, and managed identities operating the VPN gateway have the necessary permissions.
29+
To add any missing permissions listed here, see [Update a custom role](../role-based-access-control/custom-roles-portal.md#update-a-custom-role).
30+
31+
## Permissions
32+
33+
Depending on whether you're creating new resources or using existing ones, add the appropriate permissions from the following list:
34+
35+
|Resource | Resource status | Required Azure permissions |
36+
|---|---|---|
37+
| Subnet | Create new| Microsoft.Network/virtualNetworks/subnets/write<br>Microsoft.Network/virtualNetworks/subnets/join/action |
38+
| Subnet | Use existing| Microsoft.Network/virtualNetworks/subnets/read<br>Microsoft.Network/virtualNetworks/subnets/join/action |
39+
| IP addresses| Create new| Microsoft.Network/publicIPAddresses/write<br>Microsoft.Network/publicIPAddresses/join/action |
40+
| IP addresses | Use existing| Microsoft.Network/publicIPAddresses/read<br>Microsoft.Network/publicIPAddresses/join/action |
41+
| Connection | Create new/ Update existing| Microsoft.Network/connections/write<br>Microsoft.Network/virtualNetworkGateways/join/action<br>Microsoft.Network/expressRouteCircuits/join/action |
42+
| Azure Virtual Network Gateway | Create new/ Update existing| Microsoft.Network/virtualnetworkgateways/write<br>Microsoft.Network/publicIPAddresses/join/action<br>Microsoft.Network/virtualNetworks/subnets/join/action |
43+
| ExpressRoute circuits | Create new/ use existing| Microsoft.Network/expressRouteCircuits/write |
44+
| ExpressRoute DirectPort | Create new /use existing| Microsoft.Network/expressRoutePorts/join/action |
45+
46+
For more information, see [Azure permissions for Networking](../role-based-access-control/permissions/networking.md) and [Virtual network permissions](../virtual-network/virtual-network-manage-subnet.md#permissions).
47+
48+
## Roles scope
49+
50+
In the process of custom role definition, you can specify a role assignment scope at four levels: management group, subscription, resource group, and resources. To grant access, you assign roles to users, groups, service principals, or managed identities at a particular scope.
51+
52+
These scopes are structured in a parent-child relationship, with each level of hierarchy making the scope more specific. You can assign roles at any of these levels of scope, and the level you select determines how widely the role is applied.
53+
54+
For example, a role assigned at the subscription level can cascade down to all resources within that subscription, while a role assigned at the resource group level will only apply to resources within that specific group. Learn more about scope level
55+
For more information, see [Scope levels](../role-based-access-control/scope-overview.md#scope-levels).
56+
57+
> [!NOTE]
58+
> Allow sufficient time for [Azure Resource Manager cache](../role-based-access-control/troubleshooting.md) to refresh after role assignment changes.
59+
60+
## Next steps
61+
62+
[What is Azure Role Based Access](../role-based-access-control/overview.md)
63+
[Azure Role Based Access Control](../role-based-access-control/role-assignments-list-portal.yml)

0 commit comments

Comments
 (0)