@@ -72,13 +72,50 @@ type OrgRoleType = {
7272 azureRBACRoles : AzureRBACRole []
7373}
7474
75+ resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2024-11-30' = {
76+ name : 'devCenter-managedIdentity'
77+ location : resourceGroup ().location
78+ }
79+
80+ @description ('Dev Center Identity Role Assignments' )
81+ module devCenterMIroleAssignment '../../identity/devCenterRoleAssignment.bicep' = [
82+ for (role , i ) in config .identity .roleAssignments .devCenter : {
83+ name : 'RBACDevCenterSub-${i }-${managedIdentity .name }-${dateTime }'
84+ scope : subscription ()
85+ params : {
86+ id : role .id
87+ principalId : managedIdentity .properties .principalId
88+ scope : role .scope
89+ }
90+ }
91+ ]
92+
93+ @description ('Dev Center Identity Role Assignments' )
94+ module devCenterMIroleAssignmentRG '../../identity/devCenterRoleAssignmentRG.bicep' = [
95+ for (role , i ) in config .identity .roleAssignments .devCenter : {
96+ name : 'RBACDevCenterRG-${i }-${managedIdentity .name }-${dateTime }'
97+ scope : resourceGroup (securityResourceGroupName )
98+ params : {
99+ id : role .id
100+ principalId : managedIdentity .properties .principalId
101+ scope : role .scope
102+ }
103+ dependsOn : [
104+ devCenterMIroleAssignment
105+ ]
106+ }
107+ ]
108+
75109// Main DevCenter resource
76110@description ('Dev Center Resource' )
77111resource devcenter 'Microsoft.DevCenter/devcenters@2025-04-01-preview' = {
78112 name : devCenterName
79113 location : resourceGroup ().location
80114 identity : {
81115 type : config .identity .type
116+ userAssignedIdentities : {
117+ '${managedIdentity .name }' : {}
118+ }
82119 }
83120 properties : {
84121 projectCatalogSettings : {
@@ -92,6 +129,10 @@ resource devcenter 'Microsoft.DevCenter/devcenters@2025-04-01-preview' = {
92129 }
93130 }
94131 tags : config .tags
132+ dependsOn : [
133+ managedIdentity
134+ devCenterMIroleAssignmentRG
135+ ]
95136}
96137
97138@description ('Deployed Dev Center name' )
0 commit comments