From d183800e173753d9e90258b3837bb4245968d894 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 21:46:55 +0100
Subject: [PATCH 1/7] Updated interface
---
constructs/Compute/virtualMachinesMultiple/main.bicep | 2 +-
modules/aad/domain-service/main.bicep | 6 +++---
modules/analysis-services/server/main.bicep | 4 ++--
modules/api-management/service/main.bicep | 6 +++---
modules/app-configuration/configuration-store/main.bicep | 8 ++++----
modules/app/container-app/main.bicep | 4 ++--
modules/app/job/main.bicep | 4 ++--
modules/app/managed-environment/main.bicep | 6 +++---
modules/automation/automation-account/main.bicep | 8 ++++----
modules/batch/batch-account/main.bicep | 8 ++++----
modules/cache/redis-enterprise/main.bicep | 8 ++++----
modules/cache/redis/main.bicep | 8 ++++----
modules/cdn/profile/main.bicep | 6 +++---
modules/cognitive-services/account/main.bicep | 8 ++++----
modules/compute/availability-set/main.bicep | 6 +++---
modules/compute/disk-encryption-set/main.bicep | 6 +++---
modules/compute/disk/main.bicep | 6 +++---
modules/compute/gallery/application/main.bicep | 2 +-
modules/compute/gallery/image/main.bicep | 2 +-
modules/compute/gallery/main.bicep | 2 +-
modules/compute/image/main.bicep | 6 +++---
modules/compute/proximity-placement-group/main.bicep | 6 +++---
modules/compute/ssh-public-key/main.bicep | 6 +++---
modules/compute/virtual-machine-scale-set/main.bicep | 6 +++---
modules/compute/virtual-machine/main.bicep | 6 +++---
.../virtual-machine/modules/nested_networkInterface.bicep | 4 ++--
modules/container-registry/registry/main.bicep | 8 ++++----
modules/container-service/managed-cluster/main.bicep | 6 +++---
modules/data-factory/factory/main.bicep | 8 ++++----
modules/data-protection/backup-vault/main.bicep | 6 +++---
modules/databricks/access-connector/main.bicep | 6 +++---
modules/databricks/workspace/main.bicep | 8 ++++----
modules/db-for-my-sql/flexible-server/main.bicep | 4 ++--
modules/db-for-postgre-sql/flexible-server/main.bicep | 6 +++---
.../desktop-virtualization/application-group/main.bicep | 2 +-
modules/desktop-virtualization/host-pool/main.bicep | 2 +-
modules/desktop-virtualization/scaling-plan/main.bicep | 2 +-
modules/desktop-virtualization/workspace/main.bicep | 2 +-
modules/dev-test-lab/lab/main.bicep | 4 ++--
modules/digital-twins/digital-twins-instance/main.bicep | 6 +++---
modules/document-db/database-account/main.bicep | 6 +++---
modules/event-grid/domain/main.bicep | 8 ++++----
modules/event-grid/system-topic/main.bicep | 6 +++---
modules/event-grid/topic/main.bicep | 8 ++++----
modules/event-hub/namespace/eventhub/main.bicep | 6 +++---
modules/event-hub/namespace/main.bicep | 8 ++++----
modules/health-bot/health-bot/main.bicep | 6 +++---
modules/healthcare-apis/workspace/fhirservice/main.bicep | 6 +++---
modules/healthcare-apis/workspace/main.bicep | 6 +++---
modules/insights/action-group/main.bicep | 6 +++---
modules/insights/activity-log-alert/main.bicep | 6 +++---
modules/insights/component/main.bicep | 6 +++---
modules/insights/data-collection-endpoint/main.bicep | 6 +++---
modules/insights/data-collection-rule/main.bicep | 2 +-
modules/insights/metric-alert/main.bicep | 6 +++---
modules/insights/private-link-scope/main.bicep | 8 ++++----
modules/insights/scheduled-query-rule/main.bicep | 6 +++---
modules/insights/webtest/main.bicep | 2 +-
modules/key-vault/vault/key/main.bicep | 6 +++---
modules/key-vault/vault/main.bicep | 8 ++++----
modules/key-vault/vault/secret/main.bicep | 6 +++---
modules/logic/workflow/main.bicep | 6 +++---
modules/machine-learning-services/workspace/main.bicep | 2 +-
modules/maintenance/maintenance-configuration/main.bicep | 6 +++---
.../managed-identity/user-assigned-identity/main.bicep | 6 +++---
modules/net-app/net-app-account/capacity-pool/main.bicep | 6 +++---
.../net-app-account/capacity-pool/volume/main.bicep | 6 +++---
modules/net-app/net-app-account/main.bicep | 6 +++---
modules/network/application-gateway/main.bicep | 8 ++++----
modules/network/application-security-group/main.bicep | 6 +++---
modules/network/azure-firewall/main.bicep | 6 +++---
modules/network/bastion-host/main.bicep | 6 +++---
modules/network/ddos-protection-plan/main.bicep | 6 +++---
modules/network/dns-forwarding-ruleset/main.bicep | 6 +++---
modules/network/dns-resolver/main.bicep | 6 +++---
modules/network/dns-zone/a/main.bicep | 6 +++---
modules/network/dns-zone/aaaa/main.bicep | 6 +++---
modules/network/dns-zone/caa/main.bicep | 6 +++---
modules/network/dns-zone/cname/main.bicep | 6 +++---
modules/network/dns-zone/main.bicep | 6 +++---
modules/network/dns-zone/mx/main.bicep | 6 +++---
modules/network/dns-zone/ns/main.bicep | 6 +++---
modules/network/dns-zone/ptr/main.bicep | 6 +++---
modules/network/dns-zone/soa/main.bicep | 6 +++---
modules/network/dns-zone/srv/main.bicep | 6 +++---
modules/network/dns-zone/txt/main.bicep | 6 +++---
modules/network/express-route-circuit/main.bicep | 6 +++---
modules/network/express-route-gateway/main.bicep | 6 +++---
.../front-door-web-application-firewall-policy/main.bicep | 6 +++---
modules/network/front-door/main.bicep | 6 +++---
modules/network/ip-group/main.bicep | 6 +++---
modules/network/load-balancer/main.bicep | 6 +++---
modules/network/local-network-gateway/main.bicep | 6 +++---
modules/network/nat-gateway/main.bicep | 6 +++---
modules/network/network-interface/main.bicep | 6 +++---
modules/network/network-manager/main.bicep | 2 +-
modules/network/network-security-group/main.bicep | 6 +++---
modules/network/network-watcher/main.bicep | 6 +++---
modules/network/private-dns-zone/a/main.bicep | 6 +++---
modules/network/private-dns-zone/aaaa/main.bicep | 6 +++---
modules/network/private-dns-zone/cname/main.bicep | 6 +++---
modules/network/private-dns-zone/main.bicep | 6 +++---
modules/network/private-dns-zone/mx/main.bicep | 6 +++---
modules/network/private-dns-zone/ptr/main.bicep | 6 +++---
modules/network/private-dns-zone/soa/main.bicep | 6 +++---
modules/network/private-dns-zone/srv/main.bicep | 6 +++---
modules/network/private-dns-zone/txt/main.bicep | 6 +++---
modules/network/private-endpoint/main.bicep | 6 +++---
modules/network/private-link-service/main.bicep | 6 +++---
modules/network/public-ip-address/main.bicep | 6 +++---
modules/network/public-ip-prefix/main.bicep | 6 +++---
modules/network/route-table/main.bicep | 6 +++---
modules/network/service-endpoint-policy/main.bicep | 6 +++---
modules/network/trafficmanagerprofile/main.bicep | 6 +++---
modules/network/virtual-network-gateway/main.bicep | 6 +++---
modules/network/virtual-network/main.bicep | 6 +++---
modules/network/virtual-network/subnet/main.bicep | 6 +++---
modules/network/virtual-wan/main.bicep | 6 +++---
modules/network/vpn-site/main.bicep | 6 +++---
modules/operational-insights/workspace/main.bicep | 6 +++---
modules/power-bi-dedicated/capacity/main.bicep | 6 +++---
modules/purview/account/main.bicep | 6 +++---
modules/recovery-services/vault/main.bicep | 8 ++++----
modules/relay/namespace/hybrid-connection/main.bicep | 6 +++---
modules/relay/namespace/main.bicep | 8 ++++----
modules/relay/namespace/wcf-relay/main.bicep | 6 +++---
modules/resource-graph/query/main.bicep | 6 +++---
modules/resources/resource-group/main.bicep | 6 +++---
modules/search/search-service/main.bicep | 8 ++++----
modules/service-bus/namespace/main.bicep | 8 ++++----
modules/service-bus/namespace/queue/main.bicep | 6 +++---
modules/service-bus/namespace/topic/main.bicep | 6 +++---
modules/service-fabric/cluster/main.bicep | 6 +++---
modules/signal-r-service/signal-r/main.bicep | 8 ++++----
modules/signal-r-service/web-pub-sub/main.bicep | 8 ++++----
modules/sql/managed-instance/main.bicep | 6 +++---
modules/sql/server/main.bicep | 8 ++++----
.../storage-account/blob-service/container/main.bicep | 6 +++---
.../storage/storage-account/file-service/share/main.bicep | 6 +++---
modules/storage/storage-account/main.bicep | 8 ++++----
.../storage-account/queue-service/queue/main.bicep | 6 +++---
modules/synapse/private-link-hub/main.bicep | 8 ++++----
modules/synapse/workspace/main.bicep | 8 ++++----
modules/virtual-machine-images/image-template/main.bicep | 6 +++---
modules/web/connection/main.bicep | 6 +++---
modules/web/hosting-environment/main.bicep | 6 +++---
modules/web/serverfarm/main.bicep | 6 +++---
modules/web/site/main.bicep | 8 ++++----
modules/web/site/slot/main.bicep | 8 ++++----
modules/web/static-site/main.bicep | 8 ++++----
150 files changed, 448 insertions(+), 448 deletions(-)
diff --git a/constructs/Compute/virtualMachinesMultiple/main.bicep b/constructs/Compute/virtualMachinesMultiple/main.bicep
index 9fc00d6f9e..16932c0d92 100644
--- a/constructs/Compute/virtualMachinesMultiple/main.bicep
+++ b/constructs/Compute/virtualMachinesMultiple/main.bicep
@@ -250,7 +250,7 @@ param diagnosticEventHubName string = ''
@description('Optional. Specify the type of lock.')
param lock string = ''
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments array = []
@description('Optional. Tags of the resource.')
diff --git a/modules/aad/domain-service/main.bicep b/modules/aad/domain-service/main.bicep
index 206efc45d4..5fd0a7a9fb 100644
--- a/modules/aad/domain-service/main.bicep
+++ b/modules/aad/domain-service/main.bicep
@@ -127,7 +127,7 @@ param enableDefaultTelemetry bool = true
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -213,7 +213,7 @@ resource domainService_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!em
resource domainService_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(domainService.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -249,7 +249,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/analysis-services/server/main.bicep b/modules/analysis-services/server/main.bicep
index c0e59767e5..fe7c530a48 100644
--- a/modules/analysis-services/server/main.bicep
+++ b/modules/analysis-services/server/main.bicep
@@ -32,7 +32,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -148,7 +148,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/api-management/service/main.bicep b/modules/api-management/service/main.bicep
index c71fd923f4..9e8142b83f 100644
--- a/modules/api-management/service/main.bicep
+++ b/modules/api-management/service/main.bicep
@@ -51,7 +51,7 @@ param publisherName string
@description('Optional. Undelete API Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored.')
param restore bool = false
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The pricing tier of this API Management service.')
@@ -430,7 +430,7 @@ resource service_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-
resource service_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(service.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -477,7 +477,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/app-configuration/configuration-store/main.bicep b/modules/app-configuration/configuration-store/main.bicep
index 68dd210d37..f4bc48c14c 100644
--- a/modules/app-configuration/configuration-store/main.bicep
+++ b/modules/app-configuration/configuration-store/main.bicep
@@ -56,7 +56,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -188,7 +188,7 @@ resource configurationStore_diagnosticSettings 'Microsoft.Insights/diagnosticSet
resource configurationStore_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(configurationStore.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -259,7 +259,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -336,7 +336,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/app/container-app/main.bicep b/modules/app/container-app/main.bicep
index 2ba53033af..939f2bed5c 100644
--- a/modules/app/container-app/main.bicep
+++ b/modules/app/container-app/main.bicep
@@ -197,7 +197,7 @@ resource containerApp_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!emp
resource containerApp_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(containerApp.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -244,7 +244,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/app/job/main.bicep b/modules/app/job/main.bicep
index ee9795e632..15d8106352 100644
--- a/modules/app/job/main.bicep
+++ b/modules/app/job/main.bicep
@@ -135,7 +135,7 @@ resource containerAppJob_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!
resource containerAppJob_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(containerAppJob.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -174,7 +174,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/app/managed-environment/main.bicep b/modules/app/managed-environment/main.bicep
index 12fc9772c4..f3905ce986 100644
--- a/modules/app/managed-environment/main.bicep
+++ b/modules/app/managed-environment/main.bicep
@@ -14,7 +14,7 @@ param location string = resourceGroup().location
@description('Optional. Tags of the resource.')
param tags object?
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@allowed([
@@ -135,7 +135,7 @@ resource managedEnvironment 'Microsoft.App/managedEnvironments@2022-10-01' = {
resource managedEnvironment_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(managedEnvironment.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -180,7 +180,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/automation/automation-account/main.bicep b/modules/automation/automation-account/main.bicep
index c7c66989e5..a2dfa7b527 100644
--- a/modules/automation/automation-account/main.bicep
+++ b/modules/automation/automation-account/main.bicep
@@ -65,7 +65,7 @@ param managedIdentities managedIdentitiesType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the Automation Account resource.')
@@ -361,7 +361,7 @@ module automationAccount_privateEndpoints '../../network/private-endpoint/main.b
resource automationAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(automationAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -408,7 +408,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -485,7 +485,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/batch/batch-account/main.bicep b/modules/batch/batch-account/main.bicep
index 476a5045a1..038921cf61 100644
--- a/modules/batch/batch-account/main.bicep
+++ b/modules/batch/batch-account/main.bicep
@@ -64,7 +64,7 @@ param lock lockType
@description('Optional. Tags of the resource.')
param tags object?
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@allowed([
@@ -207,7 +207,7 @@ resource batchAccount_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@
resource batchAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(batchAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -278,7 +278,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -355,7 +355,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/cache/redis-enterprise/main.bicep b/modules/cache/redis-enterprise/main.bicep
index 1be629fba1..cdc3b5a490 100644
--- a/modules/cache/redis-enterprise/main.bicep
+++ b/modules/cache/redis-enterprise/main.bicep
@@ -11,7 +11,7 @@ param name string
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -126,7 +126,7 @@ resource redisEnterprise_diagnosticSettings 'Microsoft.Insights/diagnosticSettin
resource redisEnterprise_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(redisEnterprise.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -208,7 +208,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -285,7 +285,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/cache/redis/main.bicep b/modules/cache/redis/main.bicep
index bb1d2191e5..4a34e577ce 100644
--- a/modules/cache/redis/main.bicep
+++ b/modules/cache/redis/main.bicep
@@ -11,7 +11,7 @@ param name string
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -201,7 +201,7 @@ resource redis_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05
resource redis_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(redis.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -281,7 +281,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -358,7 +358,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/cdn/profile/main.bicep b/modules/cdn/profile/main.bicep
index 30ce9173c1..dd7abe44db 100644
--- a/modules/cdn/profile/main.bicep
+++ b/modules/cdn/profile/main.bicep
@@ -56,7 +56,7 @@ param tags object?
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -112,7 +112,7 @@ resource profile_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource profile_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(profile.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -238,7 +238,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/cognitive-services/account/main.bicep b/modules/cognitive-services/account/main.bicep
index be906d33de..1841a1df2b 100644
--- a/modules/cognitive-services/account/main.bicep
+++ b/modules/cognitive-services/account/main.bicep
@@ -83,7 +83,7 @@ param managedIdentities managedIdentitiesType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -294,7 +294,7 @@ module cognitiveServices_privateEndpoints '../../network/private-endpoint/main.b
resource cognitiveServices_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(cognitiveServices.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -344,7 +344,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -421,7 +421,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/compute/availability-set/main.bicep b/modules/compute/availability-set/main.bicep
index d48a10bd65..e7365a0176 100644
--- a/modules/compute/availability-set/main.bicep
+++ b/modules/compute/availability-set/main.bicep
@@ -23,7 +23,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the availability set resource.')
@@ -81,7 +81,7 @@ resource availabilitySet_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!
resource availabilitySet_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(availabilitySet.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -117,7 +117,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/disk-encryption-set/main.bicep b/modules/compute/disk-encryption-set/main.bicep
index 0a96eb063a..c31fc9e4b7 100644
--- a/modules/compute/disk-encryption-set/main.bicep
+++ b/modules/compute/disk-encryption-set/main.bicep
@@ -38,7 +38,7 @@ param managedIdentities managedIdentitiesType = {
systemAssigned: true
}
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the disk encryption resource.')
@@ -125,7 +125,7 @@ resource diskEncryptionSet 'Microsoft.Compute/diskEncryptionSets@2022-07-02' = {
resource diskEncryptionSet_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(diskEncryptionSet.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -187,7 +187,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/disk/main.bicep b/modules/compute/disk/main.bicep
index b81bda894c..7989977bb4 100644
--- a/modules/compute/disk/main.bicep
+++ b/modules/compute/disk/main.bicep
@@ -121,7 +121,7 @@ param acceleratedNetwork bool = false
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the availability set resource.')
@@ -205,7 +205,7 @@ resource disk_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lock
resource disk_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(disk.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -241,7 +241,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/gallery/application/main.bicep b/modules/compute/gallery/application/main.bicep
index f1cf6372c2..dcb745225b 100644
--- a/modules/compute/gallery/application/main.bicep
+++ b/modules/compute/gallery/application/main.bicep
@@ -90,7 +90,7 @@ resource application 'Microsoft.Compute/galleries/applications@2022-03-03' = {
resource application_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(application.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/compute/gallery/image/main.bicep b/modules/compute/gallery/image/main.bicep
index 3f5a724b3c..a922e5e74b 100644
--- a/modules/compute/gallery/image/main.bicep
+++ b/modules/compute/gallery/image/main.bicep
@@ -213,7 +213,7 @@ resource image 'Microsoft.Compute/galleries/images@2022-03-03' = {
resource image_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(image.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/compute/gallery/main.bicep b/modules/compute/gallery/main.bicep
index 5d9a951fa4..54aaf1e3f9 100644
--- a/modules/compute/gallery/main.bicep
+++ b/modules/compute/gallery/main.bicep
@@ -75,7 +75,7 @@ resource gallery_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource gallery_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(gallery.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/compute/image/main.bicep b/modules/compute/image/main.bicep
index f83ef220ab..20e3e6ea11 100644
--- a/modules/compute/image/main.bicep
+++ b/modules/compute/image/main.bicep
@@ -26,7 +26,7 @@ param zoneResilient bool = false
@description('Optional. Gets the HyperVGenerationType of the VirtualMachine created from the image. - V1 or V2.')
param hyperVGeneration string = 'V1'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -120,7 +120,7 @@ resource image 'Microsoft.Compute/images@2022-11-01' = {
resource image_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(image.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -147,7 +147,7 @@ output location string = image.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/proximity-placement-group/main.bicep b/modules/compute/proximity-placement-group/main.bicep
index f2f76a2216..45047683d4 100644
--- a/modules/compute/proximity-placement-group/main.bicep
+++ b/modules/compute/proximity-placement-group/main.bicep
@@ -18,7 +18,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the proximity placement group resource.')
@@ -80,7 +80,7 @@ resource proximityPlacementGroup_lock 'Microsoft.Authorization/locks@2020-05-01'
resource proximityPlacementGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(proximityPlacementGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -116,7 +116,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/ssh-public-key/main.bicep b/modules/compute/ssh-public-key/main.bicep
index 42728721ff..72951bb56e 100644
--- a/modules/compute/ssh-public-key/main.bicep
+++ b/modules/compute/ssh-public-key/main.bicep
@@ -16,7 +16,7 @@ param publicKey string = ''
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the availability set resource.')
@@ -66,7 +66,7 @@ resource sshPublicKey_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!emp
resource sshPublicKey_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(sshPublicKey.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -102,7 +102,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/virtual-machine-scale-set/main.bicep b/modules/compute/virtual-machine-scale-set/main.bicep
index 977ec6753f..0f845b192c 100644
--- a/modules/compute/virtual-machine-scale-set/main.bicep
+++ b/modules/compute/virtual-machine-scale-set/main.bicep
@@ -46,7 +46,7 @@ param adminPassword string = ''
@description('Optional. Custom data associated to the VM, this value will be automatically converted into base64 to account for the expected VM format.')
param customData string = ''
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Fault Domain count for each placement group.')
@@ -627,7 +627,7 @@ resource vmss_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05-
resource vmss_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(vmss.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -674,7 +674,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/virtual-machine/main.bicep b/modules/compute/virtual-machine/main.bicep
index a8660a203e..f908e4b473 100644
--- a/modules/compute/virtual-machine/main.bicep
+++ b/modules/compute/virtual-machine/main.bicep
@@ -189,7 +189,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -663,7 +663,7 @@ resource vm_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lock ??
resource vm_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(vm.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -710,7 +710,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/compute/virtual-machine/modules/nested_networkInterface.bicep b/modules/compute/virtual-machine/modules/nested_networkInterface.bicep
index 3126ee1dfb..a7e44aaf79 100644
--- a/modules/compute/virtual-machine/modules/nested_networkInterface.bicep
+++ b/modules/compute/virtual-machine/modules/nested_networkInterface.bicep
@@ -15,7 +15,7 @@ param lock lockType
@description('Optional. The diagnostic settings of the Network Interface.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var enableReferencedModulesTelemetry = false
@@ -124,7 +124,7 @@ type diagnosticSettingType = {
}[]?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/container-registry/registry/main.bicep b/modules/container-registry/registry/main.bicep
index adb6b45d84..ff38067ac0 100644
--- a/modules/container-registry/registry/main.bicep
+++ b/modules/container-registry/registry/main.bicep
@@ -13,7 +13,7 @@ param acrAdminUserEnabled bool = false
@description('Optional. Location for all resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tier of your Azure container registry.')
@@ -326,7 +326,7 @@ resource registry_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021
resource registry_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(registry.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -400,7 +400,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -477,7 +477,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/container-service/managed-cluster/main.bicep b/modules/container-service/managed-cluster/main.bicep
index 304a5c48e6..bd9f8294c5 100644
--- a/modules/container-service/managed-cluster/main.bicep
+++ b/modules/container-service/managed-cluster/main.bicep
@@ -323,7 +323,7 @@ param monitoringWorkspaceId string = ''
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -683,7 +683,7 @@ resource managedCluster_diagnosticSettings 'Microsoft.Insights/diagnosticSetting
resource managedCluster_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(managedCluster.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -765,7 +765,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/data-factory/factory/main.bicep b/modules/data-factory/factory/main.bicep
index d6c26ec855..f0718db857 100644
--- a/modules/data-factory/factory/main.bicep
+++ b/modules/data-factory/factory/main.bicep
@@ -70,7 +70,7 @@ param privateEndpoints privateEndpointType
@description('Optional. The customer managed key definition.')
param customerManagedKey customerManagedKeyType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -216,7 +216,7 @@ resource dataFactory_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2
resource dataFactory_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dataFactory.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -287,7 +287,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -364,7 +364,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/data-protection/backup-vault/main.bicep b/modules/data-protection/backup-vault/main.bicep
index 942fbcfb34..f337814938 100644
--- a/modules/data-protection/backup-vault/main.bicep
+++ b/modules/data-protection/backup-vault/main.bicep
@@ -11,7 +11,7 @@ param enableDefaultTelemetry bool = true
@description('Optional. Location for all resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -128,7 +128,7 @@ resource backupVault_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empt
resource backupVault_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(backupVault.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -172,7 +172,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/databricks/access-connector/main.bicep b/modules/databricks/access-connector/main.bicep
index 6a680d39ce..53ba92c2c2 100644
--- a/modules/databricks/access-connector/main.bicep
+++ b/modules/databricks/access-connector/main.bicep
@@ -11,7 +11,7 @@ param tags object?
@description('Optional. Location for all Resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -70,7 +70,7 @@ resource accessConnector_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!
resource accessConnector_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(accessConnector.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -117,7 +117,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/databricks/workspace/main.bicep b/modules/databricks/workspace/main.bicep
index 524ab6c616..0d7e6cdb19 100644
--- a/modules/databricks/workspace/main.bicep
+++ b/modules/databricks/workspace/main.bicep
@@ -19,7 +19,7 @@ param skuName string = 'premium'
@description('Optional. Location for all Resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The diagnostic settings of the service.')
@@ -273,7 +273,7 @@ resource workspace_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@202
resource workspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(workspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -333,7 +333,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -410,7 +410,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/db-for-my-sql/flexible-server/main.bicep b/modules/db-for-my-sql/flexible-server/main.bicep
index dc99f1c7e9..d89c29094a 100644
--- a/modules/db-for-my-sql/flexible-server/main.bicep
+++ b/modules/db-for-my-sql/flexible-server/main.bicep
@@ -284,7 +284,7 @@ resource flexibleServer_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource flexibleServer_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(flexibleServer.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -384,7 +384,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/db-for-postgre-sql/flexible-server/main.bicep b/modules/db-for-postgre-sql/flexible-server/main.bicep
index e1731b412a..c6d1b75d5c 100644
--- a/modules/db-for-postgre-sql/flexible-server/main.bicep
+++ b/modules/db-for-postgre-sql/flexible-server/main.bicep
@@ -143,7 +143,7 @@ param configurations array = []
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -261,7 +261,7 @@ resource flexibleServer_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource flexibleServer_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(flexibleServer.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -379,7 +379,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/desktop-virtualization/application-group/main.bicep b/modules/desktop-virtualization/application-group/main.bicep
index 390e74da2f..55bd2d0ee3 100644
--- a/modules/desktop-virtualization/application-group/main.bicep
+++ b/modules/desktop-virtualization/application-group/main.bicep
@@ -143,7 +143,7 @@ module appGroup_applications 'application/main.bicep' = [for (application, index
resource appGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(appGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/desktop-virtualization/host-pool/main.bicep b/modules/desktop-virtualization/host-pool/main.bicep
index 228901fa8d..1af44b1e15 100644
--- a/modules/desktop-virtualization/host-pool/main.bicep
+++ b/modules/desktop-virtualization/host-pool/main.bicep
@@ -249,7 +249,7 @@ resource hostPool_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021
resource hostPool_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(hostPool.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/desktop-virtualization/scaling-plan/main.bicep b/modules/desktop-virtualization/scaling-plan/main.bicep
index 1f9734fb0a..69551d44a8 100644
--- a/modules/desktop-virtualization/scaling-plan/main.bicep
+++ b/modules/desktop-virtualization/scaling-plan/main.bicep
@@ -155,7 +155,7 @@ resource scalingPlan_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2
resource scalingplan_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(scalingPlan.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/desktop-virtualization/workspace/main.bicep b/modules/desktop-virtualization/workspace/main.bicep
index 36963fc0af..418a5c72d4 100644
--- a/modules/desktop-virtualization/workspace/main.bicep
+++ b/modules/desktop-virtualization/workspace/main.bicep
@@ -108,7 +108,7 @@ resource workspace_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@202
resource workspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(workspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/dev-test-lab/lab/main.bicep b/modules/dev-test-lab/lab/main.bicep
index 784eb271af..75e9e340d9 100644
--- a/modules/dev-test-lab/lab/main.bicep
+++ b/modules/dev-test-lab/lab/main.bicep
@@ -292,7 +292,7 @@ module lab_costs 'cost/main.bicep' = if (!empty(costs)) {
resource lab_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(lab.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -339,7 +339,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/digital-twins/digital-twins-instance/main.bicep b/modules/digital-twins/digital-twins-instance/main.bicep
index 435fbefba7..d70d7c7c03 100644
--- a/modules/digital-twins/digital-twins-instance/main.bicep
+++ b/modules/digital-twins/digital-twins-instance/main.bicep
@@ -198,7 +198,7 @@ resource digitalTwinsInstance_diagnosticSettings 'Microsoft.Insights/diagnosticS
resource digitalTwinsInstance_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(digitalTwinsInstance.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -248,7 +248,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -325,7 +325,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/document-db/database-account/main.bicep b/modules/document-db/database-account/main.bicep
index c59540db7f..728a5b2274 100644
--- a/modules/document-db/database-account/main.bicep
+++ b/modules/document-db/database-account/main.bicep
@@ -271,7 +271,7 @@ resource databaseAccount_diagnosticSettings 'Microsoft.Insights/diagnosticSettin
resource databaseAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(databaseAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -374,7 +374,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -451,7 +451,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/event-grid/domain/main.bicep b/modules/event-grid/domain/main.bicep
index 5177d56cf2..5f2c1e009a 100644
--- a/modules/event-grid/domain/main.bicep
+++ b/modules/event-grid/domain/main.bicep
@@ -31,7 +31,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
param privateEndpoints privateEndpointType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -156,7 +156,7 @@ module domain_privateEndpoints '../../network/private-endpoint/main.bicep' = [fo
resource domain_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(domain.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -192,7 +192,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -269,7 +269,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/event-grid/system-topic/main.bicep b/modules/event-grid/system-topic/main.bicep
index 97b33065d9..9c896bcf68 100644
--- a/modules/event-grid/system-topic/main.bicep
+++ b/modules/event-grid/system-topic/main.bicep
@@ -20,7 +20,7 @@ param eventSubscriptions array = []
@description('Optional. The diagnostic settings of the service.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -135,7 +135,7 @@ resource systemTopic_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2
resource systemTopic_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(systemTopic.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -182,7 +182,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/event-grid/topic/main.bicep b/modules/event-grid/topic/main.bicep
index 440efefed8..36b6e841cb 100644
--- a/modules/event-grid/topic/main.bicep
+++ b/modules/event-grid/topic/main.bicep
@@ -28,7 +28,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
param privateEndpoints privateEndpointType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -158,7 +158,7 @@ module topic_privateEndpoints '../../network/private-endpoint/main.bicep' = [for
resource topic_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(topic.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -194,7 +194,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -271,7 +271,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/event-hub/namespace/eventhub/main.bicep b/modules/event-hub/namespace/eventhub/main.bicep
index 3c35bc5d6a..1a7b842fb7 100644
--- a/modules/event-hub/namespace/eventhub/main.bicep
+++ b/modules/event-hub/namespace/eventhub/main.bicep
@@ -54,7 +54,7 @@ param consumergroups array = [
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Name for capture destination.')
@@ -210,7 +210,7 @@ module eventHub_authorizationRules 'authorization-rule/main.bicep' = [for (autho
resource eventHub_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(eventHub.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -246,7 +246,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/event-hub/namespace/main.bicep b/modules/event-hub/namespace/main.bicep
index d2d61ec7e5..15c2d861ac 100644
--- a/modules/event-hub/namespace/main.bicep
+++ b/modules/event-hub/namespace/main.bicep
@@ -89,7 +89,7 @@ param customerManagedKey customerManagedKeyType
@description('Optional. Enable infrastructure encryption (double encryption). Note, this setting requires the configuration of Customer-Managed-Keys (CMK) via the corresponding module parameters.')
param requireInfrastructureEncryption bool = false
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -284,7 +284,7 @@ module eventHubNamespace_privateEndpoints '../../network/private-endpoint/main.b
resource eventHubNamespace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(eventHubNamespace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -366,7 +366,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -443,7 +443,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/health-bot/health-bot/main.bicep b/modules/health-bot/health-bot/main.bicep
index a871850e71..bf0e08c90d 100644
--- a/modules/health-bot/health-bot/main.bicep
+++ b/modules/health-bot/health-bot/main.bicep
@@ -22,7 +22,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -81,7 +81,7 @@ resource healthBot_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(
resource healthBot_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(healthBot.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -122,7 +122,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/healthcare-apis/workspace/fhirservice/main.bicep b/modules/healthcare-apis/workspace/fhirservice/main.bicep
index 57d17573b7..b41f57a9b9 100644
--- a/modules/healthcare-apis/workspace/fhirservice/main.bicep
+++ b/modules/healthcare-apis/workspace/fhirservice/main.bicep
@@ -75,7 +75,7 @@ param initialImportMode bool = false
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@allowed([
@@ -236,7 +236,7 @@ resource fhir_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05-
resource fhir_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(fhir.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -286,7 +286,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/healthcare-apis/workspace/main.bicep b/modules/healthcare-apis/workspace/main.bicep
index dae1a76439..dfc7fa3888 100644
--- a/modules/healthcare-apis/workspace/main.bicep
+++ b/modules/healthcare-apis/workspace/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@allowed([
@@ -92,7 +92,7 @@ resource workspace_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(
resource workspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(workspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -204,7 +204,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/action-group/main.bicep b/modules/insights/action-group/main.bicep
index bca49be2f7..1c5a5b0927 100644
--- a/modules/insights/action-group/main.bicep
+++ b/modules/insights/action-group/main.bicep
@@ -11,7 +11,7 @@ param groupShortName string
@description('Optional. Indicates whether this action group is enabled. If an action group is not enabled, then none of its receivers will receive communications.')
param enabled bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The list of email receivers that are part of this action group.')
@@ -96,7 +96,7 @@ resource actionGroup 'Microsoft.Insights/actionGroups@2023-01-01' = {
resource actionGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(actionGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -123,7 +123,7 @@ output location string = actionGroup.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/activity-log-alert/main.bicep b/modules/insights/activity-log-alert/main.bicep
index 98263ac6db..86c5717716 100644
--- a/modules/insights/activity-log-alert/main.bicep
+++ b/modules/insights/activity-log-alert/main.bicep
@@ -25,7 +25,7 @@ param actions array = []
@description('Required. An Array of objects containing conditions that will cause this alert to activate. Conditions can also be combined with logical operators `allOf` and `anyOf`. Each condition can specify only one field between `equals` and `containsAny`. An alert rule condition must have exactly one category (Administrative, ServiceHealth, ResourceHealth, Alert, Autoscale, Recommendation, Security, or Policy).')
param conditions array
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -79,7 +79,7 @@ resource activityLogAlert 'Microsoft.Insights/activityLogAlerts@2020-10-01' = {
resource activityLogAlert_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(activityLogAlert.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -106,7 +106,7 @@ output location string = activityLogAlert.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/component/main.bicep b/modules/insights/component/main.bicep
index 801e9eb20a..e1de26c3eb 100644
--- a/modules/insights/component/main.bicep
+++ b/modules/insights/component/main.bicep
@@ -54,7 +54,7 @@ param kind string = ''
@description('Optional. Location for all Resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -104,7 +104,7 @@ resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
resource appInsights_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(appInsights.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -162,7 +162,7 @@ output instrumentationKey string = appInsights.properties.InstrumentationKey
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/data-collection-endpoint/main.bicep b/modules/insights/data-collection-endpoint/main.bicep
index e6e65306b7..b4f4003adb 100644
--- a/modules/insights/data-collection-endpoint/main.bicep
+++ b/modules/insights/data-collection-endpoint/main.bicep
@@ -25,7 +25,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The configuration to set whether network access from public internet to the endpoints are allowed.')
@@ -86,7 +86,7 @@ resource dataCollectionEndpoint_lock 'Microsoft.Authorization/locks@2020-05-01'
resource dataCollectionEndpoint_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dataCollectionEndpoint.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -126,7 +126,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/data-collection-rule/main.bicep b/modules/insights/data-collection-rule/main.bicep
index 14cb3af5b9..e5086019f1 100644
--- a/modules/insights/data-collection-rule/main.bicep
+++ b/modules/insights/data-collection-rule/main.bicep
@@ -100,7 +100,7 @@ resource dataCollectionRule_lock 'Microsoft.Authorization/locks@2020-05-01' = if
resource dataCollectionRule_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dataCollectionRule.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/insights/metric-alert/main.bicep b/modules/insights/metric-alert/main.bicep
index 3dad0cc566..9ac5667d66 100644
--- a/modules/insights/metric-alert/main.bicep
+++ b/modules/insights/metric-alert/main.bicep
@@ -75,7 +75,7 @@ param alertCriteriaType string = 'Microsoft.Azure.Monitor.MultipleResourceMultip
@description('Required. Criterias to trigger the alert. Array of \'Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria\' or \'Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria\' objects. When using MultipleResourceMultipleMetricCriteria criteria type, some parameters becomes mandatory. It is not possible to convert from SingleResourceMultipleMetricCriteria to MultipleResourceMultipleMetricCriteria. The alert must be deleted and recreated.')
param criterias array
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -134,7 +134,7 @@ resource metricAlert 'Microsoft.Insights/metricAlerts@2018-03-01' = {
resource metricAlert_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(metricAlert.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -161,7 +161,7 @@ output location string = metricAlert.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/private-link-scope/main.bicep b/modules/insights/private-link-scope/main.bicep
index 1a4c327c37..aff38da1dd 100644
--- a/modules/insights/private-link-scope/main.bicep
+++ b/modules/insights/private-link-scope/main.bicep
@@ -12,7 +12,7 @@ param location string = 'global'
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for Azure Monitor Resources.')
@@ -102,7 +102,7 @@ module privateLinkScope_privateEndpoints '../../network/private-endpoint/main.bi
resource privateLinkScope_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateLinkScope.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -138,7 +138,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -215,7 +215,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/insights/scheduled-query-rule/main.bicep b/modules/insights/scheduled-query-rule/main.bicep
index 2d4ac0bd58..5a205cd495 100644
--- a/modules/insights/scheduled-query-rule/main.bicep
+++ b/modules/insights/scheduled-query-rule/main.bicep
@@ -33,7 +33,7 @@ param skipQueryValidation bool = false
@description('Optional. List of resource type of the target resource(s) on which the alert is created/updated. For example if the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert will be fired for each virtual machine in the resource group which meet the alert criteria. Relevant only for rules of the kind LogAlert.')
param targetResourceTypes array = []
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Required. The list of resource IDs that this scheduled query rule is scoped to.')
@@ -119,7 +119,7 @@ resource queryRule 'Microsoft.Insights/scheduledQueryRules@2021-02-01-preview' =
resource queryRule_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(queryRule.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -146,7 +146,7 @@ output location string = queryRule.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/webtest/main.bicep b/modules/insights/webtest/main.bicep
index 7f464360ba..b5d72e8b02 100644
--- a/modules/insights/webtest/main.bicep
+++ b/modules/insights/webtest/main.bicep
@@ -129,7 +129,7 @@ resource webtest_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource webtest_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(webtest.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/key-vault/vault/key/main.bicep b/modules/key-vault/vault/key/main.bicep
index 21a15d15f2..4c7245b37b 100644
--- a/modules/key-vault/vault/key/main.bicep
+++ b/modules/key-vault/vault/key/main.bicep
@@ -53,7 +53,7 @@ param keySize int = -1
])
param kty string = 'EC'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Key rotation policy properties object.')
@@ -116,7 +116,7 @@ resource key 'Microsoft.KeyVault/vaults/keys@2022-07-01' = {
resource key_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(key.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -140,7 +140,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/key-vault/vault/main.bicep b/modules/key-vault/vault/main.bicep
index f26fb09a52..c0b08e2451 100644
--- a/modules/key-vault/vault/main.bicep
+++ b/modules/key-vault/vault/main.bicep
@@ -70,7 +70,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
@@ -264,7 +264,7 @@ module keyVault_privateEndpoints '../../network/private-endpoint/main.bicep' = [
resource keyVault_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(keyVault.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -306,7 +306,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -383,7 +383,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/key-vault/vault/secret/main.bicep b/modules/key-vault/vault/secret/main.bicep
index c58f6f645b..daaa7f5b3e 100644
--- a/modules/key-vault/vault/secret/main.bicep
+++ b/modules/key-vault/vault/secret/main.bicep
@@ -31,7 +31,7 @@ param value string
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -85,7 +85,7 @@ resource secret 'Microsoft.KeyVault/vaults/secrets@2022-07-01' = {
resource secret_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(secret.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -110,7 +110,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/logic/workflow/main.bicep b/modules/logic/workflow/main.bicep
index 3dca15ac0c..4508d3b7f0 100644
--- a/modules/logic/workflow/main.bicep
+++ b/modules/logic/workflow/main.bicep
@@ -38,7 +38,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The state. - NotSpecified, Completed, Enabled, Disabled, Deleted, Suspended.')
@@ -181,7 +181,7 @@ resource logicApp_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021
resource logicApp_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(logicApp.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -228,7 +228,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/machine-learning-services/workspace/main.bicep b/modules/machine-learning-services/workspace/main.bicep
index 6fd6b14e6f..a80c313a99 100644
--- a/modules/machine-learning-services/workspace/main.bicep
+++ b/modules/machine-learning-services/workspace/main.bicep
@@ -269,7 +269,7 @@ module workspace_privateEndpoints '../../network/private-endpoint/main.bicep' =
resource workspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(workspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/maintenance/maintenance-configuration/main.bicep b/modules/maintenance/maintenance-configuration/main.bicep
index d3cf44d377..8a885c291f 100644
--- a/modules/maintenance/maintenance-configuration/main.bicep
+++ b/modules/maintenance/maintenance-configuration/main.bicep
@@ -38,7 +38,7 @@ param maintenanceWindow object = {}
@description('Optional. Gets or sets namespace of the resource.')
param namespace string = ''
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Gets or sets tags of the resource.')
@@ -106,7 +106,7 @@ resource maintenanceConfiguration_lock 'Microsoft.Authorization/locks@2020-05-01
resource maintenanceConfiguration_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(maintenanceConfiguration.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -146,7 +146,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/managed-identity/user-assigned-identity/main.bicep b/modules/managed-identity/user-assigned-identity/main.bicep
index ff35c43d96..19afb3549c 100644
--- a/modules/managed-identity/user-assigned-identity/main.bicep
+++ b/modules/managed-identity/user-assigned-identity/main.bicep
@@ -14,7 +14,7 @@ param federatedIdentityCredentials array = []
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -77,7 +77,7 @@ module userMsi_federatedIdentityCredentials 'federated-identity-credential/main.
resource userMsi_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(userAssignedIdentity.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -119,7 +119,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/net-app/net-app-account/capacity-pool/main.bicep b/modules/net-app/net-app-account/capacity-pool/main.bicep
index 654d1e8af8..213245ba7e 100644
--- a/modules/net-app/net-app-account/capacity-pool/main.bicep
+++ b/modules/net-app/net-app-account/capacity-pool/main.bicep
@@ -39,7 +39,7 @@ param volumes array = []
@description('Optional. If enabled (true) the pool can contain cool Access enabled volumes.')
param coolAccess bool = false
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Encryption type of the capacity pool, set encryption type for data at rest for this pool and all volumes in it. This value can only be set when creating new pool.')
@@ -114,7 +114,7 @@ module capacityPool_volumes 'volume/main.bicep' = [for (volume, index) in volume
resource capacityPool_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(capacityPool.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -141,7 +141,7 @@ output location string = capacityPool.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/net-app/net-app-account/capacity-pool/volume/main.bicep b/modules/net-app/net-app-account/capacity-pool/volume/main.bicep
index 71e47b1ad4..5870382621 100644
--- a/modules/net-app/net-app-account/capacity-pool/volume/main.bicep
+++ b/modules/net-app/net-app-account/capacity-pool/volume/main.bicep
@@ -38,7 +38,7 @@ param subnetResourceId string
@description('Optional. Export policy rules.')
param exportPolicyRules array = []
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -91,7 +91,7 @@ resource volume 'Microsoft.NetApp/netAppAccounts/capacityPools/volumes@2022-11-0
resource volume_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(volume.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -118,7 +118,7 @@ output location string = volume.location
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/net-app/net-app-account/main.bicep b/modules/net-app/net-app-account/main.bicep
index cdb0ed0768..2fc4c5833d 100644
--- a/modules/net-app/net-app-account/main.bicep
+++ b/modules/net-app/net-app-account/main.bicep
@@ -30,7 +30,7 @@ param capacityPools array = []
@description('Optional. The managed identity definition for this resource.')
param managedIdentities managedIdentitiesType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Location for all resources.')
@@ -107,7 +107,7 @@ resource netAppAccount_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!em
resource netAppAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(netAppAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -166,7 +166,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/application-gateway/main.bicep b/modules/network/application-gateway/main.bicep
index 99e2acb087..ddcb2e145b 100644
--- a/modules/network/application-gateway/main.bicep
+++ b/modules/network/application-gateway/main.bicep
@@ -195,7 +195,7 @@ var enableReferencedModulesTelemetry = false
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Resource tags.')
@@ -358,7 +358,7 @@ module applicationGateway_privateEndpoints '../../network/private-endpoint/main.
resource applicationGateway_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(applicationGateway.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -399,7 +399,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -476,7 +476,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/network/application-security-group/main.bicep b/modules/network/application-security-group/main.bicep
index 55bacf2d7e..61539b0fba 100644
--- a/modules/network/application-security-group/main.bicep
+++ b/modules/network/application-security-group/main.bicep
@@ -11,7 +11,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -59,7 +59,7 @@ resource applicationSecurityGroup_lock 'Microsoft.Authorization/locks@2020-05-01
resource applicationSecurityGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(applicationSecurityGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -95,7 +95,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/azure-firewall/main.bicep b/modules/network/azure-firewall/main.bicep
index d6e785f395..4e804feab2 100644
--- a/modules/network/azure-firewall/main.bicep
+++ b/modules/network/azure-firewall/main.bicep
@@ -75,7 +75,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the Azure Firewall resource.')
@@ -269,7 +269,7 @@ resource azureFirewall_diagnosticSettings 'Microsoft.Insights/diagnosticSettings
resource azureFirewall_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(azureFirewall.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -320,7 +320,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/bastion-host/main.bicep b/modules/network/bastion-host/main.bicep
index 8877a5af1d..6c04ffdd8d 100644
--- a/modules/network/bastion-host/main.bicep
+++ b/modules/network/bastion-host/main.bicep
@@ -50,7 +50,7 @@ param enableShareableLink bool = false
@description('Optional. The scale units for the Bastion Host resource.')
param scaleUnits int = 2
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -176,7 +176,7 @@ resource azureBastion_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@
resource azureBastion_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(azureBastion.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -215,7 +215,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/ddos-protection-plan/main.bicep b/modules/network/ddos-protection-plan/main.bicep
index 71111c0e8f..3f9b8b415d 100644
--- a/modules/network/ddos-protection-plan/main.bicep
+++ b/modules/network/ddos-protection-plan/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -60,7 +60,7 @@ resource ddosProtectionPlan_lock 'Microsoft.Authorization/locks@2020-05-01' = if
resource ddosProtectionPlan_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(ddosProtectionPlan.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-forwarding-ruleset/main.bicep b/modules/network/dns-forwarding-ruleset/main.bicep
index d54a554eed..0ae62d1be2 100644
--- a/modules/network/dns-forwarding-ruleset/main.bicep
+++ b/modules/network/dns-forwarding-ruleset/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -96,7 +96,7 @@ resource dnsForwardingRuleset_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource dnsForwardingRuleset_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsForwardingRuleset.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -132,7 +132,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-resolver/main.bicep b/modules/network/dns-resolver/main.bicep
index b733320a97..5283a844d2 100644
--- a/modules/network/dns-resolver/main.bicep
+++ b/modules/network/dns-resolver/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -107,7 +107,7 @@ resource dnsResolver_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empt
resource dnsResolver_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsResolver.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -143,7 +143,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/a/main.bicep b/modules/network/dns-zone/a/main.bicep
index 8f75c9d10e..857af9c2b0 100644
--- a/modules/network/dns-zone/a/main.bicep
+++ b/modules/network/dns-zone/a/main.bicep
@@ -23,7 +23,7 @@ param targetResourceId string = ''
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -72,7 +72,7 @@ resource A 'Microsoft.Network/dnsZones/A@2018-05-01' = {
resource A_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(A.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/aaaa/main.bicep b/modules/network/dns-zone/aaaa/main.bicep
index a0d88a4f60..d5bf5db1a6 100644
--- a/modules/network/dns-zone/aaaa/main.bicep
+++ b/modules/network/dns-zone/aaaa/main.bicep
@@ -23,7 +23,7 @@ param targetResourceId string = ''
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -72,7 +72,7 @@ resource AAAA 'Microsoft.Network/dnsZones/AAAA@2018-05-01' = {
resource AAAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(AAAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/caa/main.bicep b/modules/network/dns-zone/caa/main.bicep
index 5456341ee7..e1e328f5be 100644
--- a/modules/network/dns-zone/caa/main.bicep
+++ b/modules/network/dns-zone/caa/main.bicep
@@ -17,7 +17,7 @@ param caaRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource CAA 'Microsoft.Network/dnsZones/CAA@2018-05-01' = {
resource CAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/cname/main.bicep b/modules/network/dns-zone/cname/main.bicep
index db68c48d7f..dad49c5256 100644
--- a/modules/network/dns-zone/cname/main.bicep
+++ b/modules/network/dns-zone/cname/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. A reference to an azure resource from where the dns resource value is taken. Also known as an alias record sets and are only supported for record types A, AAAA and CNAME. A resource ID can be an Azure Traffic Manager, Azure CDN, Front Door, Static Web App, or a resource ID of a record set of the same type in the DNS zone (i.e. A, AAAA or CNAME). Cannot be used in conjuction with the "aRecords" property.')
param targetResourceId string = ''
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -72,7 +72,7 @@ resource CNAME 'Microsoft.Network/dnsZones/CNAME@2018-05-01' = {
resource CNAME_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CNAME.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/main.bicep b/modules/network/dns-zone/main.bicep
index c5b7880355..4aa4cf1f13 100644
--- a/modules/network/dns-zone/main.bicep
+++ b/modules/network/dns-zone/main.bicep
@@ -40,7 +40,7 @@ param txt array = []
@description('Optional. The location of the dnsZone. Should be global.')
param location string = 'global'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -234,7 +234,7 @@ resource dnsZone_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource dnsZone_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsZone.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -270,7 +270,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/mx/main.bicep b/modules/network/dns-zone/mx/main.bicep
index 710a244cd3..bd51f8b54f 100644
--- a/modules/network/dns-zone/mx/main.bicep
+++ b/modules/network/dns-zone/mx/main.bicep
@@ -17,7 +17,7 @@ param mxRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource MX 'Microsoft.Network/dnsZones/MX@2018-05-01' = {
resource MX_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(MX.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/ns/main.bicep b/modules/network/dns-zone/ns/main.bicep
index a3a98d5302..3029815b19 100644
--- a/modules/network/dns-zone/ns/main.bicep
+++ b/modules/network/dns-zone/ns/main.bicep
@@ -17,7 +17,7 @@ param nsRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource NS 'Microsoft.Network/dnsZones/NS@2018-05-01' = {
resource NS_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(NS.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/ptr/main.bicep b/modules/network/dns-zone/ptr/main.bicep
index 3363462440..e23f47e094 100644
--- a/modules/network/dns-zone/ptr/main.bicep
+++ b/modules/network/dns-zone/ptr/main.bicep
@@ -17,7 +17,7 @@ param ptrRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource PTR 'Microsoft.Network/dnsZones/PTR@2018-05-01' = {
resource PTR_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(PTR.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/soa/main.bicep b/modules/network/dns-zone/soa/main.bicep
index 6a7fbe7acf..a3f18d13f5 100644
--- a/modules/network/dns-zone/soa/main.bicep
+++ b/modules/network/dns-zone/soa/main.bicep
@@ -17,7 +17,7 @@ param soaRecord object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SOA 'Microsoft.Network/dnsZones/SOA@2018-05-01' = {
resource SOA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SOA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/srv/main.bicep b/modules/network/dns-zone/srv/main.bicep
index c56b257c59..8577d499c2 100644
--- a/modules/network/dns-zone/srv/main.bicep
+++ b/modules/network/dns-zone/srv/main.bicep
@@ -17,7 +17,7 @@ param srvRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SRV 'Microsoft.Network/dnsZones/SRV@2018-05-01' = {
resource SRV_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SRV.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/txt/main.bicep b/modules/network/dns-zone/txt/main.bicep
index f2ceb2c1ac..411148a90c 100644
--- a/modules/network/dns-zone/txt/main.bicep
+++ b/modules/network/dns-zone/txt/main.bicep
@@ -17,7 +17,7 @@ param ttl int = 3600
@description('Optional. The list of TXT records in the record set.')
param txtRecords array = []
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource TXT 'Microsoft.Network/dnsZones/TXT@2018-05-01' = {
resource TXT_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(TXT.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/express-route-circuit/main.bicep b/modules/network/express-route-circuit/main.bicep
index 8318922213..523d957700 100644
--- a/modules/network/express-route-circuit/main.bicep
+++ b/modules/network/express-route-circuit/main.bicep
@@ -75,7 +75,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -182,7 +182,7 @@ resource expressRouteCircuits_diagnosticSettings 'Microsoft.Insights/diagnosticS
resource expressRouteCircuits_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(expressRouteCircuits.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -221,7 +221,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/express-route-gateway/main.bicep b/modules/network/express-route-gateway/main.bicep
index 811d433d11..3c092e14f1 100644
--- a/modules/network/express-route-gateway/main.bicep
+++ b/modules/network/express-route-gateway/main.bicep
@@ -26,7 +26,7 @@ param expressRouteConnections array = []
@description('Required. Resource ID of the Virtual Wan Hub.')
param virtualHubId string
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -87,7 +87,7 @@ resource expressRouteGateway_lock 'Microsoft.Authorization/locks@2020-05-01' = i
resource expressRouteGateway_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(expressRouteGateway.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -123,7 +123,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/front-door-web-application-firewall-policy/main.bicep b/modules/network/front-door-web-application-firewall-policy/main.bicep
index 2cf41330a7..27bfa8e63d 100644
--- a/modules/network/front-door-web-application-firewall-policy/main.bicep
+++ b/modules/network/front-door-web-application-firewall-policy/main.bicep
@@ -72,7 +72,7 @@ param policySettings object = {
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -121,7 +121,7 @@ resource frontDoorWAFPolicy_lock 'Microsoft.Authorization/locks@2020-05-01' = if
resource frontDoorWAFPolicy_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(frontDoorWAFPolicy.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -157,7 +157,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/front-door/main.bicep b/modules/network/front-door/main.bicep
index f9cc41e08a..bcaa533984 100644
--- a/modules/network/front-door/main.bicep
+++ b/modules/network/front-door/main.bicep
@@ -13,7 +13,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Resource tags.')
@@ -131,7 +131,7 @@ resource frontDoor_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@202
resource frontDoor_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(frontDoor.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -164,7 +164,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/ip-group/main.bicep b/modules/network/ip-group/main.bicep
index 3e14ba223f..08a30eee33 100644
--- a/modules/network/ip-group/main.bicep
+++ b/modules/network/ip-group/main.bicep
@@ -15,7 +15,7 @@ param ipAddresses array = []
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Resource tags.')
@@ -66,7 +66,7 @@ resource ipGroup_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource ipGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(ipGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -102,7 +102,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/load-balancer/main.bicep b/modules/network/load-balancer/main.bicep
index c3d1c82794..2fddc2f5ca 100644
--- a/modules/network/load-balancer/main.bicep
+++ b/modules/network/load-balancer/main.bicep
@@ -34,7 +34,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -231,7 +231,7 @@ resource loadBalancer_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@
resource loadBalancer_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(loadBalancer.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -270,7 +270,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/local-network-gateway/main.bicep b/modules/network/local-network-gateway/main.bicep
index 766ac4eb10..0d7877dc43 100644
--- a/modules/network/local-network-gateway/main.bicep
+++ b/modules/network/local-network-gateway/main.bicep
@@ -27,7 +27,7 @@ param localPeerWeight string = ''
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -92,7 +92,7 @@ resource localNetworkGateway_lock 'Microsoft.Authorization/locks@2020-05-01' = i
resource localNetworkGateway_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(localNetworkGateway.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -128,7 +128,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/nat-gateway/main.bicep b/modules/network/nat-gateway/main.bicep
index b3aab1a660..8e958da2d7 100644
--- a/modules/network/nat-gateway/main.bicep
+++ b/modules/network/nat-gateway/main.bicep
@@ -29,7 +29,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags for the resource.')
@@ -139,7 +139,7 @@ resource natGateway_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource natGateway_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(natGateway.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -175,7 +175,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/network-interface/main.bicep b/modules/network/network-interface/main.bicep
index 069ad203c6..18536ad362 100644
--- a/modules/network/network-interface/main.bicep
+++ b/modules/network/network-interface/main.bicep
@@ -53,7 +53,7 @@ param ipConfigurations array
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The diagnostic settings of the service.')
@@ -153,7 +153,7 @@ resource networkInterface_lock 'Microsoft.Authorization/locks@2020-05-01' = if (
resource networkInterface_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(networkInterface.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -188,7 +188,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/network-manager/main.bicep b/modules/network/network-manager/main.bicep
index 4fc57260bd..c867dd3d0c 100644
--- a/modules/network/network-manager/main.bicep
+++ b/modules/network/network-manager/main.bicep
@@ -142,7 +142,7 @@ resource networkManager_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource networkManager_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(networkManager.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
diff --git a/modules/network/network-security-group/main.bicep b/modules/network/network-security-group/main.bicep
index 83928e9024..83266cb10a 100644
--- a/modules/network/network-security-group/main.bicep
+++ b/modules/network/network-security-group/main.bicep
@@ -20,7 +20,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the NSG resource.')
@@ -136,7 +136,7 @@ resource networkSecurityGroup_diagnosticSettings 'Microsoft.Insights/diagnosticS
resource networkSecurityGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(networkSecurityGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -172,7 +172,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/network-watcher/main.bicep b/modules/network/network-watcher/main.bicep
index 6ee4903f61..4cde8cc540 100644
--- a/modules/network/network-watcher/main.bicep
+++ b/modules/network/network-watcher/main.bicep
@@ -18,7 +18,7 @@ param flowLogs array = []
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -69,7 +69,7 @@ resource networkWatcher_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource networkWatcher_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(networkWatcher.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -135,7 +135,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/a/main.bicep b/modules/network/private-dns-zone/a/main.bicep
index 14ed4d1909..3af41f05de 100644
--- a/modules/network/private-dns-zone/a/main.bicep
+++ b/modules/network/private-dns-zone/a/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -66,7 +66,7 @@ resource A 'Microsoft.Network/privateDnsZones/A@2020-06-01' = {
resource A_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(A.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/aaaa/main.bicep b/modules/network/private-dns-zone/aaaa/main.bicep
index d36d381db7..55bedbcb23 100644
--- a/modules/network/private-dns-zone/aaaa/main.bicep
+++ b/modules/network/private-dns-zone/aaaa/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -66,7 +66,7 @@ resource AAAA 'Microsoft.Network/privateDnsZones/AAAA@2020-06-01' = {
resource AAAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(AAAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/cname/main.bicep b/modules/network/private-dns-zone/cname/main.bicep
index 10ca076674..f4ecb997b2 100644
--- a/modules/network/private-dns-zone/cname/main.bicep
+++ b/modules/network/private-dns-zone/cname/main.bicep
@@ -17,7 +17,7 @@ param metadata object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource CNAME 'Microsoft.Network/privateDnsZones/CNAME@2020-06-01' = {
resource CNAME_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CNAME.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/main.bicep b/modules/network/private-dns-zone/main.bicep
index e1ee451d5a..483412a3fc 100644
--- a/modules/network/private-dns-zone/main.bicep
+++ b/modules/network/private-dns-zone/main.bicep
@@ -35,7 +35,7 @@ param virtualNetworkLinks array = []
@description('Optional. The location of the PrivateDNSZone. Should be global.')
param location string = 'global'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -210,7 +210,7 @@ resource privateDnsZone_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource privateDnsZone_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateDnsZone.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -246,7 +246,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/mx/main.bicep b/modules/network/private-dns-zone/mx/main.bicep
index 1937467d66..05ee1f52ba 100644
--- a/modules/network/private-dns-zone/mx/main.bicep
+++ b/modules/network/private-dns-zone/mx/main.bicep
@@ -17,7 +17,7 @@ param mxRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource MX 'Microsoft.Network/privateDnsZones/MX@2020-06-01' = {
resource MX_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(MX.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/ptr/main.bicep b/modules/network/private-dns-zone/ptr/main.bicep
index 2b4094fee9..961b4b64b1 100644
--- a/modules/network/private-dns-zone/ptr/main.bicep
+++ b/modules/network/private-dns-zone/ptr/main.bicep
@@ -17,7 +17,7 @@ param ptrRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -52,7 +52,7 @@ resource defaultTelemetry 'Microsoft.Resources/deployments@2021-04-01' = if (ena
resource PTR_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(PTR.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/soa/main.bicep b/modules/network/private-dns-zone/soa/main.bicep
index 5661f96a86..da4e144de9 100644
--- a/modules/network/private-dns-zone/soa/main.bicep
+++ b/modules/network/private-dns-zone/soa/main.bicep
@@ -17,7 +17,7 @@ param soaRecord object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SOA 'Microsoft.Network/privateDnsZones/SOA@2020-06-01' = {
resource SOA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SOA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/srv/main.bicep b/modules/network/private-dns-zone/srv/main.bicep
index aa5a1a95e1..2f945eeb97 100644
--- a/modules/network/private-dns-zone/srv/main.bicep
+++ b/modules/network/private-dns-zone/srv/main.bicep
@@ -17,7 +17,7 @@ param srvRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SRV 'Microsoft.Network/privateDnsZones/SRV@2020-06-01' = {
resource SRV_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SRV.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/txt/main.bicep b/modules/network/private-dns-zone/txt/main.bicep
index afbe9ae0f9..7d26882ed9 100644
--- a/modules/network/private-dns-zone/txt/main.bicep
+++ b/modules/network/private-dns-zone/txt/main.bicep
@@ -17,7 +17,7 @@ param ttl int = 3600
@description('Optional. The list of TXT records in the record set.')
param txtRecords array = []
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource TXT 'Microsoft.Network/privateDnsZones/TXT@2020-06-01' = {
resource TXT_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(TXT.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-endpoint/main.bicep b/modules/network/private-endpoint/main.bicep
index 1c5e1df2d1..6f3f837172 100644
--- a/modules/network/private-endpoint/main.bicep
+++ b/modules/network/private-endpoint/main.bicep
@@ -35,7 +35,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
@@ -126,7 +126,7 @@ resource privateEndpoint_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!
resource privateEndpoint_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateEndpoint.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -154,7 +154,7 @@ output location string = privateEndpoint.location
// ================ //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-link-service/main.bicep b/modules/network/private-link-service/main.bicep
index 6146a225bf..7f8f61068e 100644
--- a/modules/network/private-link-service/main.bicep
+++ b/modules/network/private-link-service/main.bicep
@@ -38,7 +38,7 @@ param visibility object = {}
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -93,7 +93,7 @@ resource privateLinkService_lock 'Microsoft.Authorization/locks@2020-05-01' = if
resource privateLinkService_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateLinkService.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -129,7 +129,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/public-ip-address/main.bicep b/modules/network/public-ip-address/main.bicep
index 46fd1decb2..fe295e6da1 100644
--- a/modules/network/public-ip-address/main.bicep
+++ b/modules/network/public-ip-address/main.bicep
@@ -67,7 +67,7 @@ param lock lockType
@description('Optional. Location for all resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -162,7 +162,7 @@ resource publicIpAddress_diagnosticSettings 'Microsoft.Insights/diagnosticSettin
resource publicIpAddress_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(publicIpAddress.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -200,7 +200,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/public-ip-prefix/main.bicep b/modules/network/public-ip-prefix/main.bicep
index 5261690b6d..97b513f893 100644
--- a/modules/network/public-ip-prefix/main.bicep
+++ b/modules/network/public-ip-prefix/main.bicep
@@ -17,7 +17,7 @@ param prefixLength int
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -76,7 +76,7 @@ resource publicIpPrefix_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource publicIpPrefix_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(publicIpPrefix.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -112,7 +112,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/route-table/main.bicep b/modules/network/route-table/main.bicep
index 3db1e9d17f..5be759f963 100644
--- a/modules/network/route-table/main.bicep
+++ b/modules/network/route-table/main.bicep
@@ -17,7 +17,7 @@ param disableBgpRoutePropagation bool = false
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -69,7 +69,7 @@ resource routeTable_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource routeTable_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(routeTable.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -105,7 +105,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/service-endpoint-policy/main.bicep b/modules/network/service-endpoint-policy/main.bicep
index c0183b63f9..9d9b83348d 100644
--- a/modules/network/service-endpoint-policy/main.bicep
+++ b/modules/network/service-endpoint-policy/main.bicep
@@ -20,7 +20,7 @@ param serviceAlias string = ''
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -73,7 +73,7 @@ resource serviceEndpointPolicy_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource serviceEndpointPolicy_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(serviceEndpointPolicy.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -109,7 +109,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/trafficmanagerprofile/main.bicep b/modules/network/trafficmanagerprofile/main.bicep
index 66238ec4dd..0b8890079e 100644
--- a/modules/network/trafficmanagerprofile/main.bicep
+++ b/modules/network/trafficmanagerprofile/main.bicep
@@ -56,7 +56,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Resource tags.')
@@ -143,7 +143,7 @@ resource trafficManagerProfile_diagnosticSettings 'Microsoft.Insights/diagnostic
resource trafficManagerProfile_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(trafficManagerProfile.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -176,7 +176,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/virtual-network-gateway/main.bicep b/modules/network/virtual-network-gateway/main.bicep
index b561f87fac..ec6385b67c 100644
--- a/modules/network/virtual-network-gateway/main.bicep
+++ b/modules/network/virtual-network-gateway/main.bicep
@@ -118,7 +118,7 @@ param publicIpDiagnosticSettings diagnosticSettingType
@description('Optional. The diagnostic settings of the service.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -374,7 +374,7 @@ resource virtualNetworkGateway_diagnosticSettings 'Microsoft.Insights/diagnostic
resource virtualNetworkGateway_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(virtualNetworkGateway.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -416,7 +416,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/virtual-network/main.bicep b/modules/network/virtual-network/main.bicep
index 0a4003d1e5..59201d89b2 100644
--- a/modules/network/virtual-network/main.bicep
+++ b/modules/network/virtual-network/main.bicep
@@ -43,7 +43,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -226,7 +226,7 @@ resource virtualNetwork_diagnosticSettings 'Microsoft.Insights/diagnosticSetting
resource virtualNetwork_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(virtualNetwork.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -268,7 +268,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/virtual-network/subnet/main.bicep b/modules/network/virtual-network/subnet/main.bicep
index 5f0fadf82e..3e8d129499 100644
--- a/modules/network/virtual-network/subnet/main.bicep
+++ b/modules/network/virtual-network/subnet/main.bicep
@@ -54,7 +54,7 @@ param ipAllocations array = []
@description('Optional. An array of service endpoint policies.')
param serviceEndpointPolicies array = []
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -113,7 +113,7 @@ resource subnet 'Microsoft.Network/virtualNetworks/subnets@2023-04-01' = {
resource subnet_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(subnet.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -143,7 +143,7 @@ output subnetAddressPrefixes array = !empty(addressPrefixes) ? subnet.properties
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/virtual-wan/main.bicep b/modules/network/virtual-wan/main.bicep
index 6d3f3fe0b0..b108e4573b 100644
--- a/modules/network/virtual-wan/main.bicep
+++ b/modules/network/virtual-wan/main.bicep
@@ -24,7 +24,7 @@ param allowVnetToVnetTraffic bool = false
@description('Optional. VPN encryption to be disabled or not.')
param disableVpnEncryption bool = false
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -81,7 +81,7 @@ resource virtualWan_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource virtualWan_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(virtualWan.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -117,7 +117,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/vpn-site/main.bicep b/modules/network/vpn-site/main.bicep
index cb5c422359..182a3ef359 100644
--- a/modules/network/vpn-site/main.bicep
+++ b/modules/network/vpn-site/main.bicep
@@ -41,7 +41,7 @@ param vpnSiteLinks array = []
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -97,7 +97,7 @@ resource vpnSite_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource vpnSite_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(vpnSite.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -133,7 +133,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/operational-insights/workspace/main.bicep b/modules/operational-insights/workspace/main.bicep
index 83935efb70..e91809200c 100644
--- a/modules/operational-insights/workspace/main.bicep
+++ b/modules/operational-insights/workspace/main.bicep
@@ -88,7 +88,7 @@ param forceCmkForQuery bool = true
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -305,7 +305,7 @@ resource logAnalyticsWorkspace_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource logAnalyticsWorkspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(logAnalyticsWorkspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -355,7 +355,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/power-bi-dedicated/capacity/main.bicep b/modules/power-bi-dedicated/capacity/main.bicep
index c155245138..eafa0f6bf5 100644
--- a/modules/power-bi-dedicated/capacity/main.bicep
+++ b/modules/power-bi-dedicated/capacity/main.bicep
@@ -49,7 +49,7 @@ param mode string = 'Gen2'
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -103,7 +103,7 @@ resource capacity_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(l
resource capacity_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(capacity.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -139,7 +139,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/purview/account/main.bicep b/modules/purview/account/main.bicep
index 73cd7a3c1e..b93675e30d 100644
--- a/modules/purview/account/main.bicep
+++ b/modules/purview/account/main.bicep
@@ -30,7 +30,7 @@ param publicNetworkAccess string = 'NotSpecified'
@description('Optional. The diagnostic settings of the service.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for Purview Account private endpoints. For security reasons, it is recommended to use private endpoints whenever possible. Make sure the service property is set to \'account\'.')
@@ -257,7 +257,7 @@ module eventHub_privateEndpoints '../../network/private-endpoint/main.bicep' = [
resource account_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(account.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -313,7 +313,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/recovery-services/vault/main.bicep b/modules/recovery-services/vault/main.bicep
index ec25f0ce5d..276f4850c4 100644
--- a/modules/recovery-services/vault/main.bicep
+++ b/modules/recovery-services/vault/main.bicep
@@ -38,7 +38,7 @@ param replicationAlertSettings object = {}
@description('Optional. The diagnostic settings of the service.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -269,7 +269,7 @@ module rsv_privateEndpoints '../../network/private-endpoint/main.bicep' = [for (
resource rsv_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(rsv.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -316,7 +316,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -393,7 +393,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/relay/namespace/hybrid-connection/main.bicep b/modules/relay/namespace/hybrid-connection/main.bicep
index 26c75f7734..fcda242bda 100644
--- a/modules/relay/namespace/hybrid-connection/main.bicep
+++ b/modules/relay/namespace/hybrid-connection/main.bicep
@@ -45,7 +45,7 @@ param authorizationRules array = [
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -112,7 +112,7 @@ resource hybridConnection_lock 'Microsoft.Authorization/locks@2020-05-01' = if (
resource hybridConnection_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(hybridConnection.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -145,7 +145,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/relay/namespace/main.bicep b/modules/relay/namespace/main.bicep
index 6f02fe6c2f..3ffa30c756 100644
--- a/modules/relay/namespace/main.bicep
+++ b/modules/relay/namespace/main.bicep
@@ -34,7 +34,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
@@ -241,7 +241,7 @@ module namespace_privateEndpoints '../../network/private-endpoint/main.bicep' =
resource namespace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(namespace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -277,7 +277,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -354,7 +354,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/relay/namespace/wcf-relay/main.bicep b/modules/relay/namespace/wcf-relay/main.bicep
index b550e525f9..f5a030cfa5 100644
--- a/modules/relay/namespace/wcf-relay/main.bicep
+++ b/modules/relay/namespace/wcf-relay/main.bicep
@@ -55,7 +55,7 @@ param authorizationRules array = [
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -124,7 +124,7 @@ resource wcfRelay_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(l
resource wcfRelay_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(wcfRelay.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -157,7 +157,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/resource-graph/query/main.bicep b/modules/resource-graph/query/main.bicep
index e4e5472ea4..229c82e68c 100644
--- a/modules/resource-graph/query/main.bicep
+++ b/modules/resource-graph/query/main.bicep
@@ -11,7 +11,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -68,7 +68,7 @@ resource rgQuery_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource rgQuery_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(rgQuery.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -104,7 +104,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/resources/resource-group/main.bicep b/modules/resources/resource-group/main.bicep
index b4d65b905a..7bb4f4cc20 100644
--- a/modules/resources/resource-group/main.bicep
+++ b/modules/resources/resource-group/main.bicep
@@ -13,7 +13,7 @@ param location string = deployment().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the storage account resource.')
@@ -71,7 +71,7 @@ module resourceGroup_lock 'modules/nested_lock.bicep' = if (!empty(lock ?? {}) &
resource resourceGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(resourceGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -103,7 +103,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/search/search-service/main.bicep b/modules/search/search-service/main.bicep
index 8f044e1609..b408103f8d 100644
--- a/modules/search/search-service/main.bicep
+++ b/modules/search/search-service/main.bicep
@@ -65,7 +65,7 @@ param publicNetworkAccess string = 'enabled'
@maxValue(12)
param replicaCount int = 1
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Defines the SKU of an Azure Cognitive Search Service, which determines price tier and capacity limits.')
@@ -186,7 +186,7 @@ resource searchService_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!em
resource searchService_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(searchService.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -275,7 +275,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -352,7 +352,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/service-bus/namespace/main.bicep b/modules/service-bus/namespace/main.bicep
index 4daedd1379..04d5cc64a3 100644
--- a/modules/service-bus/namespace/main.bicep
+++ b/modules/service-bus/namespace/main.bicep
@@ -72,7 +72,7 @@ param lock lockType
@description('Optional. The managed identity definition for this resource.')
param managedIdentities managedIdentitiesType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Whether or not public network access is allowed for this resource. For security reasons it should be disabled. If not specified, it will be disabled by default if private endpoints are set.')
@@ -365,7 +365,7 @@ module serviceBusNamespace_privateEndpoints '../../network/private-endpoint/main
resource serviceBusNamespace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(serviceBusNamespace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -412,7 +412,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -489,7 +489,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/service-bus/namespace/queue/main.bicep b/modules/service-bus/namespace/queue/main.bicep
index a4ab68d0ba..2f111f109e 100644
--- a/modules/service-bus/namespace/queue/main.bicep
+++ b/modules/service-bus/namespace/queue/main.bicep
@@ -88,7 +88,7 @@ param authorizationRules array = [
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -169,7 +169,7 @@ resource queue_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lock
resource queue_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(queue.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -202,7 +202,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/service-bus/namespace/topic/main.bicep b/modules/service-bus/namespace/topic/main.bicep
index 7aba25aa34..9ff8bdcb06 100644
--- a/modules/service-bus/namespace/topic/main.bicep
+++ b/modules/service-bus/namespace/topic/main.bicep
@@ -73,7 +73,7 @@ param authorizationRules array = [
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -149,7 +149,7 @@ resource topic_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lock
resource topic_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(topic.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -182,7 +182,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/service-fabric/cluster/main.bicep b/modules/service-fabric/cluster/main.bicep
index 86f0780b18..b49631e5e7 100644
--- a/modules/service-fabric/cluster/main.bicep
+++ b/modules/service-fabric/cluster/main.bicep
@@ -128,7 +128,7 @@ param vmssZonalUpgradeMode string = 'Hierarchical'
@description('Optional. Boolean to pause automatic runtime version upgrades to the cluster.')
param waveUpgradePaused bool = false
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Array of Service Fabric cluster application types.')
@@ -300,7 +300,7 @@ resource serviceFabricCluster_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource serviceFabricCluster_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(serviceFabricCluster.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -350,7 +350,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/signal-r-service/signal-r/main.bicep b/modules/signal-r-service/signal-r/main.bicep
index 59510d3f23..651e8d9707 100644
--- a/modules/signal-r-service/signal-r/main.bicep
+++ b/modules/signal-r-service/signal-r/main.bicep
@@ -95,7 +95,7 @@ param privateEndpoints privateEndpointType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -211,7 +211,7 @@ resource signalR_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource signalR_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(signalR.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -247,7 +247,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -324,7 +324,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/signal-r-service/web-pub-sub/main.bicep b/modules/signal-r-service/web-pub-sub/main.bicep
index 141b8dbb59..7590254f7a 100644
--- a/modules/signal-r-service/web-pub-sub/main.bicep
+++ b/modules/signal-r-service/web-pub-sub/main.bicep
@@ -14,7 +14,7 @@ param privateEndpoints privateEndpointType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -168,7 +168,7 @@ resource webPubSub_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(
resource webPubSub_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(webPubSub.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -227,7 +227,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -304,7 +304,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/sql/managed-instance/main.bicep b/modules/sql/managed-instance/main.bicep
index 71e9246b15..955174b9e9 100644
--- a/modules/sql/managed-instance/main.bicep
+++ b/modules/sql/managed-instance/main.bicep
@@ -92,7 +92,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -253,7 +253,7 @@ resource managedInstance_diagnosticSettings 'Microsoft.Insights/diagnosticSettin
resource managedInstance_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(managedInstance.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -390,7 +390,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/sql/server/main.bicep b/modules/sql/server/main.bicep
index 10704ba9fa..c3654e9520 100644
--- a/modules/sql/server/main.bicep
+++ b/modules/sql/server/main.bicep
@@ -24,7 +24,7 @@ param primaryUserAssignedIdentityId string = ''
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -159,7 +159,7 @@ resource server_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(loc
resource server_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(server.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -373,7 +373,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -450,7 +450,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/storage/storage-account/blob-service/container/main.bicep b/modules/storage/storage-account/blob-service/container/main.bicep
index 7326ed40c4..2515388344 100644
--- a/modules/storage/storage-account/blob-service/container/main.bicep
+++ b/modules/storage/storage-account/blob-service/container/main.bicep
@@ -41,7 +41,7 @@ param metadata object = {}
@description('Optional. Specifies whether data in the container may be accessed publicly and the level of access.')
param publicAccess string = 'None'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -125,7 +125,7 @@ module immutabilityPolicy 'immutability-policy/main.bicep' = if (!empty(immutabi
resource container_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(container.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -149,7 +149,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/storage/storage-account/file-service/share/main.bicep b/modules/storage/storage-account/file-service/share/main.bicep
index 656058fb92..554464fc4a 100644
--- a/modules/storage/storage-account/file-service/share/main.bicep
+++ b/modules/storage/storage-account/file-service/share/main.bicep
@@ -39,7 +39,7 @@ param enabledProtocols string = 'SMB'
@description('Optional. Permissions for NFS file shares are enforced by the client OS rather than the Azure Files service. Toggling the root squash behavior reduces the rights of the root user for NFS shares.')
param rootSquash string = 'NoRootSquash'
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -104,7 +104,7 @@ resource fileShare 'Microsoft.Storage/storageAccounts/fileServices/shares@2021-0
resource fileShare_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(fileShare.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -128,7 +128,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/storage/storage-account/main.bicep b/modules/storage/storage-account/main.bicep
index 2c8f1cdacb..81f8427eda 100644
--- a/modules/storage/storage-account/main.bicep
+++ b/modules/storage/storage-account/main.bicep
@@ -9,7 +9,7 @@ param name string
@description('Optional. Location for all resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The managed identity definition for this resource.')
@@ -330,7 +330,7 @@ resource storageAccount_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource storageAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(storageAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -497,7 +497,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -574,7 +574,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/storage/storage-account/queue-service/queue/main.bicep b/modules/storage/storage-account/queue-service/queue/main.bicep
index bb2ee92dcd..8394d222c7 100644
--- a/modules/storage/storage-account/queue-service/queue/main.bicep
+++ b/modules/storage/storage-account/queue-service/queue/main.bicep
@@ -12,7 +12,7 @@ param name string
@description('Required. A name-value pair that represents queue metadata.')
param metadata object = {}
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -74,7 +74,7 @@ resource queue 'Microsoft.Storage/storageAccounts/queueServices/queues@2021-09-0
resource queue_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(queue.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -98,7 +98,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/synapse/private-link-hub/main.bicep b/modules/synapse/private-link-hub/main.bicep
index 63beeebac2..bd100e3ab1 100644
--- a/modules/synapse/private-link-hub/main.bicep
+++ b/modules/synapse/private-link-hub/main.bicep
@@ -17,7 +17,7 @@ param lock lockType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
@@ -65,7 +65,7 @@ resource privateLinkHub_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource privateLinkHub_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateLinkHub.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -126,7 +126,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -203,7 +203,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/synapse/workspace/main.bicep b/modules/synapse/workspace/main.bicep
index 8f3a6081b1..5071d3792b 100644
--- a/modules/synapse/workspace/main.bicep
+++ b/modules/synapse/workspace/main.bicep
@@ -82,7 +82,7 @@ param managedIdentities managedIdentitiesType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
@@ -244,7 +244,7 @@ resource workspace_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(
resource workspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(workspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -336,7 +336,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -413,7 +413,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/virtual-machine-images/image-template/main.bicep b/modules/virtual-machine-images/image-template/main.bicep
index fe3615ab8a..bf152429d2 100644
--- a/modules/virtual-machine-images/image-template/main.bicep
+++ b/modules/virtual-machine-images/image-template/main.bicep
@@ -77,7 +77,7 @@ param baseTime string = utcNow('yyyy-MM-dd-HH-mm-ss')
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
var managedImageNameVar = '${managedImageName}-${baseTime}'
@@ -197,7 +197,7 @@ resource imageTemplate_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!em
resource imageTemplate_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(imageTemplate.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -239,7 +239,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/web/connection/main.bicep b/modules/web/connection/main.bicep
index 96bb44f427..833405ad8a 100644
--- a/modules/web/connection/main.bicep
+++ b/modules/web/connection/main.bicep
@@ -28,7 +28,7 @@ param nonSecretParameterValues object = {}
@secure()
param parameterValues object = {}
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Status of the connection.')
@@ -90,7 +90,7 @@ resource connection_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource connection_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(connection.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -126,7 +126,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/web/hosting-environment/main.bicep b/modules/web/hosting-environment/main.bicep
index 9088e0474d..6119f42ebe 100644
--- a/modules/web/hosting-environment/main.bicep
+++ b/modules/web/hosting-environment/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Resource tags.')
@@ -225,7 +225,7 @@ resource appServiceEnvironment_diagnosticSettings 'Microsoft.Insights/diagnostic
resource appServiceEnvironment_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(appServiceEnvironment.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -269,7 +269,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/web/serverfarm/main.bicep b/modules/web/serverfarm/main.bicep
index d5bc0cd954..81f5bb336a 100644
--- a/modules/web/serverfarm/main.bicep
+++ b/modules/web/serverfarm/main.bicep
@@ -45,7 +45,7 @@ param targetWorkerSize int = 0
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -136,7 +136,7 @@ resource appServicePlan_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource appServicePlan_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(appServicePlan.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -175,7 +175,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/web/site/main.bicep b/modules/web/site/main.bicep
index 6440c271b1..78c7f41c6c 100644
--- a/modules/web/site/main.bicep
+++ b/modules/web/site/main.bicep
@@ -87,7 +87,7 @@ param tags object?
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The diagnostic settings of the service.')
@@ -349,7 +349,7 @@ resource app_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05-0
resource app_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(app.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -432,7 +432,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -509,7 +509,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/web/site/slot/main.bicep b/modules/web/site/slot/main.bicep
index 49722f7eef..dd2199d0bd 100644
--- a/modules/web/site/slot/main.bicep
+++ b/modules/web/site/slot/main.bicep
@@ -75,7 +75,7 @@ param tags object?
@description('Optional. Enable telemetry via the Customer Usage Attribution ID (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. The diagnostic settings of the service.')
@@ -305,7 +305,7 @@ resource slot_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05-
resource slot_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(slot.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -376,7 +376,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -453,7 +453,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/web/static-site/main.bicep b/modules/web/static-site/main.bicep
index 6ca47ca5ec..704cebbe70 100644
--- a/modules/web/static-site/main.bicep
+++ b/modules/web/static-site/main.bicep
@@ -70,7 +70,7 @@ param tags object?
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+@description('Optional. Array of role assignments to create.')
param roleAssignments roleAssignmentType
@description('Optional. Object with "resourceId" and "location" of the a user defined function app.')
@@ -190,7 +190,7 @@ resource staticSite_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource staticSite_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(staticSite.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -264,7 +264,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
+ @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -341,7 +341,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Optional. Array of role assignments to create.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
From 55ae03f1f3ccfb45609e166158adeb9163845686 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 21:59:58 +0100
Subject: [PATCH 2/7] Updated test cases
---
.../server/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../server/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../service/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../service/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/encr/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../automation-account/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../batch-account/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../redis-enterprise/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/cdn/profile/tests/e2e/afd/main.test.bicep | 12 +++++++++++-
modules/cdn/profile/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../profile/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../account/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../account/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../availability-set/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/accessPolicies/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/compute/disk/tests/e2e/image/main.test.bicep | 12 +++++++++++-
.../compute/disk/tests/e2e/import/main.test.bicep | 12 +++++++++++-
modules/compute/disk/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../disk/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../compute/gallery/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../gallery/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/compute/image/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../image/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../virtual-machine/tests/e2e/linux/main.test.bicep | 12 +++++++++++-
.../tests/e2e/windows/main.test.bicep | 12 +++++++++++-
.../registry/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../registry/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../managed-cluster/tests/e2e/azure/main.test.bicep | 12 +++++++++++-
.../tests/e2e/kubenet/main.test.bicep | 12 +++++++++++-
.../factory/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../factory/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../backup-vault/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../access-connector/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/private/main.test.bicep | 12 +++++++++++-
.../application-group/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../host-pool/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../host-pool/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../scaling-plan/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../dev-test-lab/lab/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../lab/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/gremlindb/main.test.bicep | 12 +++++++++++-
.../tests/e2e/mongodb/main.test.bicep | 12 +++++++++++-
.../database-account/tests/e2e/plain/main.test.bicep | 12 +++++++++++-
.../database-account/tests/e2e/sqldb/main.test.bicep | 12 +++++++++++-
.../event-grid/domain/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../domain/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../system-topic/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../event-grid/topic/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../topic/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../namespace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../namespace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../health-bot/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../health-bot/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../activity-log-alert/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../insights/component/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../component/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../metric-alert/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../private-link-scope/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../key-vault/vault/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../vault/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/logic/workflow/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workflow/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../net-app-account/tests/e2e/nfs3/main.test.bicep | 12 +++++++++++-
.../net-app-account/tests/e2e/nfs41/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../azure-firewall/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../bastion-host/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network/dns-zone/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../dns-zone/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network/front-door/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../front-door/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network/ip-group/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../ip-group/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../load-balancer/tests/e2e/internal/main.test.bicep | 12 +++++++++++-
.../load-balancer/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../nat-gateway/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/prefixCombined/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network-interface/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network-manager/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network-watcher/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../private-dns-zone/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../private-endpoint/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../public-ip-address/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../public-ip-prefix/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../route-table/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/aadvpn/main.test.bicep | 12 +++++++++++-
.../virtual-network/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../virtual-wan/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../network/vpn-site/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../vpn-site/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../capacity/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../capacity/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../purview/account/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../account/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../vault/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../vault/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../relay/namespace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../namespace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../query/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../query/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../resource-group/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../namespace/tests/e2e/encr/main.test.bicep | 12 +++++++++++-
.../cluster/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../cluster/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../managed-instance/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/sql/server/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../sql/server/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../storage-account/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../storage-account/tests/e2e/nfs/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../synapse/workspace/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../image-template/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
modules/web/connection/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../connection/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../tests/e2e/asev2/main.test.bicep | 12 +++++++++++-
.../tests/e2e/asev3/main.test.bicep | 12 +++++++++++-
modules/web/serverfarm/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../serverfarm/tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
.../site/tests/e2e/functionAppCommon/main.test.bicep | 12 +++++++++++-
.../web/site/tests/e2e/webAppCommon/main.test.bicep | 12 +++++++++++-
.../web/static-site/tests/e2e/max/main.test.bicep | 12 +++++++++++-
.../tests/e2e/waf-aligned/main.test.bicep | 12 +++++++++++-
195 files changed, 2145 insertions(+), 195 deletions(-)
diff --git a/modules/analysis-services/server/tests/e2e/max/main.test.bicep b/modules/analysis-services/server/tests/e2e/max/main.test.bicep
index 95d51e6ea4..93bfb2efaa 100644
--- a/modules/analysis-services/server/tests/e2e/max/main.test.bicep
+++ b/modules/analysis-services/server/tests/e2e/max/main.test.bicep
@@ -85,7 +85,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep b/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
index e5705e2cbf..0c14838fd4 100644
--- a/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
@@ -85,7 +85,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/api-management/service/tests/e2e/max/main.test.bicep b/modules/api-management/service/tests/e2e/max/main.test.bicep
index 609d61a44b..5a03a93afb 100644
--- a/modules/api-management/service/tests/e2e/max/main.test.bicep
+++ b/modules/api-management/service/tests/e2e/max/main.test.bicep
@@ -194,7 +194,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep b/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
index a722f02c9d..5766ea4398 100644
--- a/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
@@ -194,7 +194,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/app-configuration/configuration-store/tests/e2e/encr/main.test.bicep b/modules/app-configuration/configuration-store/tests/e2e/encr/main.test.bicep
index df73c1e7d6..8c676e3be7 100644
--- a/modules/app-configuration/configuration-store/tests/e2e/encr/main.test.bicep
+++ b/modules/app-configuration/configuration-store/tests/e2e/encr/main.test.bicep
@@ -75,7 +75,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/app-configuration/configuration-store/tests/e2e/max/main.test.bicep b/modules/app-configuration/configuration-store/tests/e2e/max/main.test.bicep
index f3f76a3b95..a3bba846cd 100644
--- a/modules/app-configuration/configuration-store/tests/e2e/max/main.test.bicep
+++ b/modules/app-configuration/configuration-store/tests/e2e/max/main.test.bicep
@@ -104,7 +104,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep b/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
index d5aa0ab214..152235517f 100644
--- a/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
@@ -104,7 +104,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/automation/automation-account/tests/e2e/max/main.test.bicep b/modules/automation/automation-account/tests/e2e/max/main.test.bicep
index 4a97bffb39..b77d8bbd82 100644
--- a/modules/automation/automation-account/tests/e2e/max/main.test.bicep
+++ b/modules/automation/automation-account/tests/e2e/max/main.test.bicep
@@ -137,7 +137,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep b/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
index f024413f06..4266543fe8 100644
--- a/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
@@ -137,7 +137,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/batch/batch-account/tests/e2e/max/main.test.bicep b/modules/batch/batch-account/tests/e2e/max/main.test.bicep
index 64ae401f0e..34f9365e72 100644
--- a/modules/batch/batch-account/tests/e2e/max/main.test.bicep
+++ b/modules/batch/batch-account/tests/e2e/max/main.test.bicep
@@ -91,7 +91,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
poolAllocationMode: 'BatchService'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
index d4edb44cb9..04c51335c4 100644
--- a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
@@ -91,7 +91,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
poolAllocationMode: 'BatchService'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cache/redis-enterprise/tests/e2e/max/main.test.bicep b/modules/cache/redis-enterprise/tests/e2e/max/main.test.bicep
index 11967b6582..baf56e3e5e 100644
--- a/modules/cache/redis-enterprise/tests/e2e/max/main.test.bicep
+++ b/modules/cache/redis-enterprise/tests/e2e/max/main.test.bicep
@@ -89,7 +89,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep b/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
index e11f40719a..c7129d2a02 100644
--- a/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
@@ -89,7 +89,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cdn/profile/tests/e2e/afd/main.test.bicep b/modules/cdn/profile/tests/e2e/afd/main.test.bicep
index 9d3e21d539..e9e3864bf9 100644
--- a/modules/cdn/profile/tests/e2e/afd/main.test.bicep
+++ b/modules/cdn/profile/tests/e2e/afd/main.test.bicep
@@ -60,7 +60,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
enableDefaultTelemetry: enableDefaultTelemetry
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cdn/profile/tests/e2e/max/main.test.bicep b/modules/cdn/profile/tests/e2e/max/main.test.bicep
index fb18eefa09..85bf8f601d 100644
--- a/modules/cdn/profile/tests/e2e/max/main.test.bicep
+++ b/modules/cdn/profile/tests/e2e/max/main.test.bicep
@@ -93,7 +93,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep b/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
index 00e2285b20..3ea25311c3 100644
--- a/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
@@ -93,7 +93,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cognitive-services/account/tests/e2e/max/main.test.bicep b/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
index 5652d77380..86248b7af2 100644
--- a/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
+++ b/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
@@ -104,7 +104,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
index 06069401e4..5e9e6a67d2 100644
--- a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
@@ -104,7 +104,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/availability-set/tests/e2e/max/main.test.bicep b/modules/compute/availability-set/tests/e2e/max/main.test.bicep
index 1241842e7b..af84f42458 100644
--- a/modules/compute/availability-set/tests/e2e/max/main.test.bicep
+++ b/modules/compute/availability-set/tests/e2e/max/main.test.bicep
@@ -61,7 +61,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
proximityPlacementGroupResourceId: nestedDependencies.outputs.proximityPlacementGroupResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
index 7a305c8119..d954cdec4e 100644
--- a/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
@@ -61,7 +61,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
proximityPlacementGroupResourceId: nestedDependencies.outputs.proximityPlacementGroupResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk-encryption-set/tests/e2e/accessPolicies/main.test.bicep b/modules/compute/disk-encryption-set/tests/e2e/accessPolicies/main.test.bicep
index f494661b94..c7ca375354 100644
--- a/modules/compute/disk-encryption-set/tests/e2e/accessPolicies/main.test.bicep
+++ b/modules/compute/disk-encryption-set/tests/e2e/accessPolicies/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
keyVaultResourceId: nestedDependencies.outputs.keyVaultResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk-encryption-set/tests/e2e/max/main.test.bicep b/modules/compute/disk-encryption-set/tests/e2e/max/main.test.bicep
index b71ed7a6ec..23cb40bc46 100644
--- a/modules/compute/disk-encryption-set/tests/e2e/max/main.test.bicep
+++ b/modules/compute/disk-encryption-set/tests/e2e/max/main.test.bicep
@@ -66,7 +66,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
keyVaultResourceId: nestedDependencies.outputs.keyVaultResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
index c49b0266d2..ff2c5d1000 100644
--- a/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
@@ -66,7 +66,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
keyVaultResourceId: nestedDependencies.outputs.keyVaultResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk/tests/e2e/image/main.test.bicep b/modules/compute/disk/tests/e2e/image/main.test.bicep
index 7b49045a5d..67fd259073 100644
--- a/modules/compute/disk/tests/e2e/image/main.test.bicep
+++ b/modules/compute/disk/tests/e2e/image/main.test.bicep
@@ -54,7 +54,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
imageReferenceId: '${subscription().id}/Providers/Microsoft.Compute/Locations/westeurope/Publishers/MicrosoftWindowsServer/ArtifactTypes/VMImage/Offers/WindowsServer/Skus/2022-datacenter-azure-edition/Versions/20348.1006.220908'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk/tests/e2e/import/main.test.bicep b/modules/compute/disk/tests/e2e/import/main.test.bicep
index e343bbfbdc..0622d78455 100644
--- a/modules/compute/disk/tests/e2e/import/main.test.bicep
+++ b/modules/compute/disk/tests/e2e/import/main.test.bicep
@@ -57,7 +57,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
createOption: 'Import'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk/tests/e2e/max/main.test.bicep b/modules/compute/disk/tests/e2e/max/main.test.bicep
index cd544f46b9..25ab818edd 100644
--- a/modules/compute/disk/tests/e2e/max/main.test.bicep
+++ b/modules/compute/disk/tests/e2e/max/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicNetworkAccess: 'Enabled'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
index 0b70c6e0b5..eec8ac4728 100644
--- a/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicNetworkAccess: 'Enabled'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/gallery/tests/e2e/max/main.test.bicep b/modules/compute/gallery/tests/e2e/max/main.test.bicep
index efc7e9a946..2562a048e5 100644
--- a/modules/compute/gallery/tests/e2e/max/main.test.bicep
+++ b/modules/compute/gallery/tests/e2e/max/main.test.bicep
@@ -176,7 +176,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
index c519821e4f..ef714096ae 100644
--- a/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
@@ -176,7 +176,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/image/tests/e2e/max/main.test.bicep b/modules/compute/image/tests/e2e/max/main.test.bicep
index e4da6461c2..4ef529aeea 100644
--- a/modules/compute/image/tests/e2e/max/main.test.bicep
+++ b/modules/compute/image/tests/e2e/max/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
hyperVGeneration: 'V1'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
index 8403077e92..25e54e440f 100644
--- a/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
hyperVGeneration: 'V1'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/proximity-placement-group/tests/e2e/max/main.test.bicep b/modules/compute/proximity-placement-group/tests/e2e/max/main.test.bicep
index c996b25ec1..a0e4f0cbc6 100644
--- a/modules/compute/proximity-placement-group/tests/e2e/max/main.test.bicep
+++ b/modules/compute/proximity-placement-group/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
index 498ccb1f1d..c6559f5113 100644
--- a/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/virtual-machine/tests/e2e/linux/main.test.bicep b/modules/compute/virtual-machine/tests/e2e/linux/main.test.bicep
index a0562afb0a..b4b5e7ba57 100644
--- a/modules/compute/virtual-machine/tests/e2e/linux/main.test.bicep
+++ b/modules/compute/virtual-machine/tests/e2e/linux/main.test.bicep
@@ -281,7 +281,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/compute/virtual-machine/tests/e2e/windows/main.test.bicep b/modules/compute/virtual-machine/tests/e2e/windows/main.test.bicep
index e095862d0d..7bc8a2c00f 100644
--- a/modules/compute/virtual-machine/tests/e2e/windows/main.test.bicep
+++ b/modules/compute/virtual-machine/tests/e2e/windows/main.test.bicep
@@ -302,7 +302,17 @@ module testDeployment '../../../main.bicep' = {
proximityPlacementGroupResourceId: nestedDependencies.outputs.proximityPlacementGroupResourceId
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/container-registry/registry/tests/e2e/max/main.test.bicep b/modules/container-registry/registry/tests/e2e/max/main.test.bicep
index d846a7b696..767cc9ee2e 100644
--- a/modules/container-registry/registry/tests/e2e/max/main.test.bicep
+++ b/modules/container-registry/registry/tests/e2e/max/main.test.bicep
@@ -124,7 +124,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep b/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
index f0bf4552b3..a7cb09fedf 100644
--- a/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
@@ -124,7 +124,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/container-service/managed-cluster/tests/e2e/azure/main.test.bicep b/modules/container-service/managed-cluster/tests/e2e/azure/main.test.bicep
index 32f8c42ed3..c5cc686316 100644
--- a/modules/container-service/managed-cluster/tests/e2e/azure/main.test.bicep
+++ b/modules/container-service/managed-cluster/tests/e2e/azure/main.test.bicep
@@ -200,7 +200,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/container-service/managed-cluster/tests/e2e/kubenet/main.test.bicep b/modules/container-service/managed-cluster/tests/e2e/kubenet/main.test.bicep
index 9c91011d20..cede954b18 100644
--- a/modules/container-service/managed-cluster/tests/e2e/kubenet/main.test.bicep
+++ b/modules/container-service/managed-cluster/tests/e2e/kubenet/main.test.bicep
@@ -151,7 +151,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/data-factory/factory/tests/e2e/max/main.test.bicep b/modules/data-factory/factory/tests/e2e/max/main.test.bicep
index a04cfe8f10..7134060c90 100644
--- a/modules/data-factory/factory/tests/e2e/max/main.test.bicep
+++ b/modules/data-factory/factory/tests/e2e/max/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep b/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
index 28b941a4e4..759d204c6e 100644
--- a/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/data-protection/backup-vault/tests/e2e/max/main.test.bicep b/modules/data-protection/backup-vault/tests/e2e/max/main.test.bicep
index 4d25b7b7c4..588b2e0c20 100644
--- a/modules/data-protection/backup-vault/tests/e2e/max/main.test.bicep
+++ b/modules/data-protection/backup-vault/tests/e2e/max/main.test.bicep
@@ -55,7 +55,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: '${namePrefix}${serviceShort}001'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep b/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
index 8d44a80490..e759bafccf 100644
--- a/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
@@ -55,7 +55,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: '${namePrefix}${serviceShort}001'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/databricks/access-connector/tests/e2e/max/main.test.bicep b/modules/databricks/access-connector/tests/e2e/max/main.test.bicep
index 268b24f056..586cd17f0c 100644
--- a/modules/databricks/access-connector/tests/e2e/max/main.test.bicep
+++ b/modules/databricks/access-connector/tests/e2e/max/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep b/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
index bf7405d2c9..ad07ff394b 100644
--- a/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/databricks/workspace/tests/e2e/max/main.test.bicep b/modules/databricks/workspace/tests/e2e/max/main.test.bicep
index 00f1d84997..5656e772da 100644
--- a/modules/databricks/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/databricks/workspace/tests/e2e/max/main.test.bicep
@@ -103,7 +103,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
index 537323ad34..154a85210b 100644
--- a/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -103,7 +103,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/db-for-my-sql/flexible-server/tests/e2e/private/main.test.bicep b/modules/db-for-my-sql/flexible-server/tests/e2e/private/main.test.bicep
index e5203d967c..46a67b9445 100644
--- a/modules/db-for-my-sql/flexible-server/tests/e2e/private/main.test.bicep
+++ b/modules/db-for-my-sql/flexible-server/tests/e2e/private/main.test.bicep
@@ -76,7 +76,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/application-group/tests/e2e/max/main.test.bicep b/modules/desktop-virtualization/application-group/tests/e2e/max/main.test.bicep
index 49d1fc5088..3529748317 100644
--- a/modules/desktop-virtualization/application-group/tests/e2e/max/main.test.bicep
+++ b/modules/desktop-virtualization/application-group/tests/e2e/max/main.test.bicep
@@ -106,7 +106,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
index a5bb068c02..b09e264ac2 100644
--- a/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
@@ -106,7 +106,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/host-pool/tests/e2e/max/main.test.bicep b/modules/desktop-virtualization/host-pool/tests/e2e/max/main.test.bicep
index b014dcfb07..07996d49e3 100644
--- a/modules/desktop-virtualization/host-pool/tests/e2e/max/main.test.bicep
+++ b/modules/desktop-virtualization/host-pool/tests/e2e/max/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
personalDesktopAssignmentType: 'Automatic'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
index eb8918d929..d869b319a4 100644
--- a/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
personalDesktopAssignmentType: 'Automatic'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/scaling-plan/tests/e2e/max/main.test.bicep b/modules/desktop-virtualization/scaling-plan/tests/e2e/max/main.test.bicep
index 9f93f1cae3..73f13bcc7f 100644
--- a/modules/desktop-virtualization/scaling-plan/tests/e2e/max/main.test.bicep
+++ b/modules/desktop-virtualization/scaling-plan/tests/e2e/max/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: '${namePrefix}${serviceShort}001'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
index 4e2ea6cc47..7980f08680 100644
--- a/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: '${namePrefix}${serviceShort}001'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/workspace/tests/e2e/max/main.test.bicep b/modules/desktop-virtualization/workspace/tests/e2e/max/main.test.bicep
index 92de7edff9..7e08439b65 100644
--- a/modules/desktop-virtualization/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/desktop-virtualization/workspace/tests/e2e/max/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
index 4de3839aa1..4acc99aad8 100644
--- a/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/dev-test-lab/lab/tests/e2e/max/main.test.bicep b/modules/dev-test-lab/lab/tests/e2e/max/main.test.bicep
index c93e8c1ec2..21a1faa4f9 100644
--- a/modules/dev-test-lab/lab/tests/e2e/max/main.test.bicep
+++ b/modules/dev-test-lab/lab/tests/e2e/max/main.test.bicep
@@ -68,7 +68,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep b/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
index 2fe087e82c..52b4a50c25 100644
--- a/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
@@ -68,7 +68,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/document-db/database-account/tests/e2e/gremlindb/main.test.bicep b/modules/document-db/database-account/tests/e2e/gremlindb/main.test.bicep
index 44f12410b3..49de1571cd 100644
--- a/modules/document-db/database-account/tests/e2e/gremlindb/main.test.bicep
+++ b/modules/document-db/database-account/tests/e2e/gremlindb/main.test.bicep
@@ -144,7 +144,17 @@ module testDeployment '../../../main.bicep' = {
location: location
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/document-db/database-account/tests/e2e/mongodb/main.test.bicep b/modules/document-db/database-account/tests/e2e/mongodb/main.test.bicep
index ddb9ac1a75..6acaad1ecb 100644
--- a/modules/document-db/database-account/tests/e2e/mongodb/main.test.bicep
+++ b/modules/document-db/database-account/tests/e2e/mongodb/main.test.bicep
@@ -277,7 +277,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/document-db/database-account/tests/e2e/plain/main.test.bicep b/modules/document-db/database-account/tests/e2e/plain/main.test.bicep
index c8dbd06e37..2b71669ee2 100644
--- a/modules/document-db/database-account/tests/e2e/plain/main.test.bicep
+++ b/modules/document-db/database-account/tests/e2e/plain/main.test.bicep
@@ -96,7 +96,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/document-db/database-account/tests/e2e/sqldb/main.test.bicep b/modules/document-db/database-account/tests/e2e/sqldb/main.test.bicep
index aacecc5a6c..843e9e6afe 100644
--- a/modules/document-db/database-account/tests/e2e/sqldb/main.test.bicep
+++ b/modules/document-db/database-account/tests/e2e/sqldb/main.test.bicep
@@ -108,7 +108,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/domain/tests/e2e/max/main.test.bicep b/modules/event-grid/domain/tests/e2e/max/main.test.bicep
index 3be06cfaf7..ba70eca6d3 100644
--- a/modules/event-grid/domain/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/domain/tests/e2e/max/main.test.bicep
@@ -108,7 +108,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
index d65df56405..f6e7af8d5f 100644
--- a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
@@ -108,7 +108,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep b/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
index cdcc6727cb..9942c9b072 100644
--- a/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
@@ -116,7 +116,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
index 943ee3a929..8d79c431b0 100644
--- a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
@@ -116,7 +116,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/topic/tests/e2e/max/main.test.bicep b/modules/event-grid/topic/tests/e2e/max/main.test.bicep
index bba0f24999..88e677e1a4 100644
--- a/modules/event-grid/topic/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/topic/tests/e2e/max/main.test.bicep
@@ -132,7 +132,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
index 10a11dab1b..702283a1aa 100644
--- a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
@@ -132,7 +132,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-hub/namespace/tests/e2e/max/main.test.bicep b/modules/event-hub/namespace/tests/e2e/max/main.test.bicep
index 488b5ffd14..c909eeb152 100644
--- a/modules/event-hub/namespace/tests/e2e/max/main.test.bicep
+++ b/modules/event-hub/namespace/tests/e2e/max/main.test.bicep
@@ -202,7 +202,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep b/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
index cc44ed4bea..978fa9deee 100644
--- a/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
@@ -202,7 +202,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/health-bot/health-bot/tests/e2e/max/main.test.bicep b/modules/health-bot/health-bot/tests/e2e/max/main.test.bicep
index 95e2fb3513..d5e7889ab8 100644
--- a/modules/health-bot/health-bot/tests/e2e/max/main.test.bicep
+++ b/modules/health-bot/health-bot/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep b/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
index db64640a07..0f734842e9 100644
--- a/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/healthcare-apis/workspace/tests/e2e/max/main.test.bicep b/modules/healthcare-apis/workspace/tests/e2e/max/main.test.bicep
index d60b106eae..3d1bf48e56 100644
--- a/modules/healthcare-apis/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/healthcare-apis/workspace/tests/e2e/max/main.test.bicep
@@ -155,7 +155,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
index cf7c124a03..a4a85db623 100644
--- a/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -155,7 +155,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/activity-log-alert/tests/e2e/max/main.test.bicep b/modules/insights/activity-log-alert/tests/e2e/max/main.test.bicep
index f0b393e71e..09f337ec7c 100644
--- a/modules/insights/activity-log-alert/tests/e2e/max/main.test.bicep
+++ b/modules/insights/activity-log-alert/tests/e2e/max/main.test.bicep
@@ -93,7 +93,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
index 4d12202f85..fa09d67ab6 100644
--- a/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
@@ -93,7 +93,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/component/tests/e2e/max/main.test.bicep b/modules/insights/component/tests/e2e/max/main.test.bicep
index 69e8998fab..1ad71207b0 100644
--- a/modules/insights/component/tests/e2e/max/main.test.bicep
+++ b/modules/insights/component/tests/e2e/max/main.test.bicep
@@ -84,7 +84,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
index e1940171ae..8391324399 100644
--- a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
@@ -84,7 +84,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/metric-alert/tests/e2e/max/main.test.bicep b/modules/insights/metric-alert/tests/e2e/max/main.test.bicep
index aff5f631ca..ef36753b63 100644
--- a/modules/insights/metric-alert/tests/e2e/max/main.test.bicep
+++ b/modules/insights/metric-alert/tests/e2e/max/main.test.bicep
@@ -71,7 +71,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
alertCriteriaType: 'Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
index edad7e8898..5647a9c352 100644
--- a/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
@@ -71,7 +71,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
alertCriteriaType: 'Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/private-link-scope/tests/e2e/max/main.test.bicep b/modules/insights/private-link-scope/tests/e2e/max/main.test.bicep
index dc9ca75fdc..917468f472 100644
--- a/modules/insights/private-link-scope/tests/e2e/max/main.test.bicep
+++ b/modules/insights/private-link-scope/tests/e2e/max/main.test.bicep
@@ -76,7 +76,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
index c18ef415f3..bb8c7ec013 100644
--- a/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
@@ -76,7 +76,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/scheduled-query-rule/tests/e2e/max/main.test.bicep b/modules/insights/scheduled-query-rule/tests/e2e/max/main.test.bicep
index 703927ec7c..b6aa16ced8 100644
--- a/modules/insights/scheduled-query-rule/tests/e2e/max/main.test.bicep
+++ b/modules/insights/scheduled-query-rule/tests/e2e/max/main.test.bicep
@@ -87,7 +87,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
queryTimeRange: 'PT5M'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
index 3690a19042..8af347ed9a 100644
--- a/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
@@ -87,7 +87,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
queryTimeRange: 'PT5M'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/key-vault/vault/tests/e2e/max/main.test.bicep b/modules/key-vault/vault/tests/e2e/max/main.test.bicep
index e2df0ea2cd..a658dede11 100644
--- a/modules/key-vault/vault/tests/e2e/max/main.test.bicep
+++ b/modules/key-vault/vault/tests/e2e/max/main.test.bicep
@@ -157,7 +157,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
index 6e41928c3f..0d25a7ccd2 100644
--- a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
@@ -157,7 +157,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/logic/workflow/tests/e2e/max/main.test.bicep b/modules/logic/workflow/tests/e2e/max/main.test.bicep
index 108fd11c93..5781cf8222 100644
--- a/modules/logic/workflow/tests/e2e/max/main.test.bicep
+++ b/modules/logic/workflow/tests/e2e/max/main.test.bicep
@@ -87,7 +87,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
index 315241f110..aae2787ab8 100644
--- a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
@@ -87,7 +87,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/machine-learning-services/workspace/tests/e2e/max/main.test.bicep b/modules/machine-learning-services/workspace/tests/e2e/max/main.test.bicep
index ed13d35628..f09fb15a5c 100644
--- a/modules/machine-learning-services/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/machine-learning-services/workspace/tests/e2e/max/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
index 21ded20172..70e865110c 100644
--- a/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/maintenance/maintenance-configuration/tests/e2e/max/main.test.bicep b/modules/maintenance/maintenance-configuration/tests/e2e/max/main.test.bicep
index 27067531c7..dc3d91a268 100644
--- a/modules/maintenance/maintenance-configuration/tests/e2e/max/main.test.bicep
+++ b/modules/maintenance/maintenance-configuration/tests/e2e/max/main.test.bicep
@@ -67,7 +67,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep b/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
index 69183f0070..4ee6da0ae7 100644
--- a/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
@@ -67,7 +67,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/managed-identity/user-assigned-identity/tests/e2e/max/main.test.bicep b/modules/managed-identity/user-assigned-identity/tests/e2e/max/main.test.bicep
index 1f0bb1dc8e..f633bc4d28 100644
--- a/modules/managed-identity/user-assigned-identity/tests/e2e/max/main.test.bicep
+++ b/modules/managed-identity/user-assigned-identity/tests/e2e/max/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep b/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
index f2ab92ca67..da82f6264a 100644
--- a/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
@@ -69,7 +69,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/net-app/net-app-account/tests/e2e/nfs3/main.test.bicep b/modules/net-app/net-app-account/tests/e2e/nfs3/main.test.bicep
index e1a7ed7917..dc2b95f9b3 100644
--- a/modules/net-app/net-app-account/tests/e2e/nfs3/main.test.bicep
+++ b/modules/net-app/net-app-account/tests/e2e/nfs3/main.test.bicep
@@ -118,7 +118,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/net-app/net-app-account/tests/e2e/nfs41/main.test.bicep b/modules/net-app/net-app-account/tests/e2e/nfs41/main.test.bicep
index 4b8bc76afa..a751b084cc 100644
--- a/modules/net-app/net-app-account/tests/e2e/nfs41/main.test.bicep
+++ b/modules/net-app/net-app-account/tests/e2e/nfs41/main.test.bicep
@@ -124,7 +124,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/application-gateway/tests/e2e/max/main.test.bicep b/modules/network/application-gateway/tests/e2e/max/main.test.bicep
index 895da7a68c..eed5a5bb44 100644
--- a/modules/network/application-gateway/tests/e2e/max/main.test.bicep
+++ b/modules/network/application-gateway/tests/e2e/max/main.test.bicep
@@ -417,7 +417,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
index 52253dd7c9..c7d75f9a08 100644
--- a/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -417,7 +417,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/application-security-group/tests/e2e/max/main.test.bicep b/modules/network/application-security-group/tests/e2e/max/main.test.bicep
index 1c6db275ed..8adbe4a43e 100644
--- a/modules/network/application-security-group/tests/e2e/max/main.test.bicep
+++ b/modules/network/application-security-group/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
index 37d595cd4f..1f4a268ac3 100644
--- a/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/azure-firewall/tests/e2e/max/main.test.bicep b/modules/network/azure-firewall/tests/e2e/max/main.test.bicep
index 22a9bd66d0..6952eb7b58 100644
--- a/modules/network/azure-firewall/tests/e2e/max/main.test.bicep
+++ b/modules/network/azure-firewall/tests/e2e/max/main.test.bicep
@@ -172,7 +172,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep b/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
index eb3d525802..571507c49d 100644
--- a/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
@@ -172,7 +172,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/bastion-host/tests/e2e/max/main.test.bicep b/modules/network/bastion-host/tests/e2e/max/main.test.bicep
index 2623cdb0d2..f7b87a0177 100644
--- a/modules/network/bastion-host/tests/e2e/max/main.test.bicep
+++ b/modules/network/bastion-host/tests/e2e/max/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep b/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
index c94cc48d12..2bce8d672d 100644
--- a/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/ddos-protection-plan/tests/e2e/max/main.test.bicep b/modules/network/ddos-protection-plan/tests/e2e/max/main.test.bicep
index 5ef4541d51..e020dc11a8 100644
--- a/modules/network/ddos-protection-plan/tests/e2e/max/main.test.bicep
+++ b/modules/network/ddos-protection-plan/tests/e2e/max/main.test.bicep
@@ -58,7 +58,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep b/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
index 8bdf24f0bd..14b5f73f98 100644
--- a/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
@@ -58,7 +58,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep b/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
index 58a5b8b7cd..aeec9b81cc 100644
--- a/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
+++ b/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
@@ -77,7 +77,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
index 37eca099f6..4689f36153 100644
--- a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
@@ -77,7 +77,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-zone/tests/e2e/max/main.test.bicep b/modules/network/dns-zone/tests/e2e/max/main.test.bicep
index 3e016759eb..cff871fef6 100644
--- a/modules/network/dns-zone/tests/e2e/max/main.test.bicep
+++ b/modules/network/dns-zone/tests/e2e/max/main.test.bicep
@@ -146,7 +146,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
index a1b86c65e9..bba377b70a 100644
--- a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -146,7 +146,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/express-route-circuit/tests/e2e/max/main.test.bicep b/modules/network/express-route-circuit/tests/e2e/max/main.test.bicep
index 015786939d..705af9e25a 100644
--- a/modules/network/express-route-circuit/tests/e2e/max/main.test.bicep
+++ b/modules/network/express-route-circuit/tests/e2e/max/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep b/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
index d3509c0c8d..80f5eb6c7a 100644
--- a/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
@@ -90,7 +90,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/express-route-gateway/tests/e2e/max/main.test.bicep b/modules/network/express-route-gateway/tests/e2e/max/main.test.bicep
index 42867d94f4..1939d49a61 100644
--- a/modules/network/express-route-gateway/tests/e2e/max/main.test.bicep
+++ b/modules/network/express-route-gateway/tests/e2e/max/main.test.bicep
@@ -67,7 +67,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
index e95b805cb0..48cd0a930c 100644
--- a/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -67,7 +67,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/front-door-web-application-firewall-policy/tests/e2e/max/main.test.bicep b/modules/network/front-door-web-application-firewall-policy/tests/e2e/max/main.test.bicep
index 835ce7f757..99bdd66dea 100644
--- a/modules/network/front-door-web-application-firewall-policy/tests/e2e/max/main.test.bicep
+++ b/modules/network/front-door-web-application-firewall-policy/tests/e2e/max/main.test.bicep
@@ -127,7 +127,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep b/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
index 4248cdace9..683c951597 100644
--- a/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
@@ -127,7 +127,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/front-door/tests/e2e/max/main.test.bicep b/modules/network/front-door/tests/e2e/max/main.test.bicep
index c94b99aa79..4d954197e7 100644
--- a/modules/network/front-door/tests/e2e/max/main.test.bicep
+++ b/modules/network/front-door/tests/e2e/max/main.test.bicep
@@ -148,7 +148,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
sendRecvTimeoutSeconds: 10
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep b/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
index 93650d477c..88daa7780c 100644
--- a/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
@@ -148,7 +148,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
sendRecvTimeoutSeconds: 10
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/ip-group/tests/e2e/max/main.test.bicep b/modules/network/ip-group/tests/e2e/max/main.test.bicep
index 5e9c862414..06bb71dc3b 100644
--- a/modules/network/ip-group/tests/e2e/max/main.test.bicep
+++ b/modules/network/ip-group/tests/e2e/max/main.test.bicep
@@ -63,7 +63,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
index 6636c832de..5d7990f8ab 100644
--- a/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
@@ -63,7 +63,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/load-balancer/tests/e2e/internal/main.test.bicep b/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
index 26784c8eb8..7654c36f8c 100644
--- a/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
@@ -135,7 +135,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/load-balancer/tests/e2e/max/main.test.bicep b/modules/network/load-balancer/tests/e2e/max/main.test.bicep
index 9d7f2ac2d5..7740392616 100644
--- a/modules/network/load-balancer/tests/e2e/max/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/max/main.test.bicep
@@ -167,7 +167,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
index f0a9319226..9334a402ea 100644
--- a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
@@ -167,7 +167,17 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/local-network-gateway/tests/e2e/max/main.test.bicep b/modules/network/local-network-gateway/tests/e2e/max/main.test.bicep
index 93352e6ce5..150660fecf 100644
--- a/modules/network/local-network-gateway/tests/e2e/max/main.test.bicep
+++ b/modules/network/local-network-gateway/tests/e2e/max/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
index 4c3d7522ce..de1f3566b3 100644
--- a/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -65,7 +65,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/nat-gateway/tests/e2e/max/main.test.bicep b/modules/network/nat-gateway/tests/e2e/max/main.test.bicep
index 7fc011d550..e6adb9a978 100644
--- a/modules/network/nat-gateway/tests/e2e/max/main.test.bicep
+++ b/modules/network/nat-gateway/tests/e2e/max/main.test.bicep
@@ -105,7 +105,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/nat-gateway/tests/e2e/prefixCombined/main.test.bicep b/modules/network/nat-gateway/tests/e2e/prefixCombined/main.test.bicep
index d874324327..caceef126b 100644
--- a/modules/network/nat-gateway/tests/e2e/prefixCombined/main.test.bicep
+++ b/modules/network/nat-gateway/tests/e2e/prefixCombined/main.test.bicep
@@ -94,7 +94,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
index 9f155e50f0..c5b736fadd 100644
--- a/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -105,7 +105,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-interface/tests/e2e/max/main.test.bicep b/modules/network/network-interface/tests/e2e/max/main.test.bicep
index 02129671ef..378e818710 100644
--- a/modules/network/network-interface/tests/e2e/max/main.test.bicep
+++ b/modules/network/network-interface/tests/e2e/max/main.test.bicep
@@ -114,7 +114,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
index fe4128d347..5ed3833bd7 100644
--- a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
@@ -114,7 +114,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-manager/tests/e2e/max/main.test.bicep b/modules/network/network-manager/tests/e2e/max/main.test.bicep
index 1fb6b04824..d0e1fd2393 100644
--- a/modules/network/network-manager/tests/e2e/max/main.test.bicep
+++ b/modules/network/network-manager/tests/e2e/max/main.test.bicep
@@ -66,7 +66,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
index 1d94d18ba7..9977120fcc 100644
--- a/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
@@ -66,7 +66,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-security-group/tests/e2e/max/main.test.bicep b/modules/network/network-security-group/tests/e2e/max/main.test.bicep
index 24664977f4..b0cae014bc 100644
--- a/modules/network/network-security-group/tests/e2e/max/main.test.bicep
+++ b/modules/network/network-security-group/tests/e2e/max/main.test.bicep
@@ -83,7 +83,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
index 0a6ccc8de6..73ede0d961 100644
--- a/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
@@ -83,7 +83,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-watcher/tests/e2e/max/main.test.bicep b/modules/network/network-watcher/tests/e2e/max/main.test.bicep
index 578321530e..c453c48b8d 100644
--- a/modules/network/network-watcher/tests/e2e/max/main.test.bicep
+++ b/modules/network/network-watcher/tests/e2e/max/main.test.bicep
@@ -145,7 +145,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
index b940f74c67..3bb844bd8c 100644
--- a/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
@@ -145,7 +145,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep b/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
index 8e28928ada..dd9f88f06e 100644
--- a/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
+++ b/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
index 591d3e4e8d..3f65267936 100644
--- a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -142,7 +142,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-endpoint/tests/e2e/max/main.test.bicep b/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
index 0812571d74..1a8851e36a 100644
--- a/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
+++ b/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
@@ -70,7 +70,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
index 72e2c7f377..a433a64d33 100644
--- a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
@@ -70,7 +70,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/public-ip-address/tests/e2e/max/main.test.bicep b/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
index 7ce46d663b..3b31e4f374 100644
--- a/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
+++ b/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicIPAllocationMethod: 'Static'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
index 5e16ba63ef..745992fe9a 100644
--- a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicIPAllocationMethod: 'Static'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/public-ip-prefix/tests/e2e/max/main.test.bicep b/modules/network/public-ip-prefix/tests/e2e/max/main.test.bicep
index 2a0444770e..04bc42d4e9 100644
--- a/modules/network/public-ip-prefix/tests/e2e/max/main.test.bicep
+++ b/modules/network/public-ip-prefix/tests/e2e/max/main.test.bicep
@@ -60,7 +60,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep b/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
index cc31fc6d98..2837511cc4 100644
--- a/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
@@ -60,7 +60,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/route-table/tests/e2e/max/main.test.bicep b/modules/network/route-table/tests/e2e/max/main.test.bicep
index f611d8c177..d12a806209 100644
--- a/modules/network/route-table/tests/e2e/max/main.test.bicep
+++ b/modules/network/route-table/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
index 6edf7269f8..3034a3650d 100644
--- a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/service-endpoint-policy/tests/e2e/max/main.test.bicep b/modules/network/service-endpoint-policy/tests/e2e/max/main.test.bicep
index 8ad3addf74..271bf7e24a 100644
--- a/modules/network/service-endpoint-policy/tests/e2e/max/main.test.bicep
+++ b/modules/network/service-endpoint-policy/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep b/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
index ab52288ff9..f6c8b73988 100644
--- a/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/trafficmanagerprofile/tests/e2e/max/main.test.bicep b/modules/network/trafficmanagerprofile/tests/e2e/max/main.test.bicep
index b937b8d2af..997d876567 100644
--- a/modules/network/trafficmanagerprofile/tests/e2e/max/main.test.bicep
+++ b/modules/network/trafficmanagerprofile/tests/e2e/max/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep b/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
index bddc3fdf32..88e10836c6 100644
--- a/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/virtual-network-gateway/tests/e2e/aadvpn/main.test.bicep b/modules/network/virtual-network-gateway/tests/e2e/aadvpn/main.test.bicep
index 95dfbe06d2..a6e2410992 100644
--- a/modules/network/virtual-network-gateway/tests/e2e/aadvpn/main.test.bicep
+++ b/modules/network/virtual-network-gateway/tests/e2e/aadvpn/main.test.bicep
@@ -97,7 +97,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/virtual-network/tests/e2e/max/main.test.bicep b/modules/network/virtual-network/tests/e2e/max/main.test.bicep
index 5a84c91f10..7181d9a40f 100644
--- a/modules/network/virtual-network/tests/e2e/max/main.test.bicep
+++ b/modules/network/virtual-network/tests/e2e/max/main.test.bicep
@@ -96,7 +96,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep b/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
index 58a38a9530..301d12d901 100644
--- a/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
@@ -96,7 +96,17 @@ module testDeployment '../../../main.bicep' = {
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/virtual-wan/tests/e2e/max/main.test.bicep b/modules/network/virtual-wan/tests/e2e/max/main.test.bicep
index 3642b75961..9079c1e718 100644
--- a/modules/network/virtual-wan/tests/e2e/max/main.test.bicep
+++ b/modules/network/virtual-wan/tests/e2e/max/main.test.bicep
@@ -62,7 +62,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep b/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
index 290a115237..e8a3448a3c 100644
--- a/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
@@ -62,7 +62,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/vpn-site/tests/e2e/max/main.test.bicep b/modules/network/vpn-site/tests/e2e/max/main.test.bicep
index 629bdd1bd9..d57e267bbb 100644
--- a/modules/network/vpn-site/tests/e2e/max/main.test.bicep
+++ b/modules/network/vpn-site/tests/e2e/max/main.test.bicep
@@ -106,7 +106,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep b/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
index 62ed03a40d..5c76b0a26a 100644
--- a/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
@@ -106,7 +106,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep b/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
index ad7165b0c2..38b560ea90 100644
--- a/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
@@ -229,7 +229,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
index e523244e4a..574ea9a299 100644
--- a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -229,7 +229,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep b/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
index c6fe16963e..af12c01c5b 100644
--- a/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
+++ b/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
@@ -63,7 +63,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
index de6e04a1b0..c146e88f60 100644
--- a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
@@ -63,7 +63,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/purview/account/tests/e2e/max/main.test.bicep b/modules/purview/account/tests/e2e/max/main.test.bicep
index 576acece67..5f09f48e2e 100644
--- a/modules/purview/account/tests/e2e/max/main.test.bicep
+++ b/modules/purview/account/tests/e2e/max/main.test.bicep
@@ -96,7 +96,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep b/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
index f58261b0a9..45c682e6d7 100644
--- a/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
@@ -96,7 +96,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/recovery-services/vault/tests/e2e/max/main.test.bicep b/modules/recovery-services/vault/tests/e2e/max/main.test.bicep
index a95ea0b468..0e78cb6064 100644
--- a/modules/recovery-services/vault/tests/e2e/max/main.test.bicep
+++ b/modules/recovery-services/vault/tests/e2e/max/main.test.bicep
@@ -352,7 +352,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep b/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
index 67c8e9c39b..aef11c0f0c 100644
--- a/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
@@ -352,7 +352,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/relay/namespace/tests/e2e/max/main.test.bicep b/modules/relay/namespace/tests/e2e/max/main.test.bicep
index 9615d7ad26..ef21d1c6bc 100644
--- a/modules/relay/namespace/tests/e2e/max/main.test.bicep
+++ b/modules/relay/namespace/tests/e2e/max/main.test.bicep
@@ -80,7 +80,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep b/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
index b8527deec2..a849805a2b 100644
--- a/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
@@ -80,7 +80,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/resource-graph/query/tests/e2e/max/main.test.bicep b/modules/resource-graph/query/tests/e2e/max/main.test.bicep
index 25ac98145e..93f3005086 100644
--- a/modules/resource-graph/query/tests/e2e/max/main.test.bicep
+++ b/modules/resource-graph/query/tests/e2e/max/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep b/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
index 1209174e7c..031a63d554 100644
--- a/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/resources/resource-group/tests/e2e/max/main.test.bicep b/modules/resources/resource-group/tests/e2e/max/main.test.bicep
index a110f2a5f4..e5d862b927 100644
--- a/modules/resources/resource-group/tests/e2e/max/main.test.bicep
+++ b/modules/resources/resource-group/tests/e2e/max/main.test.bicep
@@ -58,7 +58,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep b/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
index 5818c0052f..a787c57f93 100644
--- a/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
@@ -58,7 +58,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/service-bus/namespace/tests/e2e/encr/main.test.bicep b/modules/service-bus/namespace/tests/e2e/encr/main.test.bicep
index 745b38b64b..4bc6f9d364 100644
--- a/modules/service-bus/namespace/tests/e2e/encr/main.test.bicep
+++ b/modules/service-bus/namespace/tests/e2e/encr/main.test.bicep
@@ -59,7 +59,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
skuName: 'Premium'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/service-fabric/cluster/tests/e2e/max/main.test.bicep b/modules/service-fabric/cluster/tests/e2e/max/main.test.bicep
index ed86853a2b..cb3ffc3d41 100644
--- a/modules/service-fabric/cluster/tests/e2e/max/main.test.bicep
+++ b/modules/service-fabric/cluster/tests/e2e/max/main.test.bicep
@@ -212,7 +212,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
vmImage: 'Linux'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep b/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
index e54b21fd94..3165b717f4 100644
--- a/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
@@ -212,7 +212,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
vmImage: 'Linux'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/sql/managed-instance/tests/e2e/max/main.test.bicep b/modules/sql/managed-instance/tests/e2e/max/main.test.bicep
index 6fd22ed422..62ecd613a7 100644
--- a/modules/sql/managed-instance/tests/e2e/max/main.test.bicep
+++ b/modules/sql/managed-instance/tests/e2e/max/main.test.bicep
@@ -141,7 +141,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicDataEndpointEnabled: false
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep b/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
index 1627c8cc0c..162ad01126 100644
--- a/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
@@ -141,7 +141,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicDataEndpointEnabled: false
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/sql/server/tests/e2e/max/main.test.bicep b/modules/sql/server/tests/e2e/max/main.test.bicep
index 4de18a90ed..a71f7575a2 100644
--- a/modules/sql/server/tests/e2e/max/main.test.bicep
+++ b/modules/sql/server/tests/e2e/max/main.test.bicep
@@ -84,7 +84,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
location: location
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep b/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
index 298ab514b7..a702e8dac4 100644
--- a/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
@@ -84,7 +84,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
location: location
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/storage/storage-account/tests/e2e/max/main.test.bicep b/modules/storage/storage-account/tests/e2e/max/main.test.bicep
index db2803d5f3..d8558c7b52 100644
--- a/modules/storage/storage-account/tests/e2e/max/main.test.bicep
+++ b/modules/storage/storage-account/tests/e2e/max/main.test.bicep
@@ -272,7 +272,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/storage/storage-account/tests/e2e/nfs/main.test.bicep b/modules/storage/storage-account/tests/e2e/nfs/main.test.bicep
index 4c3fb2ad5a..59e23e6707 100644
--- a/modules/storage/storage-account/tests/e2e/nfs/main.test.bicep
+++ b/modules/storage/storage-account/tests/e2e/nfs/main.test.bicep
@@ -88,7 +88,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep b/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
index cd06ed1f80..3be7b41937 100644
--- a/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
@@ -272,7 +272,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/synapse/workspace/tests/e2e/max/main.test.bicep b/modules/synapse/workspace/tests/e2e/max/main.test.bicep
index 7161f6dfc7..b94327be00 100644
--- a/modules/synapse/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/synapse/workspace/tests/e2e/max/main.test.bicep
@@ -79,7 +79,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
index abf7d8b7c8..109f94c80e 100644
--- a/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -79,7 +79,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/virtual-machine-images/image-template/tests/e2e/max/main.test.bicep b/modules/virtual-machine-images/image-template/tests/e2e/max/main.test.bicep
index 254fadcce6..cc579a73df 100644
--- a/modules/virtual-machine-images/image-template/tests/e2e/max/main.test.bicep
+++ b/modules/virtual-machine-images/image-template/tests/e2e/max/main.test.bicep
@@ -94,7 +94,17 @@ module testDeployment '../../../main.bicep' = {
osDiskSizeGB: 127
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep b/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
index 7e2e523fee..51ba58c0f3 100644
--- a/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
@@ -94,7 +94,17 @@ module testDeployment '../../../main.bicep' = {
osDiskSizeGB: 127
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/connection/tests/e2e/max/main.test.bicep b/modules/web/connection/tests/e2e/max/main.test.bicep
index d57a2503f7..6a482325ae 100644
--- a/modules/web/connection/tests/e2e/max/main.test.bicep
+++ b/modules/web/connection/tests/e2e/max/main.test.bicep
@@ -64,7 +64,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep b/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
index a8d11dca02..8a73648465 100644
--- a/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
@@ -64,7 +64,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/hosting-environment/tests/e2e/asev2/main.test.bicep b/modules/web/hosting-environment/tests/e2e/asev2/main.test.bicep
index 455dba1779..36c5157724 100644
--- a/modules/web/hosting-environment/tests/e2e/asev2/main.test.bicep
+++ b/modules/web/hosting-environment/tests/e2e/asev2/main.test.bicep
@@ -73,7 +73,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/hosting-environment/tests/e2e/asev3/main.test.bicep b/modules/web/hosting-environment/tests/e2e/asev3/main.test.bicep
index ac50975bc3..93269c7e3b 100644
--- a/modules/web/hosting-environment/tests/e2e/asev3/main.test.bicep
+++ b/modules/web/hosting-environment/tests/e2e/asev3/main.test.bicep
@@ -75,7 +75,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/serverfarm/tests/e2e/max/main.test.bicep b/modules/web/serverfarm/tests/e2e/max/main.test.bicep
index ce1c1ea9c1..7eadba7f28 100644
--- a/modules/web/serverfarm/tests/e2e/max/main.test.bicep
+++ b/modules/web/serverfarm/tests/e2e/max/main.test.bicep
@@ -94,7 +94,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep b/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
index 24e51db825..c1f40fc867 100644
--- a/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
@@ -94,7 +94,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/site/tests/e2e/functionAppCommon/main.test.bicep b/modules/web/site/tests/e2e/functionAppCommon/main.test.bicep
index eb682196f8..5abbca04b8 100644
--- a/modules/web/site/tests/e2e/functionAppCommon/main.test.bicep
+++ b/modules/web/site/tests/e2e/functionAppCommon/main.test.bicep
@@ -184,7 +184,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/site/tests/e2e/webAppCommon/main.test.bicep b/modules/web/site/tests/e2e/webAppCommon/main.test.bicep
index fbb4e0cf1d..4fea3485cd 100644
--- a/modules/web/site/tests/e2e/webAppCommon/main.test.bicep
+++ b/modules/web/site/tests/e2e/webAppCommon/main.test.bicep
@@ -175,7 +175,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/static-site/tests/e2e/max/main.test.bicep b/modules/web/static-site/tests/e2e/max/main.test.bicep
index 8bc7cecf8d..8181fac011 100644
--- a/modules/web/static-site/tests/e2e/max/main.test.bicep
+++ b/modules/web/static-site/tests/e2e/max/main.test.bicep
@@ -77,7 +77,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep b/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
index afe97a5d32..0eebc578e8 100644
--- a/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
@@ -77,7 +77,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
From 4ebcfcdb39beced1154971a467a9660c5befaff2 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 22:02:34 +0100
Subject: [PATCH 3/7] Update to latest
---
constructs/Compute/virtualMachinesMultiple/main.bicep | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/constructs/Compute/virtualMachinesMultiple/main.bicep b/constructs/Compute/virtualMachinesMultiple/main.bicep
index 16932c0d92..9fc00d6f9e 100644
--- a/constructs/Compute/virtualMachinesMultiple/main.bicep
+++ b/constructs/Compute/virtualMachinesMultiple/main.bicep
@@ -250,7 +250,7 @@ param diagnosticEventHubName string = ''
@description('Optional. Specify the type of lock.')
param lock string = ''
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments array = []
@description('Optional. Tags of the resource.')
From 075c1078ae2ce6e00a02d8530da570dbf5112e92 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 22:04:41 +0100
Subject: [PATCH 4/7] Removed unrelated tests
---
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../disk/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../image/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../lab/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../topic/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../vault/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../vault/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../query/tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
.../tests/e2e/waf-aligned/main.test.bicep | 17 -----------------
85 files changed, 1445 deletions(-)
diff --git a/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep b/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
index 0c14838fd4..705eaf124d 100644
--- a/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/analysis-services/server/tests/e2e/waf-aligned/main.test.bicep
@@ -83,23 +83,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
enablePowerBIService: true
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
diagnosticSettings: [
{
name: 'customSetting'
diff --git a/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep b/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
index 5766ea4398..497fa84bc5 100644
--- a/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/api-management/service/tests/e2e/waf-aligned/main.test.bicep
@@ -192,23 +192,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
subscriptionRequired: false
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
subscriptions: [
{
name: 'testArmSubscriptionAllApis'
diff --git a/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep b/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
index 152235517f..11ffe42dcc 100644
--- a/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/app-configuration/configuration-store/tests/e2e/waf-aligned/main.test.bicep
@@ -102,23 +102,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
softDeleteRetentionInDays: 1
managedIdentities: {
systemAssigned: true
diff --git a/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep b/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
index 4266543fe8..e4d4913905 100644
--- a/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/automation/automation-account/tests/e2e/waf-aligned/main.test.bicep
@@ -135,23 +135,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
runbooks: [
{
description: 'Test runbook'
diff --git a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
index 04c51335c4..2bba8f476a 100644
--- a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
@@ -89,23 +89,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: 'myCustomLockName'
}
poolAllocationMode: 'BatchService'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
privateEndpoints: [
{
subnetResourceId: nestedDependencies.outputs.subnetResourceId
diff --git a/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep b/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
index c7129d2a02..b9030436a7 100644
--- a/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cache/redis-enterprise/tests/e2e/waf-aligned/main.test.bicep
@@ -87,23 +87,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
minimumTlsVersion: '1.2'
zoneRedundant: true
privateEndpoints: [
diff --git a/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep b/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
index 3ea25311c3..af0c232249 100644
--- a/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cdn/profile/tests/e2e/waf-aligned/main.test.bicep
@@ -91,22 +91,5 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
originGroups: []
geoFilters: []
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
}
}]
diff --git a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
index 5e9e6a67d2..7e86e5879a 100644
--- a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
@@ -102,23 +102,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
]
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
sku: 'S0'
managedIdentities: {
systemAssigned: true
diff --git a/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
index d954cdec4e..6aff4b922e 100644
--- a/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/availability-set/tests/e2e/waf-aligned/main.test.bicep
@@ -59,23 +59,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: 'myCustomLockName'
}
proximityPlacementGroupResourceId: nestedDependencies.outputs.proximityPlacementGroupResourceId
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
index ff2c5d1000..f27ccfe1eb 100644
--- a/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/disk-encryption-set/tests/e2e/waf-aligned/main.test.bicep
@@ -64,23 +64,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
keyName: nestedDependencies.outputs.keyName
keyVaultResourceId: nestedDependencies.outputs.keyVaultResourceId
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
userAssignedResourceIds: [
nestedDependencies.outputs.managedIdentityResourceId
diff --git a/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
index eec8ac4728..e22035fb5e 100644
--- a/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/disk/tests/e2e/waf-aligned/main.test.bicep
@@ -63,23 +63,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
logicalSectorSize: 512
osType: 'Windows'
publicNetworkAccess: 'Enabled'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
index ef714096ae..7d759c2f2a 100644
--- a/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/gallery/tests/e2e/waf-aligned/main.test.bicep
@@ -174,23 +174,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
sku: '20_04-lts-gen2'
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
index 25e54e440f..ee4dfe3db0 100644
--- a/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/image/tests/e2e/waf-aligned/main.test.bicep
@@ -67,23 +67,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
osDiskCaching: 'ReadWrite'
osType: 'Windows'
hyperVGeneration: 'V1'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
zoneResilient: true
diskEncryptionSetResourceId: nestedDependencies.outputs.diskEncryptionSetResourceId
osState: 'Generalized'
diff --git a/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep b/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
index c6559f5113..db7c9800b0 100644
--- a/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/compute/proximity-placement-group/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
zones: [
'1'
]
diff --git a/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep b/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
index a7cb09fedf..7f6dd675d7 100644
--- a/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/container-registry/registry/tests/e2e/waf-aligned/main.test.bicep
@@ -122,23 +122,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: nestedDependencies.outputs.pairedRegionName
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
systemAssigned: true
userAssignedResourceIds: [
diff --git a/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep b/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
index 759d204c6e..1a7cb59527 100644
--- a/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/data-factory/factory/tests/e2e/waf-aligned/main.test.bicep
@@ -140,23 +140,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
systemAssigned: true
userAssignedResourceIds: [
diff --git a/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep b/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
index e759bafccf..1bcb119964 100644
--- a/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/data-protection/backup-vault/tests/e2e/waf-aligned/main.test.bicep
@@ -53,23 +53,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
params: {
enableDefaultTelemetry: enableDefaultTelemetry
name: '${namePrefix}${serviceShort}001'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
azureMonitorAlertSettingsAlertsForAllJobFailures: 'Disabled'
managedIdentities: {
systemAssigned: true
diff --git a/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep b/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
index ad07ff394b..64b4f1b6ab 100644
--- a/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/databricks/access-connector/tests/e2e/waf-aligned/main.test.bicep
@@ -63,23 +63,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
nestedDependencies.outputs.managedIdentityResourceId
]
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
index 154a85210b..66928e1121 100644
--- a/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/databricks/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -101,23 +101,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
index b09e264ac2..8bfb658ff8 100644
--- a/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/application-group/tests/e2e/waf-aligned/main.test.bicep
@@ -104,23 +104,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
index d869b319a4..05123d5d47 100644
--- a/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/host-pool/tests/e2e/waf-aligned/main.test.bicep
@@ -88,23 +88,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
maxSessionLimit: 99999
personalDesktopAssignmentType: 'Automatic'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
vmTemplate: {
customImageId: null
domain: 'domainname.onmicrosoft.com'
diff --git a/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
index 7980f08680..5eedc422fe 100644
--- a/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/scaling-plan/tests/e2e/waf-aligned/main.test.bicep
@@ -67,23 +67,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
params: {
enableDefaultTelemetry: enableDefaultTelemetry
name: '${namePrefix}${serviceShort}001'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
diagnosticSettings: [
{
name: 'customSetting'
diff --git a/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
index 4acc99aad8..78a62c1b38 100644
--- a/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/desktop-virtualization/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -86,23 +86,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep b/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
index 52b4a50c25..fb32ba4ed3 100644
--- a/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/dev-test-lab/lab/tests/e2e/waf-aligned/main.test.bicep
@@ -66,23 +66,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
resourceType: 'DevTest Lab'
diff --git a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
index f6e7af8d5f..8319f6ca4b 100644
--- a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
@@ -106,23 +106,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
index 8d79c431b0..1de593e236 100644
--- a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
@@ -114,23 +114,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
managedIdentities: {
systemAssigned: true
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
index 702283a1aa..1441d3e1e6 100644
--- a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
@@ -130,23 +130,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep b/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
index 978fa9deee..c00b8c1668 100644
--- a/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-hub/namespace/tests/e2e/waf-aligned/main.test.bicep
@@ -200,23 +200,6 @@ module testDeployment '../../../main.bicep' = {
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
systemAssigned: true
userAssignedResourceIds: [
diff --git a/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep b/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
index 0f734842e9..4e5cb79986 100644
--- a/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/health-bot/health-bot/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
index a4a85db623..bc4990b2d3 100644
--- a/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/healthcare-apis/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -153,23 +153,6 @@ module testDeployment '../../../main.bicep' = {
]
} }
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
index fa09d67ab6..4efeddccfe 100644
--- a/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/activity-log-alert/tests/e2e/waf-aligned/main.test.bicep
@@ -91,23 +91,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
actionGroupId: nestedDependencies.outputs.actionGroupResourceId
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
scopes: [
subscription().id
]
diff --git a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
index 8391324399..0fff0badba 100644
--- a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
@@ -82,23 +82,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
workspaceResourceId: diagnosticDependencies.outputs.logAnalyticsWorkspaceResourceId
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
index 5647a9c352..8af9b43124 100644
--- a/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/metric-alert/tests/e2e/waf-aligned/main.test.bicep
@@ -69,23 +69,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
nestedDependencies.outputs.actionGroupResourceId
]
alertCriteriaType: 'Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
targetResourceRegion: 'westeurope'
targetResourceType: 'microsoft.compute/virtualmachines'
windowSize: 'PT15M'
diff --git a/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
index bb8c7ec013..8fa06958a0 100644
--- a/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/private-link-scope/tests/e2e/waf-aligned/main.test.bicep
@@ -74,23 +74,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
index 8af347ed9a..3504694196 100644
--- a/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/scheduled-query-rule/tests/e2e/waf-aligned/main.test.bicep
@@ -85,23 +85,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
evaluationFrequency: 'PT5M'
queryTimeRange: 'PT5M'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
scopes: [
nestedDependencies.outputs.logAnalyticsWorkspaceResourceId
]
diff --git a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
index 0d25a7ccd2..eeeacf385a 100644
--- a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
@@ -155,23 +155,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
secrets: {
secureList: [
{
diff --git a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
index aae2787ab8..00e1c6c1f6 100644
--- a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
@@ -85,23 +85,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
userAssignedResourceIds: [
nestedDependencies.outputs.managedIdentityResourceId
diff --git a/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
index 70e865110c..416696a964 100644
--- a/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/machine-learning-services/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -140,23 +140,6 @@ module testDeployment '../../../main.bicep' = {
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
managedIdentities: {
systemAssigned: false
userAssignedResourceIds: [
diff --git a/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep b/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
index 4ee6da0ae7..19697a964c 100644
--- a/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/maintenance/maintenance-configuration/tests/e2e/waf-aligned/main.test.bicep
@@ -65,23 +65,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
Environment: 'Non-Prod'
Role: 'DeploymentValidation'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
maintenanceScope: 'InGuestPatch'
maintenanceWindow: {
duration: '03:00'
diff --git a/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep b/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
index da82f6264a..17904d21b4 100644
--- a/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/managed-identity/user-assigned-identity/tests/e2e/waf-aligned/main.test.bicep
@@ -67,23 +67,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
subject: 'system:serviceaccount:default:workload-identity-sa'
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
index c7d75f9a08..be6d16d560 100644
--- a/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/application-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -415,23 +415,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
sku: 'WAF_v2'
sslCertificates: [
{
diff --git a/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
index 1f4a268ac3..b4cec250c2 100644
--- a/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/application-security-group/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep b/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
index 571507c49d..12b95314ae 100644
--- a/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/azure-firewall/tests/e2e/waf-aligned/main.test.bicep
@@ -170,23 +170,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
zones: [
'1'
'2'
diff --git a/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep b/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
index 2bce8d672d..a8095f58e2 100644
--- a/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/bastion-host/tests/e2e/waf-aligned/main.test.bicep
@@ -88,23 +88,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
scaleUnits: 4
skuName: 'Standard'
tags: {
diff --git a/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep b/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
index 14b5f73f98..593e44c39b 100644
--- a/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/ddos-protection-plan/tests/e2e/waf-aligned/main.test.bicep
@@ -56,23 +56,6 @@ module testDeployment '../../../main.bicep' = {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
index 4689f36153..f6795b2973 100644
--- a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
@@ -75,23 +75,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
lock: {
kind: 'CanNotDelete'
name: 'myCustomLockName'
diff --git a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
index bba377b70a..0733fcd4fc 100644
--- a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -144,23 +144,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
ttl: 3600
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
soa: [
{
name: '@'
diff --git a/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep b/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
index 80f5eb6c7a..afcdd32c69 100644
--- a/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/express-route-circuit/tests/e2e/waf-aligned/main.test.bicep
@@ -88,23 +88,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
skuFamily: 'MeteredData'
skuTier: 'Standard'
allowClassicOperations: true
diff --git a/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
index 48cd0a930c..81e988ca2d 100644
--- a/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/express-route-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -65,22 +65,5 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
}
}]
diff --git a/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep b/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
index 683c951597..67e8b06778 100644
--- a/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/front-door-web-application-firewall-policy/tests/e2e/waf-aligned/main.test.bicep
@@ -125,22 +125,5 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
Environment: 'Non-Prod'
Role: 'DeploymentValidation'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
}
}]
diff --git a/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep b/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
index 88daa7780c..3652f40fa1 100644
--- a/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/front-door/tests/e2e/waf-aligned/main.test.bicep
@@ -146,23 +146,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
]
sendRecvTimeoutSeconds: 10
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
index 5d7990f8ab..e8767a2291 100644
--- a/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/ip-group/tests/e2e/waf-aligned/main.test.bicep
@@ -61,23 +61,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
index 9334a402ea..1ba74a373a 100644
--- a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
@@ -165,23 +165,6 @@ module testDeployment '../../../main.bicep' = {
requestPath: '/'
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
index de1f3566b3..a407b64c98 100644
--- a/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/local-network-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -63,23 +63,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep b/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
index c5b736fadd..15c733767d 100644
--- a/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/nat-gateway/tests/e2e/waf-aligned/main.test.bicep
@@ -103,23 +103,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
index 5ed3833bd7..c2dc0bb7dc 100644
--- a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
@@ -112,23 +112,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
index 9977120fcc..630be8e2bc 100644
--- a/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-manager/tests/e2e/waf-aligned/main.test.bicep
@@ -64,23 +64,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
networkManagerScopeAccesses: [
'Connectivity'
'SecurityAdmin'
diff --git a/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
index 73ede0d961..cb46477554 100644
--- a/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-security-group/tests/e2e/waf-aligned/main.test.bicep
@@ -81,23 +81,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
securityRules: [
{
name: 'Specific'
diff --git a/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
index 3bb844bd8c..0753347fd0 100644
--- a/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-watcher/tests/e2e/waf-aligned/main.test.bicep
@@ -143,23 +143,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
workspaceResourceId: diagnosticDependencies.outputs.logAnalyticsWorkspaceResourceId
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
index 3f65267936..3a66dcf13e 100644
--- a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -140,23 +140,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
ttl: 3600
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
soa: [
{
name: '@'
diff --git a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
index a433a64d33..df7d5dfd80 100644
--- a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
@@ -68,23 +68,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
privateDnsZoneResourceIds: [
nestedDependencies.outputs.privateDNSZoneResourceId
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
ipConfigurations: [
{
name: 'myIPconfig'
diff --git a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
index 745992fe9a..1add04b4b7 100644
--- a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
@@ -86,23 +86,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: 'myCustomLockName'
}
publicIPAllocationMethod: 'Static'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
skuName: 'Standard'
zones: [
'1'
diff --git a/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep b/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
index 2837511cc4..9081c0314b 100644
--- a/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/public-ip-prefix/tests/e2e/waf-aligned/main.test.bicep
@@ -58,23 +58,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
index 3034a3650d..b5ce6bfbd7 100644
--- a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
routes: [
{
name: 'default'
diff --git a/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep b/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
index f6c8b73988..ba10f48947 100644
--- a/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/service-endpoint-policy/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep b/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
index 88e10836c6..850a5be046 100644
--- a/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/trafficmanagerprofile/tests/e2e/waf-aligned/main.test.bicep
@@ -86,23 +86,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep b/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
index 301d12d901..c2702cfe9f 100644
--- a/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/virtual-network/tests/e2e/waf-aligned/main.test.bicep
@@ -94,23 +94,6 @@ module testDeployment '../../../main.bicep' = {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
flowTimeoutInMinutes: 20
subnets: [
{
diff --git a/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep b/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
index e8a3448a3c..7bccc274c5 100644
--- a/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/virtual-wan/tests/e2e/waf-aligned/main.test.bicep
@@ -60,23 +60,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
type: 'Basic'
tags: {
'hidden-title': 'This is visible in the resource name'
diff --git a/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep b/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
index 5c76b0a26a..3b996255bc 100644
--- a/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/vpn-site/tests/e2e/waf-aligned/main.test.bicep
@@ -104,22 +104,5 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
default: true
}
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
}
}]
diff --git a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
index 574ea9a299..097702cf24 100644
--- a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -227,22 +227,5 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
managedIdentities: {
systemAssigned: true
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
}
}]
diff --git a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
index c146e88f60..022a0121b2 100644
--- a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
@@ -61,23 +61,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
members: [
nestedDependencies.outputs.managedIdentityPrincipalId
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep b/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
index 45c682e6d7..50ff6aa700 100644
--- a/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/purview/account/tests/e2e/waf-aligned/main.test.bicep
@@ -94,23 +94,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
workspaceResourceId: diagnosticDependencies.outputs.logAnalyticsWorkspaceResourceId
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
accountPrivateEndpoints: [
{
privateDnsZoneResourceIds: [
diff --git a/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep b/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
index aef11c0f0c..005293b717 100644
--- a/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/recovery-services/vault/tests/e2e/waf-aligned/main.test.bicep
@@ -350,23 +350,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
monitoringSettings: {
azureMonitorAlertSettings: {
alertsForAllJobFailures: 'Enabled'
diff --git a/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep b/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
index a849805a2b..f4d56ac66e 100644
--- a/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/relay/namespace/tests/e2e/waf-aligned/main.test.bicep
@@ -78,23 +78,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
Environment: 'Non-Prod'
Role: 'DeploymentValidation'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
networkRuleSets: {
defaultAction: 'Deny'
trustedServiceAccessEnabled: true
diff --git a/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep b/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
index 031a63d554..893732aaee 100644
--- a/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/resource-graph/query/tests/e2e/waf-aligned/main.test.bicep
@@ -57,23 +57,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep b/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
index a787c57f93..27d87dc197 100644
--- a/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/resources/resource-group/tests/e2e/waf-aligned/main.test.bicep
@@ -56,23 +56,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep b/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
index 3165b717f4..4cc334c475 100644
--- a/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/service-fabric/cluster/tests/e2e/waf-aligned/main.test.bicep
@@ -210,23 +210,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
vmImage: 'Linux'
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
applicationTypes: [
{
name: 'WordCount' // not idempotent
diff --git a/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep b/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
index 162ad01126..9f69895001 100644
--- a/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/sql/managed-instance/tests/e2e/waf-aligned/main.test.bicep
@@ -139,23 +139,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
primaryUserAssignedIdentityId: nestedDependencies.outputs.managedIdentityResourceId
proxyOverride: 'Proxy'
publicDataEndpointEnabled: false
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
securityAlertPoliciesObj: {
emailAccountAdmins: true
name: 'default'
diff --git a/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep b/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
index a702e8dac4..c72c12cfee 100644
--- a/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/sql/server/tests/e2e/waf-aligned/main.test.bicep
@@ -82,23 +82,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
administratorLogin: 'adminUserName'
administratorLoginPassword: password
location: location
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
vulnerabilityAssessmentsObj: {
name: 'default'
emailSubscriptionAdmins: true
diff --git a/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep b/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
index 3be7b41937..1ceb919f76 100644
--- a/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/storage/storage-account/tests/e2e/waf-aligned/main.test.bicep
@@ -270,23 +270,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
nestedDependencies.outputs.managedIdentityResourceId
]
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
diagnosticSettings: [
{
name: 'customSetting'
diff --git a/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
index 109f94c80e..ddc6aaef1c 100644
--- a/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/synapse/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -77,23 +77,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
nestedDependencies.outputs.managedIdentityResourceId
]
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
privateEndpoints: [
{
subnetResourceId: nestedDependencies.outputs.subnetResourceId
diff --git a/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep b/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
index 51ba58c0f3..4c43082a0b 100644
--- a/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/virtual-machine-images/image-template/tests/e2e/waf-aligned/main.test.bicep
@@ -92,23 +92,6 @@ module testDeployment '../../../main.bicep' = {
}
managedImageName: '${namePrefix}-mi-${serviceShort}-001'
osDiskSizeGB: 127
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
sigImageDefinitionId: nestedDependencies.outputs.sigImageDefinitionId
sigImageVersion: sigImageVersion
subnetId: nestedDependencies.outputs.subnetId
diff --git a/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep b/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
index 8a73648465..9718e758f7 100644
--- a/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/connection/tests/e2e/waf-aligned/main.test.bicep
@@ -62,23 +62,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep b/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
index c1f40fc867..f784e6761a 100644
--- a/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/serverfarm/tests/e2e/waf-aligned/main.test.bicep
@@ -92,23 +92,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep b/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
index 0eebc578e8..183fa819ef 100644
--- a/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/web/static-site/tests/e2e/waf-aligned/main.test.bicep
@@ -75,23 +75,6 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
- roleAssignments: [
- {
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- ]
sku: 'Standard'
stagingEnvironmentPolicy: 'Enabled'
managedIdentities: {
From 0f4ce9d8dc6f6e74dd7bb6d384969310715a7c64 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 22:15:03 +0100
Subject: [PATCH 5/7] Removed changes from already migrated modules
---
modules/batch/batch-account/main.bicep | 8 ++++----
.../batch-account/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/cognitive-services/account/main.bicep | 8 ++++----
.../account/tests/e2e/max/main.test.bicep | 12 +-----------
.../account/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/compute/ssh-public-key/main.bicep | 6 +++---
modules/event-grid/domain/main.bicep | 8 ++++----
.../event-grid/domain/tests/e2e/max/main.test.bicep | 12 +-----------
.../domain/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/event-grid/system-topic/main.bicep | 6 +++---
.../system-topic/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/event-grid/topic/main.bicep | 8 ++++----
.../event-grid/topic/tests/e2e/max/main.test.bicep | 12 +-----------
.../topic/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/insights/action-group/main.bicep | 6 +++---
modules/insights/component/main.bicep | 6 +++---
.../insights/component/tests/e2e/max/main.test.bicep | 12 +-----------
.../component/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/key-vault/vault/key/main.bicep | 6 +++---
modules/key-vault/vault/main.bicep | 8 ++++----
modules/key-vault/vault/secret/main.bicep | 6 +++---
.../key-vault/vault/tests/e2e/max/main.test.bicep | 12 +-----------
.../vault/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/logic/workflow/main.bicep | 6 +++---
modules/logic/workflow/tests/e2e/max/main.test.bicep | 12 +-----------
.../workflow/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/dns-forwarding-ruleset/main.bicep | 6 +++---
.../tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/dns-resolver/main.bicep | 6 +++---
modules/network/dns-zone/a/main.bicep | 6 +++---
modules/network/dns-zone/aaaa/main.bicep | 6 +++---
modules/network/dns-zone/caa/main.bicep | 6 +++---
modules/network/dns-zone/cname/main.bicep | 6 +++---
modules/network/dns-zone/main.bicep | 6 +++---
modules/network/dns-zone/mx/main.bicep | 6 +++---
modules/network/dns-zone/ns/main.bicep | 6 +++---
modules/network/dns-zone/ptr/main.bicep | 6 +++---
modules/network/dns-zone/soa/main.bicep | 6 +++---
modules/network/dns-zone/srv/main.bicep | 6 +++---
.../network/dns-zone/tests/e2e/max/main.test.bicep | 12 +-----------
.../dns-zone/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/dns-zone/txt/main.bicep | 6 +++---
modules/network/load-balancer/main.bicep | 6 +++---
.../load-balancer/tests/e2e/internal/main.test.bicep | 12 +-----------
.../load-balancer/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/network-interface/main.bicep | 6 +++---
.../network-interface/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/private-dns-zone/a/main.bicep | 6 +++---
modules/network/private-dns-zone/aaaa/main.bicep | 6 +++---
modules/network/private-dns-zone/cname/main.bicep | 6 +++---
modules/network/private-dns-zone/main.bicep | 6 +++---
modules/network/private-dns-zone/mx/main.bicep | 6 +++---
modules/network/private-dns-zone/ptr/main.bicep | 6 +++---
modules/network/private-dns-zone/soa/main.bicep | 6 +++---
modules/network/private-dns-zone/srv/main.bicep | 6 +++---
.../private-dns-zone/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/private-dns-zone/txt/main.bicep | 6 +++---
modules/network/private-endpoint/main.bicep | 6 +++---
.../private-endpoint/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/public-ip-address/main.bicep | 6 +++---
.../public-ip-address/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/network/route-table/main.bicep | 6 +++---
.../route-table/tests/e2e/max/main.test.bicep | 12 +-----------
.../tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/operational-insights/workspace/main.bicep | 6 +++---
.../workspace/tests/e2e/max/main.test.bicep | 12 +-----------
.../workspace/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/power-bi-dedicated/capacity/main.bicep | 6 +++---
.../capacity/tests/e2e/max/main.test.bicep | 12 +-----------
.../capacity/tests/e2e/waf-aligned/main.test.bicep | 7 +++++++
modules/search/search-service/main.bicep | 8 ++++----
79 files changed, 277 insertions(+), 341 deletions(-)
diff --git a/modules/batch/batch-account/main.bicep b/modules/batch/batch-account/main.bicep
index 038921cf61..476a5045a1 100644
--- a/modules/batch/batch-account/main.bicep
+++ b/modules/batch/batch-account/main.bicep
@@ -64,7 +64,7 @@ param lock lockType
@description('Optional. Tags of the resource.')
param tags object?
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@allowed([
@@ -207,7 +207,7 @@ resource batchAccount_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@
resource batchAccount_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(batchAccount.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -278,7 +278,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -355,7 +355,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/batch/batch-account/tests/e2e/max/main.test.bicep b/modules/batch/batch-account/tests/e2e/max/main.test.bicep
index 34f9365e72..64ae401f0e 100644
--- a/modules/batch/batch-account/tests/e2e/max/main.test.bicep
+++ b/modules/batch/batch-account/tests/e2e/max/main.test.bicep
@@ -91,17 +91,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
poolAllocationMode: 'BatchService'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
index 2bba8f476a..d4edb44cb9 100644
--- a/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/batch/batch-account/tests/e2e/waf-aligned/main.test.bicep
@@ -89,6 +89,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: 'myCustomLockName'
}
poolAllocationMode: 'BatchService'
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
privateEndpoints: [
{
subnetResourceId: nestedDependencies.outputs.subnetResourceId
diff --git a/modules/cognitive-services/account/main.bicep b/modules/cognitive-services/account/main.bicep
index 1841a1df2b..be906d33de 100644
--- a/modules/cognitive-services/account/main.bicep
+++ b/modules/cognitive-services/account/main.bicep
@@ -83,7 +83,7 @@ param managedIdentities managedIdentitiesType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -294,7 +294,7 @@ module cognitiveServices_privateEndpoints '../../network/private-endpoint/main.b
resource cognitiveServices_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(cognitiveServices.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -344,7 +344,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -421,7 +421,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/cognitive-services/account/tests/e2e/max/main.test.bicep b/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
index 86248b7af2..5652d77380 100644
--- a/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
+++ b/modules/cognitive-services/account/tests/e2e/max/main.test.bicep
@@ -104,17 +104,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
index 7e86e5879a..06069401e4 100644
--- a/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/cognitive-services/account/tests/e2e/waf-aligned/main.test.bicep
@@ -102,6 +102,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
]
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
sku: 'S0'
managedIdentities: {
systemAssigned: true
diff --git a/modules/compute/ssh-public-key/main.bicep b/modules/compute/ssh-public-key/main.bicep
index 72951bb56e..42728721ff 100644
--- a/modules/compute/ssh-public-key/main.bicep
+++ b/modules/compute/ssh-public-key/main.bicep
@@ -16,7 +16,7 @@ param publicKey string = ''
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the availability set resource.')
@@ -66,7 +66,7 @@ resource sshPublicKey_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!emp
resource sshPublicKey_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(sshPublicKey.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -102,7 +102,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/event-grid/domain/main.bicep b/modules/event-grid/domain/main.bicep
index 5f2c1e009a..5177d56cf2 100644
--- a/modules/event-grid/domain/main.bicep
+++ b/modules/event-grid/domain/main.bicep
@@ -31,7 +31,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
param privateEndpoints privateEndpointType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -156,7 +156,7 @@ module domain_privateEndpoints '../../network/private-endpoint/main.bicep' = [fo
resource domain_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(domain.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -192,7 +192,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -269,7 +269,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/event-grid/domain/tests/e2e/max/main.test.bicep b/modules/event-grid/domain/tests/e2e/max/main.test.bicep
index ba70eca6d3..3be06cfaf7 100644
--- a/modules/event-grid/domain/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/domain/tests/e2e/max/main.test.bicep
@@ -108,17 +108,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
index 8319f6ca4b..d65df56405 100644
--- a/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/domain/tests/e2e/waf-aligned/main.test.bicep
@@ -106,6 +106,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/event-grid/system-topic/main.bicep b/modules/event-grid/system-topic/main.bicep
index 9c896bcf68..97b33065d9 100644
--- a/modules/event-grid/system-topic/main.bicep
+++ b/modules/event-grid/system-topic/main.bicep
@@ -20,7 +20,7 @@ param eventSubscriptions array = []
@description('Optional. The diagnostic settings of the service.')
param diagnosticSettings diagnosticSettingType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -135,7 +135,7 @@ resource systemTopic_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2
resource systemTopic_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(systemTopic.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -182,7 +182,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep b/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
index 9942c9b072..cdcc6727cb 100644
--- a/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/system-topic/tests/e2e/max/main.test.bicep
@@ -116,17 +116,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
index 1de593e236..943ee3a929 100644
--- a/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/system-topic/tests/e2e/waf-aligned/main.test.bicep
@@ -114,6 +114,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
managedIdentities: {
systemAssigned: true
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/event-grid/topic/main.bicep b/modules/event-grid/topic/main.bicep
index 36b6e841cb..440efefed8 100644
--- a/modules/event-grid/topic/main.bicep
+++ b/modules/event-grid/topic/main.bicep
@@ -28,7 +28,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
param privateEndpoints privateEndpointType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The lock settings of the service.')
@@ -158,7 +158,7 @@ module topic_privateEndpoints '../../network/private-endpoint/main.bicep' = [for
resource topic_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(topic.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -194,7 +194,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -271,7 +271,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/event-grid/topic/tests/e2e/max/main.test.bicep b/modules/event-grid/topic/tests/e2e/max/main.test.bicep
index 88e677e1a4..bba0f24999 100644
--- a/modules/event-grid/topic/tests/e2e/max/main.test.bicep
+++ b/modules/event-grid/topic/tests/e2e/max/main.test.bicep
@@ -132,17 +132,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
index 1441d3e1e6..10a11dab1b 100644
--- a/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/event-grid/topic/tests/e2e/waf-aligned/main.test.bicep
@@ -130,6 +130,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/insights/action-group/main.bicep b/modules/insights/action-group/main.bicep
index 1c5a5b0927..bca49be2f7 100644
--- a/modules/insights/action-group/main.bicep
+++ b/modules/insights/action-group/main.bicep
@@ -11,7 +11,7 @@ param groupShortName string
@description('Optional. Indicates whether this action group is enabled. If an action group is not enabled, then none of its receivers will receive communications.')
param enabled bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The list of email receivers that are part of this action group.')
@@ -96,7 +96,7 @@ resource actionGroup 'Microsoft.Insights/actionGroups@2023-01-01' = {
resource actionGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(actionGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -123,7 +123,7 @@ output location string = actionGroup.location
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/component/main.bicep b/modules/insights/component/main.bicep
index e1de26c3eb..801e9eb20a 100644
--- a/modules/insights/component/main.bicep
+++ b/modules/insights/component/main.bicep
@@ -54,7 +54,7 @@ param kind string = ''
@description('Optional. Location for all Resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -104,7 +104,7 @@ resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
resource appInsights_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(appInsights.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -162,7 +162,7 @@ output instrumentationKey string = appInsights.properties.InstrumentationKey
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/insights/component/tests/e2e/max/main.test.bicep b/modules/insights/component/tests/e2e/max/main.test.bicep
index 1ad71207b0..69e8998fab 100644
--- a/modules/insights/component/tests/e2e/max/main.test.bicep
+++ b/modules/insights/component/tests/e2e/max/main.test.bicep
@@ -84,17 +84,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
index 0fff0badba..e1940171ae 100644
--- a/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/insights/component/tests/e2e/waf-aligned/main.test.bicep
@@ -82,6 +82,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
workspaceResourceId: diagnosticDependencies.outputs.logAnalyticsWorkspaceResourceId
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/key-vault/vault/key/main.bicep b/modules/key-vault/vault/key/main.bicep
index 4c7245b37b..21a15d15f2 100644
--- a/modules/key-vault/vault/key/main.bicep
+++ b/modules/key-vault/vault/key/main.bicep
@@ -53,7 +53,7 @@ param keySize int = -1
])
param kty string = 'EC'
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Key rotation policy properties object.')
@@ -116,7 +116,7 @@ resource key 'Microsoft.KeyVault/vaults/keys@2022-07-01' = {
resource key_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(key.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -140,7 +140,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/key-vault/vault/main.bicep b/modules/key-vault/vault/main.bicep
index c0b08e2451..f26fb09a52 100644
--- a/modules/key-vault/vault/main.bicep
+++ b/modules/key-vault/vault/main.bicep
@@ -70,7 +70,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible.')
@@ -264,7 +264,7 @@ module keyVault_privateEndpoints '../../network/private-endpoint/main.bicep' = [
resource keyVault_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(keyVault.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -306,7 +306,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -383,7 +383,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
diff --git a/modules/key-vault/vault/secret/main.bicep b/modules/key-vault/vault/secret/main.bicep
index daaa7f5b3e..c58f6f645b 100644
--- a/modules/key-vault/vault/secret/main.bicep
+++ b/modules/key-vault/vault/secret/main.bicep
@@ -31,7 +31,7 @@ param value string
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -85,7 +85,7 @@ resource secret 'Microsoft.KeyVault/vaults/secrets@2022-07-01' = {
resource secret_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(secret.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -110,7 +110,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/key-vault/vault/tests/e2e/max/main.test.bicep b/modules/key-vault/vault/tests/e2e/max/main.test.bicep
index a658dede11..e2df0ea2cd 100644
--- a/modules/key-vault/vault/tests/e2e/max/main.test.bicep
+++ b/modules/key-vault/vault/tests/e2e/max/main.test.bicep
@@ -157,17 +157,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
index eeeacf385a..6e41928c3f 100644
--- a/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/key-vault/vault/tests/e2e/waf-aligned/main.test.bicep
@@ -155,6 +155,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
secrets: {
secureList: [
{
diff --git a/modules/logic/workflow/main.bicep b/modules/logic/workflow/main.bicep
index 4508d3b7f0..3dca15ac0c 100644
--- a/modules/logic/workflow/main.bicep
+++ b/modules/logic/workflow/main.bicep
@@ -38,7 +38,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The state. - NotSpecified, Completed, Enabled, Disabled, Deleted, Suspended.')
@@ -181,7 +181,7 @@ resource logicApp_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021
resource logicApp_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(logicApp.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -228,7 +228,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/logic/workflow/tests/e2e/max/main.test.bicep b/modules/logic/workflow/tests/e2e/max/main.test.bicep
index 5781cf8222..108fd11c93 100644
--- a/modules/logic/workflow/tests/e2e/max/main.test.bicep
+++ b/modules/logic/workflow/tests/e2e/max/main.test.bicep
@@ -87,17 +87,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
index 00e1c6c1f6..315241f110 100644
--- a/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/logic/workflow/tests/e2e/waf-aligned/main.test.bicep
@@ -85,6 +85,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
managedIdentities: {
userAssignedResourceIds: [
nestedDependencies.outputs.managedIdentityResourceId
diff --git a/modules/network/dns-forwarding-ruleset/main.bicep b/modules/network/dns-forwarding-ruleset/main.bicep
index 0ae62d1be2..d54a554eed 100644
--- a/modules/network/dns-forwarding-ruleset/main.bicep
+++ b/modules/network/dns-forwarding-ruleset/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -96,7 +96,7 @@ resource dnsForwardingRuleset_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource dnsForwardingRuleset_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsForwardingRuleset.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -132,7 +132,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep b/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
index aeec9b81cc..58a5b8b7cd 100644
--- a/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
+++ b/modules/network/dns-forwarding-ruleset/tests/e2e/max/main.test.bicep
@@ -77,17 +77,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
index f6795b2973..37eca099f6 100644
--- a/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-forwarding-ruleset/tests/e2e/waf-aligned/main.test.bicep
@@ -75,6 +75,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
lock: {
kind: 'CanNotDelete'
name: 'myCustomLockName'
diff --git a/modules/network/dns-resolver/main.bicep b/modules/network/dns-resolver/main.bicep
index 5283a844d2..b733320a97 100644
--- a/modules/network/dns-resolver/main.bicep
+++ b/modules/network/dns-resolver/main.bicep
@@ -12,7 +12,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -107,7 +107,7 @@ resource dnsResolver_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empt
resource dnsResolver_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsResolver.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -143,7 +143,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/a/main.bicep b/modules/network/dns-zone/a/main.bicep
index 857af9c2b0..8f75c9d10e 100644
--- a/modules/network/dns-zone/a/main.bicep
+++ b/modules/network/dns-zone/a/main.bicep
@@ -23,7 +23,7 @@ param targetResourceId string = ''
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -72,7 +72,7 @@ resource A 'Microsoft.Network/dnsZones/A@2018-05-01' = {
resource A_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(A.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/aaaa/main.bicep b/modules/network/dns-zone/aaaa/main.bicep
index d5bf5db1a6..a0d88a4f60 100644
--- a/modules/network/dns-zone/aaaa/main.bicep
+++ b/modules/network/dns-zone/aaaa/main.bicep
@@ -23,7 +23,7 @@ param targetResourceId string = ''
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -72,7 +72,7 @@ resource AAAA 'Microsoft.Network/dnsZones/AAAA@2018-05-01' = {
resource AAAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(AAAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/caa/main.bicep b/modules/network/dns-zone/caa/main.bicep
index e1e328f5be..5456341ee7 100644
--- a/modules/network/dns-zone/caa/main.bicep
+++ b/modules/network/dns-zone/caa/main.bicep
@@ -17,7 +17,7 @@ param caaRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource CAA 'Microsoft.Network/dnsZones/CAA@2018-05-01' = {
resource CAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/cname/main.bicep b/modules/network/dns-zone/cname/main.bicep
index dad49c5256..db68c48d7f 100644
--- a/modules/network/dns-zone/cname/main.bicep
+++ b/modules/network/dns-zone/cname/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. A reference to an azure resource from where the dns resource value is taken. Also known as an alias record sets and are only supported for record types A, AAAA and CNAME. A resource ID can be an Azure Traffic Manager, Azure CDN, Front Door, Static Web App, or a resource ID of a record set of the same type in the DNS zone (i.e. A, AAAA or CNAME). Cannot be used in conjuction with the "aRecords" property.')
param targetResourceId string = ''
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -72,7 +72,7 @@ resource CNAME 'Microsoft.Network/dnsZones/CNAME@2018-05-01' = {
resource CNAME_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CNAME.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -96,7 +96,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/main.bicep b/modules/network/dns-zone/main.bicep
index 4aa4cf1f13..c5b7880355 100644
--- a/modules/network/dns-zone/main.bicep
+++ b/modules/network/dns-zone/main.bicep
@@ -40,7 +40,7 @@ param txt array = []
@description('Optional. The location of the dnsZone. Should be global.')
param location string = 'global'
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -234,7 +234,7 @@ resource dnsZone_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(lo
resource dnsZone_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(dnsZone.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -270,7 +270,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/mx/main.bicep b/modules/network/dns-zone/mx/main.bicep
index bd51f8b54f..710a244cd3 100644
--- a/modules/network/dns-zone/mx/main.bicep
+++ b/modules/network/dns-zone/mx/main.bicep
@@ -17,7 +17,7 @@ param mxRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource MX 'Microsoft.Network/dnsZones/MX@2018-05-01' = {
resource MX_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(MX.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/ns/main.bicep b/modules/network/dns-zone/ns/main.bicep
index 3029815b19..a3a98d5302 100644
--- a/modules/network/dns-zone/ns/main.bicep
+++ b/modules/network/dns-zone/ns/main.bicep
@@ -17,7 +17,7 @@ param nsRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource NS 'Microsoft.Network/dnsZones/NS@2018-05-01' = {
resource NS_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(NS.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/ptr/main.bicep b/modules/network/dns-zone/ptr/main.bicep
index e23f47e094..3363462440 100644
--- a/modules/network/dns-zone/ptr/main.bicep
+++ b/modules/network/dns-zone/ptr/main.bicep
@@ -17,7 +17,7 @@ param ptrRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource PTR 'Microsoft.Network/dnsZones/PTR@2018-05-01' = {
resource PTR_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(PTR.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/soa/main.bicep b/modules/network/dns-zone/soa/main.bicep
index a3f18d13f5..6a7fbe7acf 100644
--- a/modules/network/dns-zone/soa/main.bicep
+++ b/modules/network/dns-zone/soa/main.bicep
@@ -17,7 +17,7 @@ param soaRecord object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SOA 'Microsoft.Network/dnsZones/SOA@2018-05-01' = {
resource SOA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SOA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/srv/main.bicep b/modules/network/dns-zone/srv/main.bicep
index 8577d499c2..c56b257c59 100644
--- a/modules/network/dns-zone/srv/main.bicep
+++ b/modules/network/dns-zone/srv/main.bicep
@@ -17,7 +17,7 @@ param srvRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SRV 'Microsoft.Network/dnsZones/SRV@2018-05-01' = {
resource SRV_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SRV.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/dns-zone/tests/e2e/max/main.test.bicep b/modules/network/dns-zone/tests/e2e/max/main.test.bicep
index cff871fef6..3e016759eb 100644
--- a/modules/network/dns-zone/tests/e2e/max/main.test.bicep
+++ b/modules/network/dns-zone/tests/e2e/max/main.test.bicep
@@ -146,17 +146,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
index 0733fcd4fc..a1b86c65e9 100644
--- a/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -144,6 +144,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
ttl: 3600
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
soa: [
{
name: '@'
diff --git a/modules/network/dns-zone/txt/main.bicep b/modules/network/dns-zone/txt/main.bicep
index 411148a90c..f2ceb2c1ac 100644
--- a/modules/network/dns-zone/txt/main.bicep
+++ b/modules/network/dns-zone/txt/main.bicep
@@ -17,7 +17,7 @@ param ttl int = 3600
@description('Optional. The list of TXT records in the record set.')
param txtRecords array = []
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource TXT 'Microsoft.Network/dnsZones/TXT@2018-05-01' = {
resource TXT_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(TXT.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/load-balancer/main.bicep b/modules/network/load-balancer/main.bicep
index 2fddc2f5ca..c3d1c82794 100644
--- a/modules/network/load-balancer/main.bicep
+++ b/modules/network/load-balancer/main.bicep
@@ -34,7 +34,7 @@ param diagnosticSettings diagnosticSettingType
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -231,7 +231,7 @@ resource loadBalancer_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@
resource loadBalancer_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(loadBalancer.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -270,7 +270,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/load-balancer/tests/e2e/internal/main.test.bicep b/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
index 7654c36f8c..26784c8eb8 100644
--- a/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/internal/main.test.bicep
@@ -135,17 +135,7 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/load-balancer/tests/e2e/max/main.test.bicep b/modules/network/load-balancer/tests/e2e/max/main.test.bicep
index 7740392616..9d7f2ac2d5 100644
--- a/modules/network/load-balancer/tests/e2e/max/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/max/main.test.bicep
@@ -167,17 +167,7 @@ module testDeployment '../../../main.bicep' = {
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
index 1ba74a373a..f0a9319226 100644
--- a/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/load-balancer/tests/e2e/waf-aligned/main.test.bicep
@@ -165,6 +165,13 @@ module testDeployment '../../../main.bicep' = {
requestPath: '/'
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/network-interface/main.bicep b/modules/network/network-interface/main.bicep
index 18536ad362..069ad203c6 100644
--- a/modules/network/network-interface/main.bicep
+++ b/modules/network/network-interface/main.bicep
@@ -53,7 +53,7 @@ param ipConfigurations array
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. The diagnostic settings of the service.')
@@ -153,7 +153,7 @@ resource networkInterface_lock 'Microsoft.Authorization/locks@2020-05-01' = if (
resource networkInterface_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(networkInterface.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -188,7 +188,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/network-interface/tests/e2e/max/main.test.bicep b/modules/network/network-interface/tests/e2e/max/main.test.bicep
index 378e818710..02129671ef 100644
--- a/modules/network/network-interface/tests/e2e/max/main.test.bicep
+++ b/modules/network/network-interface/tests/e2e/max/main.test.bicep
@@ -114,17 +114,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
index c2dc0bb7dc..fe4128d347 100644
--- a/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/network-interface/tests/e2e/waf-aligned/main.test.bicep
@@ -112,6 +112,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/network/private-dns-zone/a/main.bicep b/modules/network/private-dns-zone/a/main.bicep
index 3af41f05de..14ed4d1909 100644
--- a/modules/network/private-dns-zone/a/main.bicep
+++ b/modules/network/private-dns-zone/a/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -66,7 +66,7 @@ resource A 'Microsoft.Network/privateDnsZones/A@2020-06-01' = {
resource A_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(A.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/aaaa/main.bicep b/modules/network/private-dns-zone/aaaa/main.bicep
index 55bedbcb23..d36d381db7 100644
--- a/modules/network/private-dns-zone/aaaa/main.bicep
+++ b/modules/network/private-dns-zone/aaaa/main.bicep
@@ -20,7 +20,7 @@ param ttl int = 3600
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
param enableDefaultTelemetry bool = true
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -66,7 +66,7 @@ resource AAAA 'Microsoft.Network/privateDnsZones/AAAA@2020-06-01' = {
resource AAAA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(AAAA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/cname/main.bicep b/modules/network/private-dns-zone/cname/main.bicep
index f4ecb997b2..10ca076674 100644
--- a/modules/network/private-dns-zone/cname/main.bicep
+++ b/modules/network/private-dns-zone/cname/main.bicep
@@ -17,7 +17,7 @@ param metadata object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource CNAME 'Microsoft.Network/privateDnsZones/CNAME@2020-06-01' = {
resource CNAME_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(CNAME.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/main.bicep b/modules/network/private-dns-zone/main.bicep
index 483412a3fc..e1ee451d5a 100644
--- a/modules/network/private-dns-zone/main.bicep
+++ b/modules/network/private-dns-zone/main.bicep
@@ -35,7 +35,7 @@ param virtualNetworkLinks array = []
@description('Optional. The location of the PrivateDNSZone. Should be global.')
param location string = 'global'
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -210,7 +210,7 @@ resource privateDnsZone_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!e
resource privateDnsZone_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateDnsZone.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -246,7 +246,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/mx/main.bicep b/modules/network/private-dns-zone/mx/main.bicep
index 05ee1f52ba..1937467d66 100644
--- a/modules/network/private-dns-zone/mx/main.bicep
+++ b/modules/network/private-dns-zone/mx/main.bicep
@@ -17,7 +17,7 @@ param mxRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource MX 'Microsoft.Network/privateDnsZones/MX@2020-06-01' = {
resource MX_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(MX.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/ptr/main.bicep b/modules/network/private-dns-zone/ptr/main.bicep
index 961b4b64b1..2b4094fee9 100644
--- a/modules/network/private-dns-zone/ptr/main.bicep
+++ b/modules/network/private-dns-zone/ptr/main.bicep
@@ -17,7 +17,7 @@ param ptrRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -52,7 +52,7 @@ resource defaultTelemetry 'Microsoft.Resources/deployments@2021-04-01' = if (ena
resource PTR_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(PTR.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/soa/main.bicep b/modules/network/private-dns-zone/soa/main.bicep
index da4e144de9..5661f96a86 100644
--- a/modules/network/private-dns-zone/soa/main.bicep
+++ b/modules/network/private-dns-zone/soa/main.bicep
@@ -17,7 +17,7 @@ param soaRecord object = {}
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SOA 'Microsoft.Network/privateDnsZones/SOA@2020-06-01' = {
resource SOA_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SOA.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/srv/main.bicep b/modules/network/private-dns-zone/srv/main.bicep
index 2f945eeb97..aa5a1a95e1 100644
--- a/modules/network/private-dns-zone/srv/main.bicep
+++ b/modules/network/private-dns-zone/srv/main.bicep
@@ -17,7 +17,7 @@ param srvRecords array = []
@description('Optional. The TTL (time-to-live) of the records in the record set.')
param ttl int = 3600
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource SRV 'Microsoft.Network/privateDnsZones/SRV@2020-06-01' = {
resource SRV_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(SRV.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep b/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
index dd9f88f06e..8e28928ada 100644
--- a/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
+++ b/modules/network/private-dns-zone/tests/e2e/max/main.test.bicep
@@ -142,17 +142,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
index 3a66dcf13e..591d3e4e8d 100644
--- a/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-dns-zone/tests/e2e/waf-aligned/main.test.bicep
@@ -140,6 +140,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
ttl: 3600
}
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
soa: [
{
name: '@'
diff --git a/modules/network/private-dns-zone/txt/main.bicep b/modules/network/private-dns-zone/txt/main.bicep
index 7d26882ed9..afbe9ae0f9 100644
--- a/modules/network/private-dns-zone/txt/main.bicep
+++ b/modules/network/private-dns-zone/txt/main.bicep
@@ -17,7 +17,7 @@ param ttl int = 3600
@description('Optional. The list of TXT records in the record set.')
param txtRecords array = []
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -66,7 +66,7 @@ resource TXT 'Microsoft.Network/privateDnsZones/TXT@2020-06-01' = {
resource TXT_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(TXT.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -90,7 +90,7 @@ output resourceGroupName string = resourceGroup().name
// =============== //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-endpoint/main.bicep b/modules/network/private-endpoint/main.bicep
index 6f3f837172..1c5e1df2d1 100644
--- a/modules/network/private-endpoint/main.bicep
+++ b/modules/network/private-endpoint/main.bicep
@@ -35,7 +35,7 @@ param location string = resourceGroup().location
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
@@ -126,7 +126,7 @@ resource privateEndpoint_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!
resource privateEndpoint_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(privateEndpoint.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -154,7 +154,7 @@ output location string = privateEndpoint.location
// ================ //
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/private-endpoint/tests/e2e/max/main.test.bicep b/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
index 1a8851e36a..0812571d74 100644
--- a/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
+++ b/modules/network/private-endpoint/tests/e2e/max/main.test.bicep
@@ -70,17 +70,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
index df7d5dfd80..72e2c7f377 100644
--- a/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/private-endpoint/tests/e2e/waf-aligned/main.test.bicep
@@ -68,6 +68,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
privateDnsZoneResourceIds: [
nestedDependencies.outputs.privateDNSZoneResourceId
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
ipConfigurations: [
{
name: 'myIPconfig'
diff --git a/modules/network/public-ip-address/main.bicep b/modules/network/public-ip-address/main.bicep
index fe295e6da1..46fd1decb2 100644
--- a/modules/network/public-ip-address/main.bicep
+++ b/modules/network/public-ip-address/main.bicep
@@ -67,7 +67,7 @@ param lock lockType
@description('Optional. Location for all resources.')
param location string = resourceGroup().location
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Enable telemetry via a Globally Unique Identifier (GUID).')
@@ -162,7 +162,7 @@ resource publicIpAddress_diagnosticSettings 'Microsoft.Insights/diagnosticSettin
resource publicIpAddress_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(publicIpAddress.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -200,7 +200,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/public-ip-address/tests/e2e/max/main.test.bicep b/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
index 3b31e4f374..7ce46d663b 100644
--- a/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
+++ b/modules/network/public-ip-address/tests/e2e/max/main.test.bicep
@@ -88,17 +88,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicIPAllocationMethod: 'Static'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
index 1add04b4b7..5e16ba63ef 100644
--- a/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/public-ip-address/tests/e2e/waf-aligned/main.test.bicep
@@ -86,6 +86,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
name: 'myCustomLockName'
}
publicIPAllocationMethod: 'Static'
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
skuName: 'Standard'
zones: [
'1'
diff --git a/modules/network/route-table/main.bicep b/modules/network/route-table/main.bicep
index 5be759f963..3db1e9d17f 100644
--- a/modules/network/route-table/main.bicep
+++ b/modules/network/route-table/main.bicep
@@ -17,7 +17,7 @@ param disableBgpRoutePropagation bool = false
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -69,7 +69,7 @@ resource routeTable_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty
resource routeTable_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(routeTable.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -105,7 +105,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/network/route-table/tests/e2e/max/main.test.bicep b/modules/network/route-table/tests/e2e/max/main.test.bicep
index d12a806209..f611d8c177 100644
--- a/modules/network/route-table/tests/e2e/max/main.test.bicep
+++ b/modules/network/route-table/tests/e2e/max/main.test.bicep
@@ -59,17 +59,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
index b5ce6bfbd7..6edf7269f8 100644
--- a/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/network/route-table/tests/e2e/waf-aligned/main.test.bicep
@@ -57,6 +57,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
routes: [
{
name: 'default'
diff --git a/modules/operational-insights/workspace/main.bicep b/modules/operational-insights/workspace/main.bicep
index e91809200c..83935efb70 100644
--- a/modules/operational-insights/workspace/main.bicep
+++ b/modules/operational-insights/workspace/main.bicep
@@ -88,7 +88,7 @@ param forceCmkForQuery bool = true
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Tags of the resource.')
@@ -305,7 +305,7 @@ resource logAnalyticsWorkspace_lock 'Microsoft.Authorization/locks@2020-05-01' =
resource logAnalyticsWorkspace_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(logAnalyticsWorkspace.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -355,7 +355,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep b/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
index 38b560ea90..ad7165b0c2 100644
--- a/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
+++ b/modules/operational-insights/workspace/tests/e2e/max/main.test.bicep
@@ -229,17 +229,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
index 097702cf24..e523244e4a 100644
--- a/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/operational-insights/workspace/tests/e2e/waf-aligned/main.test.bicep
@@ -227,5 +227,12 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
managedIdentities: {
systemAssigned: true
}
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
}
}]
diff --git a/modules/power-bi-dedicated/capacity/main.bicep b/modules/power-bi-dedicated/capacity/main.bicep
index eafa0f6bf5..c155245138 100644
--- a/modules/power-bi-dedicated/capacity/main.bicep
+++ b/modules/power-bi-dedicated/capacity/main.bicep
@@ -49,7 +49,7 @@ param mode string = 'Gen2'
@description('Optional. The lock settings of the service.')
param lock lockType
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
var builtInRoleNames = {
@@ -103,7 +103,7 @@ resource capacity_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!empty(l
resource capacity_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(capacity.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -139,7 +139,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
diff --git a/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep b/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
index af12c01c5b..c6fe16963e 100644
--- a/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
+++ b/modules/power-bi-dedicated/capacity/tests/e2e/max/main.test.bicep
@@ -63,17 +63,7 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
]
roleAssignments: [
{
- roleDefinitionIdOrName: 'Owner'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
- principalId: nestedDependencies.outputs.managedIdentityPrincipalId
- principalType: 'ServicePrincipal'
- }
- {
- roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
+ roleDefinitionIdOrName: 'Reader'
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
diff --git a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
index 022a0121b2..de6e04a1b0 100644
--- a/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
+++ b/modules/power-bi-dedicated/capacity/tests/e2e/waf-aligned/main.test.bicep
@@ -61,6 +61,13 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
members: [
nestedDependencies.outputs.managedIdentityPrincipalId
]
+ roleAssignments: [
+ {
+ roleDefinitionIdOrName: 'Reader'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ ]
tags: {
'hidden-title': 'This is visible in the resource name'
Environment: 'Non-Prod'
diff --git a/modules/search/search-service/main.bicep b/modules/search/search-service/main.bicep
index b408103f8d..8f044e1609 100644
--- a/modules/search/search-service/main.bicep
+++ b/modules/search/search-service/main.bicep
@@ -65,7 +65,7 @@ param publicNetworkAccess string = 'enabled'
@maxValue(12)
param replicaCount int = 1
-@description('Optional. Array of role assignments to create.')
+@description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
param roleAssignments roleAssignmentType
@description('Optional. Defines the SKU of an Azure Cognitive Search Service, which determines price tier and capacity limits.')
@@ -186,7 +186,7 @@ resource searchService_lock 'Microsoft.Authorization/locks@2020-05-01' = if (!em
resource searchService_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-04-01' = [for (roleAssignment, index) in (roleAssignments ?? []): {
name: guid(searchService.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
properties: {
- roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/') ? roleAssignment.roleDefinitionIdOrName : subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
+ roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName) ? builtInRoleNames[roleAssignment.roleDefinitionIdOrName] : roleAssignment.roleDefinitionIdOrName
principalId: roleAssignment.principalId
description: roleAssignment.?description
principalType: roleAssignment.?principalType
@@ -275,7 +275,7 @@ type lockType = {
}?
type roleAssignmentType = {
- @description('Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
+ @description('Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.')
roleDefinitionIdOrName: string
@description('Required. The principal ID of the principal (user/group/identity) to assign the role to.')
@@ -352,7 +352,7 @@ type privateEndpointType = {
@description('Optional. Specify the type of lock.')
lock: lockType
- @description('Optional. Array of role assignments to create.')
+ @description('Optional. Array of role assignment objects that contain the \'roleDefinitionIdOrName\' and \'principalId\' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: \'/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\'.')
roleAssignments: roleAssignmentType
@description('Optional. Tags to be applied on all resources/resource groups in this deployment.')
From 6705fd10bf56e9b44ae113272764c379d8b84e70 Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 22:21:51 +0100
Subject: [PATCH 6/7] Update to latest
---
.../tests/e2e/max/main.test.bicep | 36 +++++++++++++++++--
1 file changed, 33 insertions(+), 3 deletions(-)
diff --git a/modules/storage/storage-account/tests/e2e/max/main.test.bicep b/modules/storage/storage-account/tests/e2e/max/main.test.bicep
index d8558c7b52..8f1a304088 100644
--- a/modules/storage/storage-account/tests/e2e/max/main.test.bicep
+++ b/modules/storage/storage-account/tests/e2e/max/main.test.bicep
@@ -150,7 +150,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
publicAccess: 'None'
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
@@ -195,7 +205,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
shareQuota: 5120
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
@@ -251,7 +271,17 @@ module testDeployment '../../../main.bicep' = [for iteration in [ 'init', 'idem'
}
roleAssignments: [
{
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ principalId: nestedDependencies.outputs.managedIdentityPrincipalId
+ principalType: 'ServicePrincipal'
+ }
+ {
+ roleDefinitionIdOrName: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', 'acdd72a7-3385-48ef-bd42-f606fba81ae7')
principalId: nestedDependencies.outputs.managedIdentityPrincipalId
principalType: 'ServicePrincipal'
}
From 6494b0b7feda3be74a3affc8bac2240000b341da Mon Sep 17 00:00:00 2001
From: AlexanderSehr
Date: Tue, 21 Nov 2023 22:31:44 +0100
Subject: [PATCH 7/7] Updated templates & readmes
---
modules/aad/domain-service/README.md | 8 +-
modules/aad/domain-service/main.json | 10 +-
modules/analysis-services/server/README.md | 48 +++---
modules/analysis-services/server/main.json | 6 +-
modules/api-management/service/README.md | 48 +++---
modules/api-management/service/main.json | 8 +-
.../configuration-store/README.md | 76 ++++++---
.../configuration-store/main.json | 10 +-
modules/app/container-app/README.md | 4 +-
modules/app/container-app/main.json | 6 +-
modules/app/job/README.md | 4 +-
modules/app/job/main.json | 6 +-
modules/app/managed-environment/README.md | 8 +-
modules/app/managed-environment/main.json | 8 +-
.../automation/automation-account/README.md | 52 +++---
.../automation/automation-account/main.json | 10 +-
modules/cache/redis-enterprise/README.md | 52 +++---
modules/cache/redis-enterprise/main.json | 10 +-
modules/cache/redis/README.md | 12 +-
modules/cache/redis/main.json | 10 +-
modules/cdn/profile/README.md | 72 ++++++---
modules/cdn/profile/main.json | 8 +-
modules/compute/availability-set/README.md | 48 +++---
modules/compute/availability-set/main.json | 8 +-
modules/compute/disk-encryption-set/README.md | 72 ++++++---
modules/compute/disk-encryption-set/main.json | 8 +-
modules/compute/disk/README.md | 96 +++++++++---
modules/compute/disk/main.json | 8 +-
modules/compute/gallery/README.md | 40 ++---
modules/compute/gallery/application/main.json | 6 +-
modules/compute/gallery/image/main.json | 6 +-
modules/compute/gallery/main.json | 12 +-
modules/compute/image/README.md | 48 +++---
modules/compute/image/main.json | 8 +-
.../proximity-placement-group/README.md | 48 +++---
.../proximity-placement-group/main.json | 8 +-
.../virtual-machine-scale-set/README.md | 8 +-
.../virtual-machine-scale-set/main.json | 8 +-
modules/compute/virtual-machine/README.md | 56 ++++++-
modules/compute/virtual-machine/main.json | 14 +-
modules/container-registry/registry/README.md | 52 +++---
modules/container-registry/registry/main.json | 10 +-
.../managed-cluster/README.md | 58 +++++--
.../managed-cluster/main.json | 19 ++-
modules/data-factory/factory/README.md | 52 +++---
modules/data-factory/factory/main.json | 10 +-
.../data-protection/backup-vault/README.md | 48 +++---
.../data-protection/backup-vault/main.json | 8 +-
modules/databricks/access-connector/README.md | 48 +++---
modules/databricks/access-connector/main.json | 8 +-
modules/databricks/workspace/README.md | 52 +++---
modules/databricks/workspace/main.json | 10 +-
.../db-for-my-sql/flexible-server/README.md | 28 +++-
.../db-for-my-sql/flexible-server/main.json | 6 +-
.../flexible-server/README.md | 8 +-
.../flexible-server/main.json | 8 +-
.../application-group/README.md | 40 ++---
.../application-group/main.json | 4 +-
.../host-pool/README.md | 40 ++---
.../host-pool/main.json | 4 +-
.../scaling-plan/README.md | 40 ++---
.../scaling-plan/main.json | 4 +-
.../workspace/README.md | 40 ++---
.../workspace/main.json | 4 +-
modules/dev-test-lab/lab/README.md | 44 +++---
modules/dev-test-lab/lab/main.json | 30 ++--
.../digital-twins-instance/README.md | 8 +-
.../digital-twins-instance/main.json | 8 +-
.../document-db/database-account/README.md | 104 ++++++++++--
.../document-db/database-account/main.json | 8 +-
modules/event-hub/namespace/README.md | 52 +++---
.../event-hub/namespace/eventhub/README.md | 8 +-
.../event-hub/namespace/eventhub/main.json | 18 +--
modules/event-hub/namespace/main.json | 18 +--
modules/health-bot/health-bot/README.md | 48 +++---
modules/health-bot/health-bot/main.json | 8 +-
modules/healthcare-apis/workspace/README.md | 48 +++---
.../workspace/fhirservice/README.md | 8 +-
.../workspace/fhirservice/main.json | 8 +-
modules/healthcare-apis/workspace/main.json | 16 +-
modules/insights/activity-log-alert/README.md | 48 +++---
modules/insights/activity-log-alert/main.json | 8 +-
.../data-collection-endpoint/README.md | 8 +-
.../data-collection-endpoint/main.json | 8 +-
.../insights/data-collection-rule/main.json | 4 +-
modules/insights/metric-alert/README.md | 48 +++---
modules/insights/metric-alert/main.json | 8 +-
modules/insights/private-link-scope/README.md | 52 +++---
modules/insights/private-link-scope/main.json | 10 +-
.../insights/scheduled-query-rule/README.md | 48 +++---
.../insights/scheduled-query-rule/main.json | 8 +-
modules/insights/webtest/main.json | 4 +-
.../workspace/README.md | 40 ++---
.../workspace/main.json | 8 +-
.../maintenance-configuration/README.md | 48 +++---
.../maintenance-configuration/main.json | 8 +-
.../user-assigned-identity/README.md | 48 +++---
.../user-assigned-identity/main.json | 8 +-
modules/net-app/net-app-account/README.md | 56 ++++++-
.../net-app-account/capacity-pool/README.md | 8 +-
.../net-app-account/capacity-pool/main.json | 20 +--
.../capacity-pool/volume/README.md | 8 +-
.../capacity-pool/volume/main.json | 10 +-
modules/net-app/net-app-account/main.json | 24 +--
modules/network/application-gateway/README.md | 52 +++---
modules/network/application-gateway/main.json | 10 +-
.../application-security-group/README.md | 48 +++---
.../application-security-group/main.json | 8 +-
modules/network/azure-firewall/README.md | 48 +++---
modules/network/azure-firewall/main.json | 8 +-
modules/network/bastion-host/README.md | 48 +++---
modules/network/bastion-host/main.json | 8 +-
.../network/ddos-protection-plan/README.md | 48 +++---
.../network/ddos-protection-plan/main.json | 10 +-
.../network/express-route-circuit/README.md | 48 +++---
.../network/express-route-circuit/main.json | 8 +-
.../network/express-route-gateway/README.md | 48 +++---
.../network/express-route-gateway/main.json | 8 +-
.../README.md | 48 +++---
.../main.json | 8 +-
modules/network/front-door/README.md | 48 +++---
modules/network/front-door/main.json | 8 +-
modules/network/ip-group/README.md | 48 +++---
modules/network/ip-group/main.json | 8 +-
.../network/local-network-gateway/README.md | 48 +++---
.../network/local-network-gateway/main.json | 8 +-
modules/network/nat-gateway/README.md | 72 ++++++---
modules/network/nat-gateway/main.json | 16 +-
modules/network/network-manager/README.md | 40 ++---
modules/network/network-manager/main.json | 32 ++--
.../network/network-security-group/README.md | 48 +++---
.../network/network-security-group/main.json | 8 +-
modules/network/network-watcher/README.md | 48 +++---
modules/network/network-watcher/main.json | 12 +-
.../network/private-link-service/README.md | 8 +-
.../network/private-link-service/main.json | 8 +-
modules/network/public-ip-prefix/README.md | 48 +++---
modules/network/public-ip-prefix/main.json | 8 +-
.../network/service-endpoint-policy/README.md | 48 +++---
.../network/service-endpoint-policy/main.json | 8 +-
.../network/trafficmanagerprofile/README.md | 48 +++---
.../network/trafficmanagerprofile/main.json | 8 +-
.../network/virtual-network-gateway/README.md | 32 +++-
.../network/virtual-network-gateway/main.json | 8 +-
modules/network/virtual-network/README.md | 48 +++---
modules/network/virtual-network/main.json | 16 +-
.../network/virtual-network/subnet/README.md | 8 +-
.../network/virtual-network/subnet/main.json | 8 +-
modules/network/virtual-wan/README.md | 48 +++---
modules/network/virtual-wan/main.json | 8 +-
modules/network/vpn-site/README.md | 48 +++---
modules/network/vpn-site/main.json | 8 +-
modules/purview/account/README.md | 48 +++---
modules/purview/account/main.json | 8 +-
modules/recovery-services/vault/README.md | 52 +++---
modules/recovery-services/vault/main.json | 26 +--
modules/relay/namespace/README.md | 52 +++---
.../namespace/hybrid-connection/README.md | 8 +-
.../namespace/hybrid-connection/main.json | 14 +-
modules/relay/namespace/main.json | 26 +--
modules/relay/namespace/wcf-relay/README.md | 8 +-
modules/relay/namespace/wcf-relay/main.json | 14 +-
modules/resource-graph/query/README.md | 48 +++---
modules/resource-graph/query/main.json | 8 +-
modules/resources/resource-group/README.md | 48 +++---
modules/resources/resource-group/main.json | 8 +-
modules/service-bus/namespace/README.md | 36 ++++-
modules/service-bus/namespace/main.json | 26 +--
modules/service-bus/namespace/queue/README.md | 8 +-
modules/service-bus/namespace/queue/main.json | 14 +-
modules/service-bus/namespace/topic/README.md | 8 +-
modules/service-bus/namespace/topic/main.json | 14 +-
modules/service-fabric/cluster/README.md | 48 +++---
modules/service-fabric/cluster/main.json | 8 +-
modules/signal-r-service/signal-r/README.md | 12 +-
modules/signal-r-service/signal-r/main.json | 10 +-
.../signal-r-service/web-pub-sub/README.md | 12 +-
.../signal-r-service/web-pub-sub/main.json | 10 +-
modules/sql/managed-instance/README.md | 48 +++---
modules/sql/managed-instance/main.json | 8 +-
modules/sql/server/README.md | 52 +++---
modules/sql/server/main.json | 10 +-
modules/storage/storage-account/README.md | 148 ++++++++++++++----
.../blob-service/container/README.md | 8 +-
.../blob-service/container/main.json | 8 +-
.../file-service/share/README.md | 8 +-
.../file-service/share/main.json | 8 +-
modules/storage/storage-account/main.json | 40 ++---
.../queue-service/queue/README.md | 8 +-
.../queue-service/queue/main.json | 8 +-
modules/synapse/private-link-hub/README.md | 12 +-
modules/synapse/private-link-hub/main.json | 10 +-
modules/synapse/workspace/README.md | 52 +++---
modules/synapse/workspace/main.json | 10 +-
.../image-template/README.md | 48 +++---
.../image-template/main.json | 10 +-
modules/web/connection/README.md | 48 +++---
modules/web/connection/main.json | 8 +-
modules/web/hosting-environment/README.md | 56 ++++++-
modules/web/hosting-environment/main.json | 8 +-
modules/web/serverfarm/README.md | 48 +++---
modules/web/serverfarm/main.json | 8 +-
modules/web/site/README.md | 60 +++++--
modules/web/site/main.json | 20 +--
modules/web/site/slot/README.md | 12 +-
modules/web/site/slot/main.json | 10 +-
modules/web/static-site/README.md | 52 +++---
modules/web/static-site/main.json | 10 +-
208 files changed, 3043 insertions(+), 2236 deletions(-)
diff --git a/modules/aad/domain-service/README.md b/modules/aad/domain-service/README.md
index 673231c2f7..a62f0857f9 100644
--- a/modules/aad/domain-service/README.md
+++ b/modules/aad/domain-service/README.md
@@ -323,7 +323,7 @@ module domainService 'br:bicep/modules/aad.domain-service:1.0.0' = {
| [`notifyGlobalAdmins`](#parameter-notifyglobaladmins) | string | The value is to notify the Global Admins. |
| [`ntlmV1`](#parameter-ntlmv1) | string | The value is to enable clients making request using NTLM v1. |
| [`replicaSets`](#parameter-replicasets) | array | Additional replica set for the managed domain. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`sku`](#parameter-sku) | string | The name of the SKU specific to Azure ADDS Services. |
| [`syncNtlmPasswords`](#parameter-syncntlmpasswords) | string | The value is to enable synchronized users to use NTLM authentication. |
| [`syncOnPremPasswords`](#parameter-synconprempasswords) | string | The value is to enable on-premises users to authenticate against managed domain. |
@@ -628,7 +628,7 @@ Additional replica set for the managed domain.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -641,7 +641,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -689,7 +689,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/aad/domain-service/main.json b/modules/aad/domain-service/main.json
index 6e3976bfcc..d0510c3e8a 100644
--- a/modules/aad/domain-service/main.json
+++ b/modules/aad/domain-service/main.json
@@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
- "version": "0.22.6.54827",
- "templateHash": "10052117540394396974"
+ "version": "0.23.1.45101",
+ "templateHash": "1250805842529058137"
},
"name": "Azure Active Directory Domain Services",
"description": "This module deploys an Azure Active Directory Domain Services (AADDS).",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -411,7 +411,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
}
},
@@ -518,7 +518,7 @@
"scope": "[format('Microsoft.AAD/domainServices/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.AAD/domainServices', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/analysis-services/server/README.md b/modules/analysis-services/server/README.md
index c35c2a2be3..88a08b2384 100644
--- a/modules/analysis-services/server/README.md
+++ b/modules/analysis-services/server/README.md
@@ -136,7 +136,17 @@ module server 'br:bicep/modules/analysis-services.server:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
skuCapacity: 1
@@ -217,7 +227,17 @@ module server 'br:bicep/modules/analysis-services.server:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -294,13 +314,6 @@ module server 'br:bicep/modules/analysis-services.server:1.0.0' = {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
skuCapacity: 1
skuName: 'S0'
tags: {
@@ -374,15 +387,6 @@ module server 'br:bicep/modules/analysis-services.server:1.0.0' = {
"name": "myCustomLockName"
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"skuCapacity": {
"value": 1
},
@@ -421,7 +425,7 @@ module server 'br:bicep/modules/analysis-services.server:1.0.0' = {
| [`firewallSettings`](#parameter-firewallsettings) | object | The inbound firewall rules to define on the server. If not specified, firewall is disabled. |
| [`location`](#parameter-location) | string | Location for all Resources. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`skuCapacity`](#parameter-skucapacity) | int | The total number of query replica scale-out instances. |
| [`skuName`](#parameter-skuname) | string | The SKU name of the Azure Analysis Services server to create. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
@@ -609,7 +613,7 @@ The name of the Azure Analysis Services server to create.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -622,7 +626,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -670,7 +674,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/analysis-services/server/main.json b/modules/analysis-services/server/main.json
index cb62fdcfee..b5a8657aef 100644
--- a/modules/analysis-services/server/main.json
+++ b/modules/analysis-services/server/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "11444956126966610005"
+ "templateHash": "16473107761572219540"
},
"name": "Analysis Services Servers",
"description": "This module deploys an Analysis Services Server.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -270,7 +270,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
diff --git a/modules/api-management/service/README.md b/modules/api-management/service/README.md
index aa9604ceea..fd30fb48ed 100644
--- a/modules/api-management/service/README.md
+++ b/modules/api-management/service/README.md
@@ -250,7 +250,17 @@ module service 'br:bicep/modules/api-management.service:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
subscriptions: [
@@ -447,7 +457,17 @@ module service 'br:bicep/modules/api-management.service:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -616,13 +636,6 @@ module service 'br:bicep/modules/api-management.service:1.0.0' = {
subscriptionRequired: false
}
]
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
subscriptions: [
{
name: 'testArmSubscriptionAllApis'
@@ -812,15 +825,6 @@ module service 'br:bicep/modules/api-management.service:1.0.0' = {
}
]
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"subscriptions": {
"value": [
{
@@ -882,7 +886,7 @@ module service 'br:bicep/modules/api-management.service:1.0.0' = {
| [`portalsettings`](#parameter-portalsettings) | array | Portal settings. |
| [`products`](#parameter-products) | array | Products. |
| [`restore`](#parameter-restore) | bool | Undelete API Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`sku`](#parameter-sku) | string | The pricing tier of this API Management service. |
| [`skuCount`](#parameter-skucount) | int | The instance size of this API Management service. |
| [`subnetResourceId`](#parameter-subnetresourceid) | string | The full resource ID of a subnet in a virtual network to deploy the API Management service in. |
@@ -1233,7 +1237,7 @@ Undelete API Management Service if it was previously soft-deleted. If this flag
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1246,7 +1250,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1294,7 +1298,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/api-management/service/main.json b/modules/api-management/service/main.json
index 4331c55f43..bb97234fb2 100644
--- a/modules/api-management/service/main.json
+++ b/modules/api-management/service/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "12034021056308380039"
+ "templateHash": "12791748357960289440"
},
"name": "API Management Services",
"description": "This module deploys an API Management Service.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -346,7 +346,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"sku": {
@@ -605,7 +605,7 @@
"scope": "[format('Microsoft.ApiManagement/service/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.ApiManagement/service', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/app-configuration/configuration-store/README.md b/modules/app-configuration/configuration-store/README.md
index 1913e261cd..990cfe2b51 100644
--- a/modules/app-configuration/configuration-store/README.md
+++ b/modules/app-configuration/configuration-store/README.md
@@ -129,7 +129,17 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
softDeleteRetentionInDays: 1
@@ -206,7 +216,17 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -289,7 +309,17 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
softDeleteRetentionInDays: 1
@@ -382,7 +412,17 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -562,13 +602,6 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
''
]
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
softDeleteRetentionInDays: 1
tags: {
Environment: 'Non-Prod'
@@ -654,15 +687,6 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
]
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"softDeleteRetentionInDays": {
"value": 1
},
@@ -705,7 +729,7 @@ module configurationStore 'br:bicep/modules/app-configuration.configuration-stor
| [`managedIdentities`](#parameter-managedidentities) | object | The managed identity definition for this resource. |
| [`privateEndpoints`](#parameter-privateendpoints) | array | Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible. |
| [`publicNetworkAccess`](#parameter-publicnetworkaccess) | string | Whether or not public network access is allowed for this resource. For security reasons it should be disabled. If not specified, it will be disabled by default if private endpoints are set. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`sku`](#parameter-sku) | string | Pricing tier of App Configuration. |
| [`softDeleteRetentionInDays`](#parameter-softdeleteretentionindays) | int | The amount of time in days that the configuration store will be retained when it is soft deleted. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
@@ -995,7 +1019,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1147,7 +1171,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1190,7 +1214,7 @@ Whether or not public network access is allowed for this resource. For security
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1203,7 +1227,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1251,7 +1275,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/app-configuration/configuration-store/main.json b/modules/app-configuration/configuration-store/main.json
index f3f2d4fd17..8356549175 100644
--- a/modules/app-configuration/configuration-store/main.json
+++ b/modules/app-configuration/configuration-store/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "75945570727927214"
+ "templateHash": "1035721071234192840"
},
"name": "App Configuration Stores",
"description": "This module deploys an App Configuration Store.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -274,7 +274,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -546,7 +546,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -701,7 +701,7 @@
"scope": "[format('Microsoft.AppConfiguration/configurationStores/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.AppConfiguration/configurationStores', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/app/container-app/README.md b/modules/app/container-app/README.md
index a5789ffb6c..6f88154a11 100644
--- a/modules/app/container-app/README.md
+++ b/modules/app/container-app/README.md
@@ -694,7 +694,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -742,7 +742,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/app/container-app/main.json b/modules/app/container-app/main.json
index 3e89b56a68..151294bb80 100644
--- a/modules/app/container-app/main.json
+++ b/modules/app/container-app/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "3901132801605374235"
+ "templateHash": "3664175856787955387"
},
"name": "Container Apps",
"description": "This module deploys a Container App.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -457,7 +457,7 @@
"scope": "[format('Microsoft.App/containerApps/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.App/containerApps', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/app/job/README.md b/modules/app/job/README.md
index c1201754ba..cd12e8e51d 100644
--- a/modules/app/job/README.md
+++ b/modules/app/job/README.md
@@ -687,7 +687,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -735,7 +735,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/app/job/main.json b/modules/app/job/main.json
index 47a3c78d1e..2913e527df 100644
--- a/modules/app/job/main.json
+++ b/modules/app/job/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "1177002150217044728"
+ "templateHash": "5076851392653441401"
},
"name": "Container App Jobs",
"description": "This module deploys a Container App Job.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -347,7 +347,7 @@
"scope": "[format('Microsoft.App/jobs/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.App/jobs', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/app/managed-environment/README.md b/modules/app/managed-environment/README.md
index d222427925..913062b3a2 100644
--- a/modules/app/managed-environment/README.md
+++ b/modules/app/managed-environment/README.md
@@ -313,7 +313,7 @@ module managedEnvironment 'br:bicep/modules/app.managed-environment:1.0.0' = {
| [`logsDestination`](#parameter-logsdestination) | string | Logs destination. |
| [`platformReservedCidr`](#parameter-platformreservedcidr) | string | IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. It must not overlap with any other provided IP ranges and can only be used when the environment is deployed into a virtual network. If not provided, it will be set with a default value by the platform. |
| [`platformReservedDnsIP`](#parameter-platformreserveddnsip) | string | An IP address from the IP range defined by "platformReservedCidr" that will be reserved for the internal DNS server. It must not be the first address in the range and can only be used when the environment is deployed into a virtual network. If not provided, it will be set with a default value by the platform. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`skuName`](#parameter-skuname) | string | Managed environment SKU. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
| [`workloadProfiles`](#parameter-workloadprofiles) | array | Workload profiles configured for the Managed Environment. |
@@ -450,7 +450,7 @@ An IP address from the IP range defined by "platformReservedCidr" that will be r
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -463,7 +463,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -511,7 +511,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/app/managed-environment/main.json b/modules/app/managed-environment/main.json
index cd7af31c94..ba37943c32 100644
--- a/modules/app/managed-environment/main.json
+++ b/modules/app/managed-environment/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "17510800738142190994"
+ "templateHash": "15830956831455159038"
},
"name": "App ManagedEnvironments",
"description": "This module deploys an App Managed Environment (also known as a Container App Environment).",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -135,7 +135,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"skuName": {
@@ -334,7 +334,7 @@
"scope": "[format('Microsoft.App/managedEnvironments/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.App/managedEnvironments', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/automation/automation-account/README.md b/modules/automation/automation-account/README.md
index 11b5cc06c2..fb894b62e8 100644
--- a/modules/automation/automation-account/README.md
+++ b/modules/automation/automation-account/README.md
@@ -252,7 +252,17 @@ module automationAccount 'br:bicep/modules/automation.automation-account:1.0.0'
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
runbooks: [
@@ -484,7 +494,17 @@ module automationAccount 'br:bicep/modules/automation.automation-account:1.0.0'
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -704,13 +724,6 @@ module automationAccount 'br:bicep/modules/automation.automation-account:1.0.0'
}
}
]
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
runbooks: [
{
description: 'Test runbook'
@@ -935,15 +948,6 @@ module automationAccount 'br:bicep/modules/automation.automation-account:1.0.0'
}
]
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"runbooks": {
"value": [
{
@@ -1097,7 +1101,7 @@ module automationAccount 'br:bicep/modules/automation.automation-account:1.0.0'
| [`modules`](#parameter-modules) | array | List of modules to be created in the automation account. |
| [`privateEndpoints`](#parameter-privateendpoints) | array | Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible. |
| [`publicNetworkAccess`](#parameter-publicnetworkaccess) | string | Whether or not public network access is allowed for this resource. For security reasons it should be disabled. If not specified, it will be disabled by default if private endpoints are set. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`runbooks`](#parameter-runbooks) | array | List of runbooks to be created in the automation account. |
| [`schedules`](#parameter-schedules) | array | List of schedules to be created in the automation account. |
| [`skuName`](#parameter-skuname) | string | SKU name of the account. |
@@ -1390,7 +1394,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | Yes | string | Required. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1542,7 +1546,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1585,7 +1589,7 @@ Whether or not public network access is allowed for this resource. For security
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1598,7 +1602,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1646,7 +1650,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/automation/automation-account/main.json b/modules/automation/automation-account/main.json
index db9ba071f1..369cf74eb5 100644
--- a/modules/automation/automation-account/main.json
+++ b/modules/automation/automation-account/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "3971272162822794152"
+ "templateHash": "15622091278066868534"
},
"name": "Automation Accounts",
"description": "This module deploys an Azure Automation Account.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -273,7 +273,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -573,7 +573,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -719,7 +719,7 @@
"scope": "[format('Microsoft.Automation/automationAccounts/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Automation/automationAccounts', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/cache/redis-enterprise/README.md b/modules/cache/redis-enterprise/README.md
index 0c37755f50..e818d8120c 100644
--- a/modules/cache/redis-enterprise/README.md
+++ b/modules/cache/redis-enterprise/README.md
@@ -277,7 +277,17 @@ module redisEnterprise 'br:bicep/modules/cache.redis-enterprise:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -378,7 +388,17 @@ module redisEnterprise 'br:bicep/modules/cache.redis-enterprise:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -467,13 +487,6 @@ module redisEnterprise 'br:bicep/modules/cache.redis-enterprise:1.0.0' = {
}
}
]
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
resourceType: 'Redis Cache Enterprise'
@@ -567,15 +580,6 @@ module redisEnterprise 'br:bicep/modules/cache.redis-enterprise:1.0.0' = {
}
]
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"hidden-title": "This is visible in the resource name",
@@ -613,7 +617,7 @@ module redisEnterprise 'br:bicep/modules/cache.redis-enterprise:1.0.0' = {
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
| [`minimumTlsVersion`](#parameter-minimumtlsversion) | string | Requires clients to use a specified TLS version (or higher) to connect. |
| [`privateEndpoints`](#parameter-privateendpoints) | array | Configuration details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`skuName`](#parameter-skuname) | string | The type of Redis Enterprise Cluster to deploy. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
| [`zoneRedundant`](#parameter-zoneredundant) | bool | When true, the cluster will be deployed across availability zones. |
@@ -801,7 +805,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -953,7 +957,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -981,7 +985,7 @@ Optional. Tags to be applied on all resources/resource groups in this deployment
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -994,7 +998,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1042,7 +1046,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/cache/redis-enterprise/main.json b/modules/cache/redis-enterprise/main.json
index 27f647f9e5..07490f41f9 100644
--- a/modules/cache/redis-enterprise/main.json
+++ b/modules/cache/redis-enterprise/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "9202709558148407604"
+ "templateHash": "14212744208009857353"
},
"name": "Redis Cache Enterprise",
"description": "This module deploys a Redis Cache Enterprise.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -251,7 +251,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -383,7 +383,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -550,7 +550,7 @@
"scope": "[format('Microsoft.Cache/redisEnterprise/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Cache/redisEnterprise', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/cache/redis/README.md b/modules/cache/redis/README.md
index 45e6ec422f..33f02d5c1f 100644
--- a/modules/cache/redis/README.md
+++ b/modules/cache/redis/README.md
@@ -473,7 +473,7 @@ module redis 'br:bicep/modules/cache.redis:1.0.0' = {
| [`redisVersion`](#parameter-redisversion) | string | Redis version. Only major version will be used in PUT/PATCH request with current valid values: (4, 6). |
| [`replicasPerMaster`](#parameter-replicaspermaster) | int | The number of replicas to be created per primary. |
| [`replicasPerPrimary`](#parameter-replicasperprimary) | int | The number of replicas to be created per primary. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`shardCount`](#parameter-shardcount) | int | The number of shards to be created on a Premium Cluster Cache. |
| [`skuName`](#parameter-skuname) | string | The type of Redis cache to deploy. |
| [`staticIP`](#parameter-staticip) | string | Static IP address. Optionally, may be specified when deploying a Redis cache inside an existing Azure Virtual Network; auto assigned by default. |
@@ -732,7 +732,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -884,7 +884,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -962,7 +962,7 @@ The number of replicas to be created per primary.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -975,7 +975,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1023,7 +1023,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/cache/redis/main.json b/modules/cache/redis/main.json
index f05edb97ec..90b5617b8a 100644
--- a/modules/cache/redis/main.json
+++ b/modules/cache/redis/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "7671125906841819197"
+ "templateHash": "10455754336377427456"
},
"name": "Redis Cache",
"description": "This module deploys a Redis Cache.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -274,7 +274,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -432,7 +432,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -707,7 +707,7 @@
"scope": "[format('Microsoft.Cache/redis/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Cache/redis', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/cdn/profile/README.md b/modules/cdn/profile/README.md
index 47cbe6ed82..81efa1a9e1 100644
--- a/modules/cdn/profile/README.md
+++ b/modules/cdn/profile/README.md
@@ -105,7 +105,17 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
ruleSets: [
@@ -221,7 +231,17 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -315,7 +335,17 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
}
@@ -394,7 +424,17 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
}
@@ -459,13 +499,6 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
name: 'myCustomLockName'
}
originResponseTimeoutSeconds: 60
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
}
}
```
@@ -536,15 +569,6 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
},
"originResponseTimeoutSeconds": {
"value": 60
- },
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
}
}
}
@@ -581,7 +605,7 @@ module profile 'br:bicep/modules/cdn.profile:1.0.0' = {
| [`location`](#parameter-location) | string | Location for all Resources. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
| [`originResponseTimeoutSeconds`](#parameter-originresponsetimeoutseconds) | int | Send and receive timeout on forwarding request to the origin. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`ruleSets`](#parameter-rulesets) | array | Array of rule set objects. |
| [`secrets`](#parameter-secrets) | array | Array of secret objects. |
| [`tags`](#parameter-tags) | object | Endpoint tags. |
@@ -677,7 +701,7 @@ Array of origin group objects. Required if the afdEndpoints is specified.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -690,7 +714,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -738,7 +762,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/cdn/profile/main.json b/modules/cdn/profile/main.json
index e8a03d38c8..3b9850f2ef 100644
--- a/modules/cdn/profile/main.json
+++ b/modules/cdn/profile/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "17584746093289526242"
+ "templateHash": "9196888550176341860"
},
"name": "CDN Profiles",
"description": "This module deploys a CDN Profile.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -212,7 +212,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"enableDefaultTelemetry": {
@@ -289,7 +289,7 @@
"scope": "[format('Microsoft.Cdn/profiles/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Cdn/profiles', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/availability-set/README.md b/modules/compute/availability-set/README.md
index b78be7385e..7eb1754df5 100644
--- a/modules/compute/availability-set/README.md
+++ b/modules/compute/availability-set/README.md
@@ -104,7 +104,17 @@ module availabilitySet 'br:bicep/modules/compute.availability-set:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -150,7 +160,17 @@ module availabilitySet 'br:bicep/modules/compute.availability-set:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -190,13 +210,6 @@ module availabilitySet 'br:bicep/modules/compute.availability-set:1.0.0' = {
name: 'myCustomLockName'
}
proximityPlacementGroupResourceId: ''
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -235,15 +248,6 @@ module availabilitySet 'br:bicep/modules/compute.availability-set:1.0.0' = {
"proximityPlacementGroupResourceId": {
"value": ""
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -277,7 +281,7 @@ module availabilitySet 'br:bicep/modules/compute.availability-set:1.0.0' = {
| [`platformFaultDomainCount`](#parameter-platformfaultdomaincount) | int | The number of fault domains to use. |
| [`platformUpdateDomainCount`](#parameter-platformupdatedomaincount) | int | The number of update domains to use. |
| [`proximityPlacementGroupResourceId`](#parameter-proximityplacementgroupresourceid) | string | Resource ID of a proximity placement group. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`skuName`](#parameter-skuname) | string | SKU of the availability set.
- Use 'Aligned' for virtual machines with managed disks.- Use 'Classic' for virtual machines with unmanaged disks. |
| [`tags`](#parameter-tags) | object | Tags of the availability set resource. |
@@ -351,7 +355,7 @@ Resource ID of a proximity placement group.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -364,7 +368,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -412,7 +416,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/availability-set/main.json b/modules/compute/availability-set/main.json
index b95d3d6e5b..1785fba305 100644
--- a/modules/compute/availability-set/main.json
+++ b/modules/compute/availability-set/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "10273034762819706688"
+ "templateHash": "5227518019590396567"
},
"name": "Availability Sets",
"description": "This module deploys an Availability Set.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -156,7 +156,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -237,7 +237,7 @@
"scope": "[format('Microsoft.Compute/availabilitySets/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/availabilitySets', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/disk-encryption-set/README.md b/modules/compute/disk-encryption-set/README.md
index 024684795c..48783288cd 100644
--- a/modules/compute/disk-encryption-set/README.md
+++ b/modules/compute/disk-encryption-set/README.md
@@ -58,7 +58,17 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -109,7 +119,17 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -159,7 +179,17 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -215,7 +245,17 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -261,13 +301,6 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
''
]
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -316,15 +349,6 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
]
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -361,7 +385,7 @@ module diskEncryptionSet 'br:bicep/modules/compute.disk-encryption-set:1.0.0' =
| [`location`](#parameter-location) | string | Resource location. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
| [`managedIdentities`](#parameter-managedidentities) | object | The managed identity definition for this resource. At least one identity type is required. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`rotationToLatestKeyVersionEnabled`](#parameter-rotationtolatestkeyversionenabled) | bool | Set this flag to true to enable auto-updating of this disk encryption set to the latest key version. |
| [`tags`](#parameter-tags) | object | Tags of the disk encryption resource. |
@@ -486,7 +510,7 @@ The name of the disk encryption set that is being created.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -499,7 +523,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -547,7 +571,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/disk-encryption-set/main.json b/modules/compute/disk-encryption-set/main.json
index d55eee6014..dbd6c27c6b 100644
--- a/modules/compute/disk-encryption-set/main.json
+++ b/modules/compute/disk-encryption-set/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "2310785535465824906"
+ "templateHash": "3002808940290583221"
},
"name": "Disk Encryption Sets",
"description": "This module deploys a Disk Encryption Set.",
@@ -68,7 +68,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -203,7 +203,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -304,7 +304,7 @@
"scope": "[format('Microsoft.Compute/diskEncryptionSets/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/diskEncryptionSets', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/disk/README.md b/modules/compute/disk/README.md
index a2b245fd26..feef599a20 100644
--- a/modules/compute/disk/README.md
+++ b/modules/compute/disk/README.md
@@ -109,7 +109,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -155,7 +165,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -193,7 +213,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
sourceUri: ''
@@ -238,7 +268,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -294,7 +334,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -358,7 +408,17 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -404,13 +464,6 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
logicalSectorSize: 512
osType: 'Windows'
publicNetworkAccess: 'Enabled'
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -467,15 +520,6 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
"publicNetworkAccess": {
"value": "Enabled"
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -529,7 +573,7 @@ module disk 'br:bicep/modules/compute.disk:1.0.0' = {
| [`optimizedForFrequentAttach`](#parameter-optimizedforfrequentattach) | bool | Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another. This property should not be set for disks that are not detached and attached frequently as it causes the disks to not align with the fault domain of the virtual machine. |
| [`osType`](#parameter-ostype) | string | Sources of a disk creation. |
| [`publicNetworkAccess`](#parameter-publicnetworkaccess) | string | Policy for controlling export on the disk. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`securityDataUri`](#parameter-securitydatauri) | string | If create option is ImportSecure, this is the URI of a blob to be imported into VM guest state. |
| [`sourceResourceId`](#parameter-sourceresourceid) | string | If create option is Copy, this is the ARM ID of the source snapshot or disk. |
| [`sourceUri`](#parameter-sourceuri) | string | If create option is Import, this is the URI of a blob to be imported into a managed disk. |
@@ -750,7 +794,7 @@ Policy for controlling export on the disk.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -763,7 +807,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -811,7 +855,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/disk/main.json b/modules/compute/disk/main.json
index efff55288f..37e7361de7 100644
--- a/modules/compute/disk/main.json
+++ b/modules/compute/disk/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "13415296044159532527"
+ "templateHash": "8419179965275134660"
},
"name": "Compute Disks",
"description": "This module deploys a Compute Disk",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -325,7 +325,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -430,7 +430,7 @@
"scope": "[format('Microsoft.Compute/disks/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/disks', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/gallery/README.md b/modules/compute/gallery/README.md
index 5d352f0fb3..478eaa6765 100644
--- a/modules/compute/gallery/README.md
+++ b/modules/compute/gallery/README.md
@@ -222,7 +222,17 @@ module gallery 'br:bicep/modules/compute.gallery:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -386,7 +396,17 @@ module gallery 'br:bicep/modules/compute.gallery:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -542,13 +562,6 @@ module gallery 'br:bicep/modules/compute.gallery:1.0.0' = {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -705,15 +718,6 @@ module gallery 'br:bicep/modules/compute.gallery:1.0.0' = {
"name": "myCustomLockName"
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
diff --git a/modules/compute/gallery/application/main.json b/modules/compute/gallery/application/main.json
index ffc09df846..173a43d0c8 100644
--- a/modules/compute/gallery/application/main.json
+++ b/modules/compute/gallery/application/main.json
@@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
- "version": "0.22.6.54827",
- "templateHash": "4468420728204112478"
+ "version": "0.23.1.45101",
+ "templateHash": "13733131047823769084"
},
"name": "Compute Galleries Applications",
"description": "This module deploys an Azure Compute Gallery Application.",
@@ -235,7 +235,7 @@
"scope": "[format('Microsoft.Compute/galleries/{0}/applications/{1}', parameters('galleryName'), parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/galleries/applications', parameters('galleryName'), parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/gallery/image/main.json b/modules/compute/gallery/image/main.json
index 9c37688f70..966b22684c 100644
--- a/modules/compute/gallery/image/main.json
+++ b/modules/compute/gallery/image/main.json
@@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
- "version": "0.22.6.54827",
- "templateHash": "12640831453229356933"
+ "version": "0.23.1.45101",
+ "templateHash": "17846161223611480196"
},
"name": "Compute Galleries Image Definitions",
"description": "This module deploys an Azure Compute Gallery Image Definition.",
@@ -396,7 +396,7 @@
"scope": "[format('Microsoft.Compute/galleries/{0}/images/{1}', parameters('galleryName'), parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/galleries/images', parameters('galleryName'), parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/gallery/main.json b/modules/compute/gallery/main.json
index 988b6b53a7..44e5d0a6f9 100644
--- a/modules/compute/gallery/main.json
+++ b/modules/compute/gallery/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "8907363611903070816"
+ "templateHash": "15313131097423380423"
},
"name": "Azure Compute Galleries",
"description": "This module deploys an Azure Compute Gallery (formerly known as Shared Image Gallery).",
@@ -229,7 +229,7 @@
"scope": "[format('Microsoft.Compute/galleries/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/galleries', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -284,7 +284,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "8232745966352037801"
+ "templateHash": "13733131047823769084"
},
"name": "Compute Galleries Applications",
"description": "This module deploys an Azure Compute Gallery Application.",
@@ -513,7 +513,7 @@
"scope": "[format('Microsoft.Compute/galleries/{0}/applications/{1}', parameters('galleryName'), parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/galleries/applications', parameters('galleryName'), parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -618,7 +618,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "3383509605637851908"
+ "templateHash": "17846161223611480196"
},
"name": "Compute Galleries Image Definitions",
"description": "This module deploys an Azure Compute Gallery Image Definition.",
@@ -1008,7 +1008,7 @@
"scope": "[format('Microsoft.Compute/galleries/{0}/images/{1}', parameters('galleryName'), parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/galleries/images', parameters('galleryName'), parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/image/README.md b/modules/compute/image/README.md
index f642c6f3c1..8b7d4eb4db 100644
--- a/modules/compute/image/README.md
+++ b/modules/compute/image/README.md
@@ -57,7 +57,17 @@ module image 'br:bicep/modules/compute.image:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -119,7 +129,17 @@ module image 'br:bicep/modules/compute.image:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -165,13 +185,6 @@ module image 'br:bicep/modules/compute.image:1.0.0' = {
enableDefaultTelemetry: ''
hyperVGeneration: 'V1'
osState: 'Generalized'
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
tagA: 'You\'re it'
@@ -226,15 +239,6 @@ module image 'br:bicep/modules/compute.image:1.0.0' = {
"osState": {
"value": "Generalized"
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"hidden-title": "This is visible in the resource name",
@@ -278,7 +282,7 @@ module image 'br:bicep/modules/compute.image:1.0.0' = {
| [`osAccountType`](#parameter-osaccounttype) | string | Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk. - Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS. |
| [`osDiskCaching`](#parameter-osdiskcaching) | string | Specifies the caching requirements. Default: None for Standard storage. ReadOnly for Premium storage. - None, ReadOnly, ReadWrite. |
| [`osState`](#parameter-osstate) | string | The OS State. For managed images, use Generalized. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`snapshotResourceId`](#parameter-snapshotresourceid) | string | The snapshot resource ID. |
| [`sourceVirtualMachineResourceId`](#parameter-sourcevirtualmachineresourceid) | string | The source virtual machine from which Image is created. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
@@ -386,7 +390,7 @@ This property allows you to specify the type of the OS that is included in the d
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -399,7 +403,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -447,7 +451,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/image/main.json b/modules/compute/image/main.json
index d559e8bc9b..b3099a9dec 100644
--- a/modules/compute/image/main.json
+++ b/modules/compute/image/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "18345867974770384550"
+ "templateHash": "6473488393825855372"
},
"name": "Images",
"description": "This module deploys a Compute Image.",
@@ -21,7 +21,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -135,7 +135,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -274,7 +274,7 @@
"scope": "[format('Microsoft.Compute/images/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/images', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/proximity-placement-group/README.md b/modules/compute/proximity-placement-group/README.md
index a5861c05f9..b78e4a52f2 100644
--- a/modules/compute/proximity-placement-group/README.md
+++ b/modules/compute/proximity-placement-group/README.md
@@ -115,7 +115,17 @@ module proximityPlacementGroup 'br:bicep/modules/compute.proximity-placement-gro
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -178,7 +188,17 @@ module proximityPlacementGroup 'br:bicep/modules/compute.proximity-placement-gro
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -237,13 +257,6 @@ module proximityPlacementGroup 'br:bicep/modules/compute.proximity-placement-gro
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
'hidden-title': 'This is visible in the resource name'
TagA: 'Would you kindly...'
@@ -299,15 +312,6 @@ module proximityPlacementGroup 'br:bicep/modules/compute.proximity-placement-gro
"name": "myCustomLockName"
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"hidden-title": "This is visible in the resource name",
@@ -348,7 +352,7 @@ module proximityPlacementGroup 'br:bicep/modules/compute.proximity-placement-gro
| [`intent`](#parameter-intent) | object | Specifies the user intent of the proximity placement group. |
| [`location`](#parameter-location) | string | Resource location. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`tags`](#parameter-tags) | object | Tags of the proximity placement group resource. |
| [`type`](#parameter-type) | string | Specifies the type of the proximity placement group. |
| [`zones`](#parameter-zones) | array | Specifies the Availability Zone where virtual machine, virtual machine scale set or availability set associated with the proximity placement group can be created. |
@@ -416,7 +420,7 @@ The name of the proximity placement group that is being created.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -429,7 +433,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -477,7 +481,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/proximity-placement-group/main.json b/modules/compute/proximity-placement-group/main.json
index cf403363a2..6d3f4e9580 100644
--- a/modules/compute/proximity-placement-group/main.json
+++ b/modules/compute/proximity-placement-group/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "2277527270184526895"
+ "templateHash": "1474026739792714088"
},
"name": "Proximity Placement Groups",
"description": "This module deploys a Proximity Placement Group.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -139,7 +139,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -239,7 +239,7 @@
"scope": "[format('Microsoft.Compute/proximityPlacementGroups/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/proximityPlacementGroups', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/virtual-machine-scale-set/README.md b/modules/compute/virtual-machine-scale-set/README.md
index 05c8624341..5e27d6d457 100644
--- a/modules/compute/virtual-machine-scale-set/README.md
+++ b/modules/compute/virtual-machine-scale-set/README.md
@@ -1267,7 +1267,7 @@ module virtualMachineScaleSet 'br:bicep/modules/compute.virtual-machine-scale-se
| [`provisionVMAgent`](#parameter-provisionvmagent) | bool | Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later. |
| [`proximityPlacementGroupResourceId`](#parameter-proximityplacementgroupresourceid) | string | Resource ID of a proximity placement group. |
| [`publicKeys`](#parameter-publickeys) | array | The list of SSH public keys used to authenticate with linux based VMs. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`sasTokenValidityLength`](#parameter-sastokenvaliditylength) | string | SAS token validity length to use to download files from storage accounts. Usage: 'PT8H' - valid for 8 hours; 'P5D' - valid for 5 days; 'P1Y' - valid for 1 year. When not provided, the SAS token will be valid for 8 hours. |
| [`scaleInPolicy`](#parameter-scaleinpolicy) | object | Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in. |
| [`scaleSetFaultDomain`](#parameter-scalesetfaultdomain) | int | Fault Domain count for each placement group. |
@@ -1808,7 +1808,7 @@ The list of SSH public keys used to authenticate with linux based VMs.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1821,7 +1821,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1869,7 +1869,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/virtual-machine-scale-set/main.json b/modules/compute/virtual-machine-scale-set/main.json
index 1bde1e509e..95643ce69d 100644
--- a/modules/compute/virtual-machine-scale-set/main.json
+++ b/modules/compute/virtual-machine-scale-set/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "13725426990469147977"
+ "templateHash": "6314533557974797448"
},
"name": "Virtual Machine Scale Sets",
"description": "This module deploys a Virtual Machine Scale Set.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -306,7 +306,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"scaleSetFaultDomain": {
@@ -974,7 +974,7 @@
"scope": "[format('Microsoft.Compute/virtualMachineScaleSets/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/virtualMachineScaleSets', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/compute/virtual-machine/README.md b/modules/compute/virtual-machine/README.md
index dfe8bb4ccc..3f0e0fce12 100644
--- a/modules/compute/virtual-machine/README.md
+++ b/modules/compute/virtual-machine/README.md
@@ -271,7 +271,17 @@ module virtualMachine 'br:bicep/modules/compute.virtual-machine:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -578,7 +588,17 @@ module virtualMachine 'br:bicep/modules/compute.virtual-machine:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1164,7 +1184,17 @@ module virtualMachine 'br:bicep/modules/compute.virtual-machine:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -1491,7 +1521,17 @@ module virtualMachine 'br:bicep/modules/compute.virtual-machine:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1983,7 +2023,7 @@ module virtualMachine 'br:bicep/modules/compute.virtual-machine:1.0.0' = {
| [`provisionVMAgent`](#parameter-provisionvmagent) | bool | Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later. |
| [`proximityPlacementGroupResourceId`](#parameter-proximityplacementgroupresourceid) | string | Resource ID of a proximity placement group. |
| [`publicKeys`](#parameter-publickeys) | array | The list of SSH public keys used to authenticate with linux based VMs. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`sasTokenValidityLength`](#parameter-sastokenvaliditylength) | string | SAS token validity length to use to download files from storage accounts. Usage: 'PT8H' - valid for 8 hours; 'P5D' - valid for 5 days; 'P1Y' - valid for 1 year. When not provided, the SAS token will be valid for 8 hours. |
| [`secureBootEnabled`](#parameter-securebootenabled) | bool | Specifies whether secure boot should be enabled on the virtual machine. This parameter is part of the UefiSettings. SecurityType should be set to TrustedLaunch to enable UefiSettings. |
| [`securityType`](#parameter-securitytype) | string | Specifies the SecurityType of the virtual machine. It is set as TrustedLaunch to enable UefiSettings. |
@@ -2509,7 +2549,7 @@ The list of SSH public keys used to authenticate with linux based VMs.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -2522,7 +2562,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -2570,7 +2610,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/compute/virtual-machine/main.json b/modules/compute/virtual-machine/main.json
index 601f4cfe90..cb696cbdcc 100644
--- a/modules/compute/virtual-machine/main.json
+++ b/modules/compute/virtual-machine/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "10032149803242831111"
+ "templateHash": "89939038941992549"
},
"name": "Virtual Machines",
"description": "This module deploys a Virtual Machine with one or multiple NICs and optionally one or multiple public IPs.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -602,7 +602,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -938,7 +938,7 @@
"scope": "[format('Microsoft.Compute/virtualMachines/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Compute/virtualMachines', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -1001,7 +1001,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "10451257297733630828"
+ "templateHash": "11123708724712871468"
}
},
"definitions": {
@@ -1144,7 +1144,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -1251,7 +1251,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
}
},
diff --git a/modules/container-registry/registry/README.md b/modules/container-registry/registry/README.md
index 9d068e56b9..546708177b 100644
--- a/modules/container-registry/registry/README.md
+++ b/modules/container-registry/registry/README.md
@@ -261,7 +261,17 @@ module registry 'br:bicep/modules/container-registry.registry:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
softDeletePolicyDays: 7
@@ -396,7 +406,17 @@ module registry 'br:bicep/modules/container-registry.registry:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -602,13 +622,6 @@ module registry 'br:bicep/modules/container-registry.registry:1.0.0' = {
name: ''
}
]
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
softDeletePolicyDays: 7
softDeletePolicyStatus: 'disabled'
tags: {
@@ -736,15 +749,6 @@ module registry 'br:bicep/modules/container-registry.registry:1.0.0' = {
}
]
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"softDeletePolicyDays": {
"value": 7
},
@@ -811,7 +815,7 @@ module registry 'br:bicep/modules/container-registry.registry:1.0.0' = {
| [`replications`](#parameter-replications) | array | All replications to create. |
| [`retentionPolicyDays`](#parameter-retentionpolicydays) | int | The number of days to retain an untagged manifest after which it gets purged. |
| [`retentionPolicyStatus`](#parameter-retentionpolicystatus) | string | The value that indicates whether the retention policy is enabled or not. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`softDeletePolicyDays`](#parameter-softdeletepolicydays) | int | The number of days after which a soft-deleted item is permanently deleted. |
| [`softDeletePolicyStatus`](#parameter-softdeletepolicystatus) | string | Soft Delete policy status. Default is disabled. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
@@ -1175,7 +1179,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1327,7 +1331,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1412,7 +1416,7 @@ The value that indicates whether the retention policy is enabled or not.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1425,7 +1429,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1473,7 +1477,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/container-registry/registry/main.json b/modules/container-registry/registry/main.json
index 40951db6fa..39a04d3a66 100644
--- a/modules/container-registry/registry/main.json
+++ b/modules/container-registry/registry/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "601165591390231173"
+ "templateHash": "6862455028328660677"
},
"name": "Azure Container Registries (ACR)",
"description": "This module deploys an Azure Container Registry (ACR).",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -274,7 +274,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -467,7 +467,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"acrSku": {
@@ -847,7 +847,7 @@
"scope": "[format('Microsoft.ContainerRegistry/registries/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.ContainerRegistry/registries', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/container-service/managed-cluster/README.md b/modules/container-service/managed-cluster/README.md
index fe444ca1da..dd804e181f 100644
--- a/modules/container-service/managed-cluster/README.md
+++ b/modules/container-service/managed-cluster/README.md
@@ -21,7 +21,7 @@ This module deploys an Azure Kubernetes Service (AKS) Managed Cluster.
| `Microsoft.ContainerService/managedClusters/agentPools` | [2023-07-02-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.ContainerService/2023-07-02-preview/managedClusters/agentPools) |
| `Microsoft.Insights/diagnosticSettings` | [2021-05-01-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.Insights/2021-05-01-preview/diagnosticSettings) |
| `Microsoft.KubernetesConfiguration/extensions` | [2022-03-01](https://learn.microsoft.com/en-us/azure/templates/Microsoft.KubernetesConfiguration/2022-03-01/extensions) |
-| `Microsoft.KubernetesConfiguration/fluxConfigurations` | [2022-03-01](https://learn.microsoft.com/en-us/azure/templates/Microsoft.KubernetesConfiguration/2022-03-01/fluxConfigurations) |
+| `Microsoft.KubernetesConfiguration/fluxConfigurations` | [2023-05-01](https://learn.microsoft.com/en-us/azure/templates/Microsoft.KubernetesConfiguration/fluxConfigurations) |
## Usage examples
@@ -234,7 +234,17 @@ module managedCluster 'br:bicep/modules/container-service.managed-cluster:1.0.0'
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -501,7 +511,17 @@ module managedCluster 'br:bicep/modules/container-service.managed-cluster:1.0.0'
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -701,7 +721,17 @@ module managedCluster 'br:bicep/modules/container-service.managed-cluster:1.0.0'
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -838,7 +868,17 @@ module managedCluster 'br:bicep/modules/container-service.managed-cluster:1.0.0'
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1230,7 +1270,7 @@ module managedCluster 'br:bicep/modules/container-service.managed-cluster:1.0.0'
| [`podIdentityProfileUserAssignedIdentities`](#parameter-podidentityprofileuserassignedidentities) | array | The pod identities to use in the cluster. |
| [`podIdentityProfileUserAssignedIdentityExceptions`](#parameter-podidentityprofileuserassignedidentityexceptions) | array | The pod identity exceptions to allow. |
| [`privateDNSZone`](#parameter-privatednszone) | string | Private DNS Zone configuration. Set to 'system' and AKS will create a private DNS zone in the node resource group. Set to '' to disable private DNS Zone creation and use public DNS. Supply the resource ID here of an existing Private DNS zone to use an existing zone. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`serviceCidr`](#parameter-servicecidr) | string | A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. |
| [`skuTier`](#parameter-skutier) | string | Tier of a managed cluster SKU. - Free or Standard. |
| [`sshPublicKey`](#parameter-sshpublickey) | string | Specifies the SSH RSA public key string for the Linux nodes. |
@@ -2116,7 +2156,7 @@ Private DNS Zone configuration. Set to 'system' and AKS will create a private DN
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -2129,7 +2169,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -2177,7 +2217,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/container-service/managed-cluster/main.json b/modules/container-service/managed-cluster/main.json
index e6da45a8e2..ae0399022d 100644
--- a/modules/container-service/managed-cluster/main.json
+++ b/modules/container-service/managed-cluster/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "4013697482173328246"
+ "templateHash": "8572950365871080651"
},
"name": "Azure Kubernetes Service (AKS) Managed Clusters",
"description": "This module deploys an Azure Kubernetes Service (AKS) Managed Cluster.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -923,7 +923,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"lock": {
@@ -1249,7 +1249,7 @@
"scope": "[format('Microsoft.ContainerService/managedClusters/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.ContainerService/managedClusters', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -1804,7 +1804,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "18265527122738367400"
+ "templateHash": "548642834195454661"
},
"name": "Kubernetes Configuration Extensions",
"description": "This module deploys a Kubernetes Configuration Extension.",
@@ -1967,7 +1967,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "8985718648814286209"
+ "templateHash": "10031296768791737313"
},
"name": "Kubernetes Configuration Flux Configurations",
"description": "This module deploys a Kubernetes Configuration Flux Configuration.",
@@ -2023,9 +2023,8 @@
},
"kustomizations": {
"type": "object",
- "defaultValue": {},
"metadata": {
- "description": "Optional. Array of kustomizations used to reconcile the artifact pulled by the source type on the cluster."
+ "description": "Required. Array of kustomizations used to reconcile the artifact pulled by the source type on the cluster."
}
},
"namespace": {
@@ -2079,14 +2078,14 @@
},
{
"type": "Microsoft.KubernetesConfiguration/fluxConfigurations",
- "apiVersion": "2022-03-01",
+ "apiVersion": "2023-05-01",
"scope": "[format('Microsoft.ContainerService/managedClusters/{0}', parameters('clusterName'))]",
"name": "[parameters('name')]",
"properties": {
"bucket": "[if(not(empty(parameters('bucket'))), parameters('bucket'), null())]",
"configurationProtectedSettings": "[if(not(empty(parameters('configurationProtectedSettings'))), parameters('configurationProtectedSettings'), createObject())]",
"gitRepository": "[if(not(empty(parameters('gitRepository'))), parameters('gitRepository'), null())]",
- "kustomizations": "[if(not(empty(parameters('kustomizations'))), parameters('kustomizations'), createObject())]",
+ "kustomizations": "[parameters('kustomizations')]",
"namespace": "[parameters('namespace')]",
"scope": "[parameters('scope')]",
"sourceKind": "[parameters('sourceKind')]",
diff --git a/modules/data-factory/factory/README.md b/modules/data-factory/factory/README.md
index 400baf8e89..c04ef52978 100644
--- a/modules/data-factory/factory/README.md
+++ b/modules/data-factory/factory/README.md
@@ -181,7 +181,17 @@ module factory 'br:bicep/modules/data-factory.factory:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -313,7 +323,17 @@ module factory 'br:bicep/modules/data-factory.factory:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -423,13 +443,6 @@ module factory 'br:bicep/modules/data-factory.factory:1.0.0' = {
}
}
]
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -554,15 +567,6 @@ module factory 'br:bicep/modules/data-factory.factory:1.0.0' = {
}
]
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -611,7 +615,7 @@ module factory 'br:bicep/modules/data-factory.factory:1.0.0' = {
| [`managedVirtualNetworkName`](#parameter-managedvirtualnetworkname) | string | The name of the Managed Virtual Network. |
| [`privateEndpoints`](#parameter-privateendpoints) | array | Configuration Details for private endpoints. For security reasons, it is recommended to use private endpoints whenever possible. |
| [`publicNetworkAccess`](#parameter-publicnetworkaccess) | string | Whether or not public network access is allowed for this resource. For security reasons it should be disabled. If not specified, it will be disabled by default if private endpoints are set. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
### Parameter: `customerManagedKey`
@@ -955,7 +959,7 @@ Configuration Details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1107,7 +1111,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1150,7 +1154,7 @@ Whether or not public network access is allowed for this resource. For security
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1163,7 +1167,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1211,7 +1215,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/data-factory/factory/main.json b/modules/data-factory/factory/main.json
index e57d5fc9a6..2c237602dc 100644
--- a/modules/data-factory/factory/main.json
+++ b/modules/data-factory/factory/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "1174493614082908540"
+ "templateHash": "13040115678809105758"
},
"name": "Data Factories",
"description": "This module deploys a Data Factory.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -274,7 +274,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -591,7 +591,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -732,7 +732,7 @@
"scope": "[format('Microsoft.DataFactory/factories/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DataFactory/factories', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/data-protection/backup-vault/README.md b/modules/data-protection/backup-vault/README.md
index a7771b8b43..6ade55fb30 100644
--- a/modules/data-protection/backup-vault/README.md
+++ b/modules/data-protection/backup-vault/README.md
@@ -171,7 +171,17 @@ module backupVault 'br:bicep/modules/data-protection.backup-vault:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -286,7 +296,17 @@ module backupVault 'br:bicep/modules/data-protection.backup-vault:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -391,13 +411,6 @@ module backupVault 'br:bicep/modules/data-protection.backup-vault:1.0.0' = {
managedIdentities: {
systemAssigned: true
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -505,15 +518,6 @@ module backupVault 'br:bicep/modules/data-protection.backup-vault:1.0.0' = {
"systemAssigned": true
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -549,7 +553,7 @@ module backupVault 'br:bicep/modules/data-protection.backup-vault:1.0.0' = {
| [`location`](#parameter-location) | string | Location for all resources. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
| [`managedIdentities`](#parameter-managedidentities) | object | The managed identity definition for this resource. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`securitySettings`](#parameter-securitysettings) | object | Security settings for the backup vault. |
| [`tags`](#parameter-tags) | object | Tags of the Recovery Service Vault resource. |
| [`type`](#parameter-type) | string | The vault redundancy level to use. |
@@ -664,7 +668,7 @@ Name of the Backup Vault.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -677,7 +681,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -725,7 +729,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/data-protection/backup-vault/main.json b/modules/data-protection/backup-vault/main.json
index 8b0c13673f..487583bb38 100644
--- a/modules/data-protection/backup-vault/main.json
+++ b/modules/data-protection/backup-vault/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "8279564580875716128"
+ "templateHash": "11737453267233569722"
},
"name": "Data Protection Backup Vaults",
"description": "This module deploys a Data Protection Backup Vault.",
@@ -59,7 +59,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -142,7 +142,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"lock": {
@@ -297,7 +297,7 @@
"scope": "[format('Microsoft.DataProtection/backupVaults/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DataProtection/backupVaults', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/databricks/access-connector/README.md b/modules/databricks/access-connector/README.md
index 56b4202f0c..02ebe4193a 100644
--- a/modules/databricks/access-connector/README.md
+++ b/modules/databricks/access-connector/README.md
@@ -110,7 +110,17 @@ module accessConnector 'br:bicep/modules/databricks.access-connector:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -164,7 +174,17 @@ module accessConnector 'br:bicep/modules/databricks.access-connector:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -210,13 +230,6 @@ module accessConnector 'br:bicep/modules/databricks.access-connector:1.0.0' = {
''
]
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -263,15 +276,6 @@ module accessConnector 'br:bicep/modules/databricks.access-connector:1.0.0' = {
]
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
@@ -303,7 +307,7 @@ module accessConnector 'br:bicep/modules/databricks.access-connector:1.0.0' = {
| [`location`](#parameter-location) | string | Location for all Resources. |
| [`lock`](#parameter-lock) | object | The lock settings of the service. |
| [`managedIdentities`](#parameter-managedidentities) | object | The managed identity definition for this resource. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
### Parameter: `enableDefaultTelemetry`
@@ -381,7 +385,7 @@ The name of the Azure Databricks access connector to create.
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -394,7 +398,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -442,7 +446,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/databricks/access-connector/main.json b/modules/databricks/access-connector/main.json
index fbb23e6cc8..dce724ef4b 100644
--- a/modules/databricks/access-connector/main.json
+++ b/modules/databricks/access-connector/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "6639727250601518153"
+ "templateHash": "3245638906962144809"
},
"name": "Azure Databricks Access Connectors",
"description": "This module deploys an Azure Databricks Access Connector.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -152,7 +152,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"lock": {
@@ -234,7 +234,7 @@
"scope": "[format('Microsoft.Databricks/accessConnectors/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Databricks/accessConnectors', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/databricks/workspace/README.md b/modules/databricks/workspace/README.md
index fcb2e26a86..a41556f10d 100644
--- a/modules/databricks/workspace/README.md
+++ b/modules/databricks/workspace/README.md
@@ -160,7 +160,17 @@ module workspace 'br:bicep/modules/databricks.workspace:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
skuName: 'premium'
@@ -298,7 +308,17 @@ module workspace 'br:bicep/modules/databricks.workspace:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -402,13 +422,6 @@ module workspace 'br:bicep/modules/databricks.workspace:1.0.0' = {
publicNetworkAccess: 'Disabled'
requiredNsgRules: 'NoAzureDatabricksRules'
requireInfrastructureEncryption: true
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
skuName: 'premium'
storageAccountName: 'sadwwaf001'
storageAccountSkuName: 'Standard_ZRS'
@@ -539,15 +552,6 @@ module workspace 'br:bicep/modules/databricks.workspace:1.0.0' = {
"requireInfrastructureEncryption": {
"value": true
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"skuName": {
"value": "premium"
},
@@ -608,7 +612,7 @@ module workspace 'br:bicep/modules/databricks.workspace:1.0.0' = {
| [`publicNetworkAccess`](#parameter-publicnetworkaccess) | string | The network access type for accessing workspace. Set value to disabled to access workspace only via private link. |
| [`requiredNsgRules`](#parameter-requirednsgrules) | string | Gets or sets a value indicating whether data plane (clusters) to control plane communication happen over private endpoint. |
| [`requireInfrastructureEncryption`](#parameter-requireinfrastructureencryption) | bool | A boolean indicating whether or not the DBFS root file system will be enabled with secondary layer of encryption with platform managed keys for data at rest. |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`skuName`](#parameter-skuname) | string | The pricing tier of workspace. |
| [`storageAccountName`](#parameter-storageaccountname) | string | Default DBFS storage account name. |
| [`storageAccountSkuName`](#parameter-storageaccountskuname) | string | Storage account SKU name. |
@@ -939,7 +943,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1091,7 +1095,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1161,7 +1165,7 @@ A boolean indicating whether or not the DBFS root file system will be enabled wi
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -1174,7 +1178,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1222,7 +1226,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/databricks/workspace/main.json b/modules/databricks/workspace/main.json
index 390fcb0f0c..47a19aa465 100644
--- a/modules/databricks/workspace/main.json
+++ b/modules/databricks/workspace/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "450554632364437388"
+ "templateHash": "17678709403904494263"
},
"name": "Azure Databricks Workspaces",
"description": "This module deploys an Azure Databricks Workspace.",
@@ -46,7 +46,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -251,7 +251,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -475,7 +475,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"diagnosticSettings": {
@@ -777,7 +777,7 @@
"scope": "[format('Microsoft.Databricks/workspaces/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.Databricks/workspaces', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/db-for-my-sql/flexible-server/README.md b/modules/db-for-my-sql/flexible-server/README.md
index e23b4de351..4d655aab35 100644
--- a/modules/db-for-my-sql/flexible-server/README.md
+++ b/modules/db-for-my-sql/flexible-server/README.md
@@ -160,7 +160,17 @@ module flexibleServer 'br:bicep/modules/db-for-my-sql.flexible-server:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
storageAutoGrow: 'Enabled'
@@ -273,7 +283,17 @@ module flexibleServer 'br:bicep/modules/db-for-my-sql.flexible-server:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1044,7 +1064,7 @@ Array of role assignment objects that contain the "roleDefinitionIdOrName" and "
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1092,7 +1112,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/db-for-my-sql/flexible-server/main.json b/modules/db-for-my-sql/flexible-server/main.json
index a4ccada7bc..5d63ee48ca 100644
--- a/modules/db-for-my-sql/flexible-server/main.json
+++ b/modules/db-for-my-sql/flexible-server/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "4826973555855760872"
+ "templateHash": "13509958318011769977"
},
"name": "DBforMySQL Flexible Servers",
"description": "This module deploys a DBforMySQL Flexible Server.",
@@ -61,7 +61,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -698,7 +698,7 @@
"scope": "[format('Microsoft.DBforMySQL/flexibleServers/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DBforMySQL/flexibleServers', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/db-for-postgre-sql/flexible-server/README.md b/modules/db-for-postgre-sql/flexible-server/README.md
index bfa29ed68f..30ebf9dba0 100644
--- a/modules/db-for-postgre-sql/flexible-server/README.md
+++ b/modules/db-for-postgre-sql/flexible-server/README.md
@@ -543,7 +543,7 @@ module flexibleServer 'br:bicep/modules/db-for-postgre-sql.flexible-server:1.0.0
| [`maintenanceWindow`](#parameter-maintenancewindow) | object | Properties for the maintenence window. If provided, "customWindow" property must exist and set to "Enabled". |
| [`passwordAuth`](#parameter-passwordauth) | string | If Enabled, password authentication is enabled. |
| [`privateDnsZoneArmResourceId`](#parameter-privatednszonearmresourceid) | string | Private dns zone arm resource ID. Used when the desired connectivity mode is "Private Access" and required when "delegatedSubnetResourceId" is used. The Private DNS Zone must be lined to the Virtual Network referenced in "delegatedSubnetResourceId". |
-| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-roleassignments) | array | Array of role assignments to create. |
| [`storageSizeGB`](#parameter-storagesizegb) | int | Max storage allowed for a server. |
| [`tags`](#parameter-tags) | object | Tags of the resource. |
| [`tenantId`](#parameter-tenantid) | string | Tenant id of the server. |
@@ -939,7 +939,7 @@ Private dns zone arm resource ID. Used when the desired connectivity mode is "Pr
### Parameter: `roleAssignments`
-Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Array of role assignments to create.
- Required: No
- Type: array
@@ -952,7 +952,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1000,7 +1000,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/db-for-postgre-sql/flexible-server/main.json b/modules/db-for-postgre-sql/flexible-server/main.json
index 6a905a8e17..25dcb199a2 100644
--- a/modules/db-for-postgre-sql/flexible-server/main.json
+++ b/modules/db-for-postgre-sql/flexible-server/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "13706520211272319877"
+ "templateHash": "10058986332950368920"
},
"name": "DBforPostgreSQL Flexible Servers",
"description": "This module deploys a DBforPostgreSQL Flexible Server.",
@@ -61,7 +61,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -506,7 +506,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -655,7 +655,7 @@
"scope": "[format('Microsoft.DBforPostgreSQL/flexibleServers/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DBforPostgreSQL/flexibleServers', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/desktop-virtualization/application-group/README.md b/modules/desktop-virtualization/application-group/README.md
index 22947a3ef1..0c3b211b08 100644
--- a/modules/desktop-virtualization/application-group/README.md
+++ b/modules/desktop-virtualization/application-group/README.md
@@ -145,7 +145,17 @@ module applicationGroup 'br:bicep/modules/desktop-virtualization.application-gro
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -234,7 +244,17 @@ module applicationGroup 'br:bicep/modules/desktop-virtualization.application-gro
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -305,13 +325,6 @@ module applicationGroup 'br:bicep/modules/desktop-virtualization.application-gro
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -393,15 +406,6 @@ module applicationGroup 'br:bicep/modules/desktop-virtualization.application-gro
"name": "myCustomLockName"
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
diff --git a/modules/desktop-virtualization/application-group/main.json b/modules/desktop-virtualization/application-group/main.json
index 50f7154d0c..f94e06adf4 100644
--- a/modules/desktop-virtualization/application-group/main.json
+++ b/modules/desktop-virtualization/application-group/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "10392643216669479103"
+ "templateHash": "1467950374107623921"
},
"name": "Azure Virtual Desktop (AVD) Application Groups",
"description": "This module deploys an Azure Virtual Desktop (AVD) Application Group.",
@@ -385,7 +385,7 @@
"scope": "[format('Microsoft.DesktopVirtualization/applicationGroups/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DesktopVirtualization/applicationGroups', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/desktop-virtualization/host-pool/README.md b/modules/desktop-virtualization/host-pool/README.md
index 37af321393..5e3c70c4fb 100644
--- a/modules/desktop-virtualization/host-pool/README.md
+++ b/modules/desktop-virtualization/host-pool/README.md
@@ -135,7 +135,17 @@ module hostPool 'br:bicep/modules/desktop-virtualization.host-pool:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -245,7 +255,17 @@ module hostPool 'br:bicep/modules/desktop-virtualization.host-pool:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -337,13 +357,6 @@ module hostPool 'br:bicep/modules/desktop-virtualization.host-pool:1.0.0' = {
}
maxSessionLimit: 99999
personalDesktopAssignmentType: 'Automatic'
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -446,15 +459,6 @@ module hostPool 'br:bicep/modules/desktop-virtualization.host-pool:1.0.0' = {
"personalDesktopAssignmentType": {
"value": "Automatic"
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
diff --git a/modules/desktop-virtualization/host-pool/main.json b/modules/desktop-virtualization/host-pool/main.json
index 9d02aba679..3e319b32f0 100644
--- a/modules/desktop-virtualization/host-pool/main.json
+++ b/modules/desktop-virtualization/host-pool/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "14800561756618420199"
+ "templateHash": "14589445999747413105"
},
"name": "Azure Virtual Desktop (AVD) Host Pools",
"description": "This module deploys an Azure Virtual Desktop (AVD) Host Pool.",
@@ -583,7 +583,7 @@
"scope": "[format('Microsoft.DesktopVirtualization/hostPools/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DesktopVirtualization/hostPools', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/desktop-virtualization/scaling-plan/README.md b/modules/desktop-virtualization/scaling-plan/README.md
index 96f2d667e4..6511a66cc7 100644
--- a/modules/desktop-virtualization/scaling-plan/README.md
+++ b/modules/desktop-virtualization/scaling-plan/README.md
@@ -111,7 +111,17 @@ module scalingPlan 'br:bicep/modules/desktop-virtualization.scaling-plan:1.0.0'
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
schedules: [
@@ -208,7 +218,17 @@ module scalingPlan 'br:bicep/modules/desktop-virtualization.scaling-plan:1.0.0'
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -297,13 +317,6 @@ module scalingPlan 'br:bicep/modules/desktop-virtualization.scaling-plan:1.0.0'
enableDefaultTelemetry: ''
friendlyName: 'My Scaling Plan'
hostPoolType: 'Pooled'
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
schedules: [
{
daysOfWeek: [
@@ -393,15 +406,6 @@ module scalingPlan 'br:bicep/modules/desktop-virtualization.scaling-plan:1.0.0'
"hostPoolType": {
"value": "Pooled"
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"schedules": {
"value": [
{
diff --git a/modules/desktop-virtualization/scaling-plan/main.json b/modules/desktop-virtualization/scaling-plan/main.json
index aee281bcd0..8a5a0b2063 100644
--- a/modules/desktop-virtualization/scaling-plan/main.json
+++ b/modules/desktop-virtualization/scaling-plan/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "16044277949435808798"
+ "templateHash": "16049673590929985376"
},
"name": "Azure Virtual Desktop (AVD) Scaling Plans",
"description": "This module deploys an Azure Virtual Desktop (AVD) Scaling Plan.",
@@ -387,7 +387,7 @@
"scope": "[format('Microsoft.DesktopVirtualization/scalingPlans/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DesktopVirtualization/scalingPlans', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/desktop-virtualization/workspace/README.md b/modules/desktop-virtualization/workspace/README.md
index 641cdb7674..f363e71c1c 100644
--- a/modules/desktop-virtualization/workspace/README.md
+++ b/modules/desktop-virtualization/workspace/README.md
@@ -119,7 +119,17 @@ module workspace 'br:bicep/modules/desktop-virtualization.workspace:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -187,7 +197,17 @@ module workspace 'br:bicep/modules/desktop-virtualization.workspace:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -241,13 +261,6 @@ module workspace 'br:bicep/modules/desktop-virtualization.workspace:1.0.0' = {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
@@ -308,15 +321,6 @@ module workspace 'br:bicep/modules/desktop-virtualization.workspace:1.0.0' = {
"name": "myCustomLockName"
}
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"tags": {
"value": {
"Environment": "Non-Prod",
diff --git a/modules/desktop-virtualization/workspace/main.json b/modules/desktop-virtualization/workspace/main.json
index 3f354c8932..dab0738414 100644
--- a/modules/desktop-virtualization/workspace/main.json
+++ b/modules/desktop-virtualization/workspace/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "2244374453334498480"
+ "templateHash": "13505731187520194526"
},
"name": "Azure Virtual Desktop (AVD) Workspaces",
"description": "This module deploys an Azure Virtual Desktop (AVD) Workspace.",
@@ -357,7 +357,7 @@
"scope": "[format('Microsoft.DesktopVirtualization/workspaces/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DesktopVirtualization/workspaces', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/dev-test-lab/lab/README.md b/modules/dev-test-lab/lab/README.md
index 6970eecd5d..b062197091 100644
--- a/modules/dev-test-lab/lab/README.md
+++ b/modules/dev-test-lab/lab/README.md
@@ -247,7 +247,17 @@ module lab 'br:bicep/modules/dev-test-lab.lab:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
schedules: [
@@ -532,7 +542,17 @@ module lab 'br:bicep/modules/dev-test-lab.lab:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -785,13 +805,6 @@ module lab 'br:bicep/modules/dev-test-lab.lab:1.0.0' = {
}
]
premiumDataDisks: 'Enabled'
- roleAssignments: [
- {
- principalId: ''
- principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
- }
- ]
schedules: [
{
dailyRecurrence: {
@@ -1069,15 +1082,6 @@ module lab 'br:bicep/modules/dev-test-lab.lab:1.0.0' = {
"premiumDataDisks": {
"value": "Enabled"
},
- "roleAssignments": {
- "value": [
- {
- "principalId": "",
- "principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
- }
- ]
- },
"schedules": {
"value": [
{
@@ -1464,7 +1468,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1512,7 +1516,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/dev-test-lab/lab/main.json b/modules/dev-test-lab/lab/main.json
index 049a0fad52..a5bb38da18 100644
--- a/modules/dev-test-lab/lab/main.json
+++ b/modules/dev-test-lab/lab/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "10325694451607731112"
+ "templateHash": "335466902333101649"
},
"name": "DevTest Labs",
"description": "This module deploys a DevTest Lab.",
@@ -61,7 +61,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -431,7 +431,7 @@
"scope": "[format('Microsoft.DevTestLab/labs/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DevTestLab/labs', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -484,10 +484,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "15407797032940609921"
+ "templateHash": "2685254804143459925"
},
"name": "DevTest Lab Virtual Networks",
- "description": "This module deploys a DevTest Lab Virtual Network.\r\n\r\nLab virtual machines must be deployed into a virtual network. This resource type allows configuring the virtual network and subnet settings used for the lab virtual machines.",
+ "description": "This module deploys a DevTest Lab Virtual Network.\n\nLab virtual machines must be deployed into a virtual network. This resource type allows configuring the virtual network and subnet settings used for the lab virtual machines.",
"owner": "Azure/module-maintainers"
},
"parameters": {
@@ -657,10 +657,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "9914622679648067397"
+ "templateHash": "5652685942577853564"
},
"name": "DevTest Lab Policy Sets Policies",
- "description": "This module deploys a DevTest Lab Policy Sets Policy.\r\n\r\nDevTest lab policies are used to modify the lab settings such as only allowing certain VM Size SKUs, marketplace image types, number of VMs allowed per user and other settings.",
+ "description": "This module deploys a DevTest Lab Policy Sets Policy.\n\nDevTest lab policies are used to modify the lab settings such as only allowing certain VM Size SKUs, marketplace image types, number of VMs allowed per user and other settings.",
"owner": "Azure/module-maintainers"
},
"parameters": {
@@ -862,10 +862,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "12981849767656574818"
+ "templateHash": "1015942076148002236"
},
"name": "DevTest Lab Schedules",
- "description": "This module deploys a DevTest Lab Schedule.\r\n\r\nLab schedules are used to modify the settings for auto-shutdown, auto-start for lab virtual machines.",
+ "description": "This module deploys a DevTest Lab Schedule.\n\nLab schedules are used to modify the settings for auto-shutdown, auto-start for lab virtual machines.",
"owner": "Azure/module-maintainers"
},
"parameters": {
@@ -1086,10 +1086,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "18307130406875558192"
+ "templateHash": "421100563759718119"
},
"name": "DevTest Lab Notification Channels",
- "description": "This module deploys a DevTest Lab Notification Channel.\r\n\r\nNotification channels are used by the schedule resource type in order to send notifications or events to email addresses and/or webhooks.",
+ "description": "This module deploys a DevTest Lab Notification Channel.\n\nNotification channels are used by the schedule resource type in order to send notifications or events to email addresses and/or webhooks.",
"owner": "Azure/module-maintainers"
},
"parameters": {
@@ -1270,10 +1270,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "2347337632859394324"
+ "templateHash": "7965418783863447380"
},
"name": "DevTest Lab Artifact Sources",
- "description": "This module deploys a DevTest Lab Artifact Source.\r\n\r\nAn artifact source allows you to create custom artifacts for the VMs in the lab, or use Azure Resource Manager templates to create a custom test environment. You must add a private Git repository for the artifacts or Resource Manager templates that your team creates. The repository can be hosted on GitHub or on Azure DevOps Services.",
+ "description": "This module deploys a DevTest Lab Artifact Source.\n\nAn artifact source allows you to create custom artifacts for the VMs in the lab, or use Azure Resource Manager templates to create a custom test environment. You must add a private Git repository for the artifacts or Resource Manager templates that your team creates. The repository can be hosted on GitHub or on Azure DevOps Services.",
"owner": "Azure/module-maintainers"
},
"parameters": {
@@ -1486,10 +1486,10 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "12516166788941938286"
+ "templateHash": "14581778776350915706"
},
"name": "DevTest Lab Costs",
- "description": "This module deploys a DevTest Lab Cost.\r\n\r\nManage lab costs by setting a spending target that can be viewed in the Monthly Estimated Cost Trend chart. DevTest Labs can send a notification when spending reaches the specified target threshold.",
+ "description": "This module deploys a DevTest Lab Cost.\n\nManage lab costs by setting a spending target that can be viewed in the Monthly Estimated Cost Trend chart. DevTest Labs can send a notification when spending reaches the specified target threshold.",
"owner": "Azure/module-maintainers"
},
"parameters": {
diff --git a/modules/digital-twins/digital-twins-instance/README.md b/modules/digital-twins/digital-twins-instance/README.md
index a972da2410..b17f411ae0 100644
--- a/modules/digital-twins/digital-twins-instance/README.md
+++ b/modules/digital-twins/digital-twins-instance/README.md
@@ -716,7 +716,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | No | string | Optional. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -868,7 +868,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -924,7 +924,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -972,7 +972,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/digital-twins/digital-twins-instance/main.json b/modules/digital-twins/digital-twins-instance/main.json
index 6906b63c09..418e025eaf 100644
--- a/modules/digital-twins/digital-twins-instance/main.json
+++ b/modules/digital-twins/digital-twins-instance/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "8178960412871211847"
+ "templateHash": "10882496143186980105"
},
"name": "Digital Twins Instances",
"description": "This module deploys an Azure Digital Twins Instance.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -274,7 +274,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -590,7 +590,7 @@
"scope": "[format('Microsoft.DigitalTwins/digitalTwinsInstances/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DigitalTwins/digitalTwinsInstances', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/document-db/database-account/README.md b/modules/document-db/database-account/README.md
index 2c1640c6c2..d9167cbc22 100644
--- a/modules/document-db/database-account/README.md
+++ b/modules/document-db/database-account/README.md
@@ -139,7 +139,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -269,7 +279,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -519,7 +539,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -780,7 +810,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -846,7 +886,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
tags: {
@@ -919,7 +969,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1001,7 +1061,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: 'b24988ac-6180-42a0-ab88-20f7382dd24c'
+ }
+ {
+ principalId: ''
+ principalType: 'ServicePrincipal'
+ roleDefinitionIdOrName: ''
}
]
sqlDatabases: [
@@ -1170,7 +1240,17 @@ module databaseAccount 'br:bicep/modules/document-db.database-account:1.0.0' = {
{
"principalId": "",
"principalType": "ServicePrincipal",
- "roleDefinitionIdOrName": "Reader"
+ "roleDefinitionIdOrName": "Owner"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": "b24988ac-6180-42a0-ab88-20f7382dd24c"
+ },
+ {
+ "principalId": "",
+ "principalType": "ServicePrincipal",
+ "roleDefinitionIdOrName": ""
}
]
},
@@ -1666,7 +1746,7 @@ Configuration details for private endpoints. For security reasons, it is recomme
| [`name`](#parameter-privateendpointsname) | No | string | Optional. The name of the private endpoint. |
| [`privateDnsZoneGroupName`](#parameter-privateendpointsprivatednszonegroupname) | No | string | Optional. The name of the private DNS zone group to create if privateDnsZoneResourceIds were provided. |
| [`privateDnsZoneResourceIds`](#parameter-privateendpointsprivatednszoneresourceids) | No | array | Optional. The private DNS zone groups to associate the private endpoint with. A DNS zone group can support up to 5 DNS zones. |
-| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
+| [`roleAssignments`](#parameter-privateendpointsroleassignments) | No | array | Optional. Array of role assignments to create. |
| [`service`](#parameter-privateendpointsservice) | Yes | string | Required. The service (sub-) type to deploy the private endpoint for. For example "vault" or "blob". |
| [`subnetResourceId`](#parameter-privateendpointssubnetresourceid) | Yes | string | Required. Resource ID of the subnet where the endpoint needs to be created. |
| [`tags`](#parameter-privateendpointstags) | No | object | Optional. Tags to be applied on all resources/resource groups in this deployment. |
@@ -1818,7 +1898,7 @@ Optional. The private DNS zone groups to associate the private endpoint with. A
### Parameter: `privateEndpoints.roleAssignments`
-Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
+Optional. Array of role assignments to create.
- Required: No
- Type: array
@@ -1859,7 +1939,7 @@ Array of role assignment objects that contain the 'roleDefinitionIdOrName' and '
| [`description`](#parameter-roleassignmentsdescription) | No | string | Optional. The description of the role assignment. |
| [`principalId`](#parameter-roleassignmentsprincipalid) | Yes | string | Required. The principal ID of the principal (user/group/identity) to assign the role to. |
| [`principalType`](#parameter-roleassignmentsprincipaltype) | No | string | Optional. The principal type of the assigned principal ID. |
-| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead. |
+| [`roleDefinitionIdOrName`](#parameter-roleassignmentsroledefinitionidorname) | Yes | string | Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'. |
### Parameter: `roleAssignments.condition`
@@ -1907,7 +1987,7 @@ Optional. The principal type of the assigned principal ID.
### Parameter: `roleAssignments.roleDefinitionIdOrName`
-Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead.
+Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'.
- Required: Yes
- Type: string
diff --git a/modules/document-db/database-account/main.json b/modules/document-db/database-account/main.json
index 5f9de4eea6..2b2a72a670 100644
--- a/modules/document-db/database-account/main.json
+++ b/modules/document-db/database-account/main.json
@@ -6,7 +6,7 @@
"_generator": {
"name": "bicep",
"version": "0.23.1.45101",
- "templateHash": "6369048122051620701"
+ "templateHash": "17655203248795781813"
},
"name": "DocumentDB Database Accounts",
"description": "This module deploys a DocumentDB Database Account.",
@@ -69,7 +69,7 @@
"roleDefinitionIdOrName": {
"type": "string",
"metadata": {
- "description": "Required. The name of the role to assign. If it cannot be found you can specify the role definition ID instead."
+ "description": "Required. The role to assign. You can provide either the display name of the role definition, the role definition GUID, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
}
},
"principalId": {
@@ -273,7 +273,7 @@
"roleAssignments": {
"$ref": "#/definitions/roleAssignmentType",
"metadata": {
- "description": "Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11'."
+ "description": "Optional. Array of role assignments to create."
}
},
"tags": {
@@ -759,7 +759,7 @@
"scope": "[format('Microsoft.DocumentDB/databaseAccounts/{0}', parameters('name'))]",
"name": "[guid(resourceId('Microsoft.DocumentDB/databaseAccounts', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
"properties": {
- "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
+ "roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
diff --git a/modules/event-hub/namespace/README.md b/modules/event-hub/namespace/README.md
index 3fb31b9d56..faca598780 100644
--- a/modules/event-hub/namespace/README.md
+++ b/modules/event-hub/namespace/README.md
@@ -346,7 +346,17 @@ module namespace 'br:bicep/modules/event-hub.namespace:1.0.0' = {
{
principalId: ''
principalType: 'ServicePrincipal'
- roleDefinitionIdOrName: 'Reader'
+ roleDefinitionIdOrName: 'Owner'
+ }
+ {
+ principalId: '