Skip to content

Commit b62b27d

Browse files
committed
Managed Identity devCenter
1 parent ee16331 commit b62b27d

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

src/workload/core/devCenter.bicep

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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')
77111
resource 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

Comments
 (0)