@@ -63,6 +63,14 @@ func (g *resourceGetter) resourceGroupName() string {
63
63
return g .clusterInfo .AzureResourceGroupName
64
64
}
65
65
66
+ func (g * resourceGetter ) resourceGroupID () string {
67
+ return fmt .Sprintf ("/subscriptions/%s/resourceGroups/%s" , g .clusterInfo .AzureSubscriptionID , g .clusterInfo .AzureResourceGroupName )
68
+ }
69
+
70
+ func (g * resourceGetter ) storageAccountID () string {
71
+ return g .clusterInfo .AzureStorageAccountID
72
+ }
73
+
66
74
func (g * resourceGetter ) listResourcesAzure () (map [string ]* resources.Resource , error ) {
67
75
rs , err := g .listAll ()
68
76
if err != nil {
@@ -397,11 +405,17 @@ func (g *resourceGetter) listVMScaleSetsAndRoleAssignments(ctx context.Context)
397
405
principalIDs [* vmss .Identity .PrincipalID ] = vmss
398
406
}
399
407
400
- ras , err := g .listRoleAssignments (ctx , principalIDs )
408
+ resourceGroupRAs , err := g .listRoleAssignments (ctx , principalIDs , g .resourceGroupID ())
409
+ if err != nil {
410
+ return nil , err
411
+ }
412
+ rs = append (rs , resourceGroupRAs ... )
413
+
414
+ storageAccountRAs , err := g .listRoleAssignments (ctx , principalIDs , g .storageAccountID ())
401
415
if err != nil {
402
416
return nil , err
403
417
}
404
- rs = append (rs , ras ... )
418
+ rs = append (rs , storageAccountRAs ... )
405
419
406
420
return rs , nil
407
421
}
@@ -509,8 +523,8 @@ func (g *resourceGetter) deleteDisk(_ fi.Cloud, r *resources.Resource) error {
509
523
return g .cloud .Disk ().Delete (context .TODO (), g .resourceGroupName (), r .Name )
510
524
}
511
525
512
- func (g * resourceGetter ) listRoleAssignments (ctx context.Context , principalIDs map [string ]* compute.VirtualMachineScaleSet ) ([]* resources.Resource , error ) {
513
- ras , err := g .cloud .RoleAssignment ().List (ctx , g . resourceGroupName () )
526
+ func (g * resourceGetter ) listRoleAssignments (ctx context.Context , principalIDs map [string ]* compute.VirtualMachineScaleSet , scope string ) ([]* resources.Resource , error ) {
527
+ ras , err := g .cloud .RoleAssignment ().List (ctx , scope )
514
528
if err != nil {
515
529
return nil , err
516
530
}
0 commit comments