@@ -30,108 +30,70 @@ public class RemoveAzureRoleAssignmentCommand : ResourcesBaseCmdlet
30
30
{
31
31
[ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
32
32
HelpMessage = "The user or group object id" ) ]
33
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithObjectId ,
34
- HelpMessage = "The user or group object id." ) ]
35
33
[ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
36
34
HelpMessage = "The user or group object id." ) ]
37
35
[ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithObjectId ,
38
36
HelpMessage = "The user or group object id." ) ]
39
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ObjectId ,
40
- HelpMessage = "The user or group object id." ) ]
41
37
[ ValidateNotNullOrEmpty ]
42
38
[ Alias ( "Id" , "PrincipalId" ) ]
43
39
public Guid ObjectId { get ; set ; }
44
40
45
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
46
- HelpMessage = "The user or group email address." ) ]
47
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithMail ,
48
- HelpMessage = "The user or group email address." ) ]
49
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
50
- HelpMessage = "The user or group email address." ) ]
51
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithMail ,
41
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
52
42
HelpMessage = "The user or group email address." ) ]
53
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Mail ,
43
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithMail ,
54
44
HelpMessage = "The user or group email address." ) ]
55
45
[ ValidateNotNullOrEmpty ]
56
46
public string Mail { get ; set ; }
57
47
58
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
59
- HelpMessage = "The user UPN." ) ]
60
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithUPN ,
61
- HelpMessage = "The user UPN." ) ]
62
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
63
- HelpMessage = "The user UPN." ) ]
64
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithUPN ,
48
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
65
49
HelpMessage = "The user UPN." ) ]
66
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . UPN ,
50
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithUPN ,
67
51
HelpMessage = "The user UPN." ) ]
68
52
[ ValidateNotNullOrEmpty ]
69
53
[ Alias ( "UPN" ) ]
70
54
public string UserPrincipalName { get ; set ; }
71
55
72
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
73
- HelpMessage = "The app SPN." ) ]
74
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithSPN ,
75
- HelpMessage = "The app SPN." ) ]
76
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
77
- HelpMessage = "The app SPN." ) ]
78
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithSPN ,
56
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
79
57
HelpMessage = "The app SPN." ) ]
80
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . SPN ,
58
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithSPN ,
81
59
HelpMessage = "The app SPN." ) ]
82
60
[ ValidateNotNullOrEmpty ]
83
61
[ Alias ( "SPN" ) ]
84
62
public string ServicePrincipalName { get ; set ; }
85
63
86
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
87
- HelpMessage = "Resource group to assign the role to." ) ]
88
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithObjectId ,
89
- HelpMessage = "Resource group to assign the role to." ) ]
90
64
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
91
65
HelpMessage = "Resource group to assign the role to." ) ]
92
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithMail ,
93
- HelpMessage = "Resource group to assign the role to." ) ]
94
66
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
95
67
HelpMessage = "Resource group to assign the role to." ) ]
96
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithUPN ,
97
- HelpMessage = "Resource group to assign the role to." ) ]
98
68
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
99
69
HelpMessage = "Resource group to assign the role to." ) ]
100
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceGroupWithSPN ,
101
- HelpMessage = "Resource group to assign the role to." ) ]
102
70
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
103
71
HelpMessage = "Resource group to assign the role to." ) ]
104
72
[ ValidateNotNullOrEmpty ]
105
73
public string ResourceGroupName { get ; set ; }
106
74
107
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Resource ,
108
- HelpMessage = "Resource to assign the role to." ) ]
109
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
75
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
110
76
HelpMessage = "Resource to assign the role to." ) ]
111
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
77
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
112
78
HelpMessage = "Resource to assign the role to." ) ]
113
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
79
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
114
80
HelpMessage = "Resource to assign the role to." ) ]
115
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
81
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
116
82
HelpMessage = "Resource to assign the role to." ) ]
117
83
[ ValidateNotNullOrEmpty ]
118
84
public string ResourceName { get ; set ; }
119
85
120
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Resource ,
121
- HelpMessage = "Type of the resource to assign the role to." ) ]
122
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
86
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
123
87
HelpMessage = "Type of the resource to assign the role to." ) ]
124
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
88
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
125
89
HelpMessage = "Type of the resource to assign the role to." ) ]
126
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
90
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithUPN ,
127
91
HelpMessage = "Type of the resource to assign the role to." ) ]
128
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
92
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithSPN ,
129
93
HelpMessage = "Type of the resource to assign the role to." ) ]
130
94
[ ValidateNotNullOrEmpty ]
131
95
public string ResourceType { get ; set ; }
132
96
133
- [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Resource ,
134
- HelpMessage = "Parent resource of the resource to assign the role to, if there is any." ) ]
135
97
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithObjectId ,
136
98
HelpMessage = "Parent resource of the resource to assign the role to, if there is any." ) ]
137
99
[ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ResourceWithMail ,
@@ -143,10 +105,8 @@ public class RemoveAzureRoleAssignmentCommand : ResourcesBaseCmdlet
143
105
[ ValidateNotNullOrEmpty ]
144
106
public string ParentResource { get ; set ; }
145
107
146
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
147
- HelpMessage = "Scope of the role assignment. In the format of relative URI. If not specified, will assign the role at subscription level. If specified, it can either start with \" /subscriptions/<id>\" or the part after that. If it's latter, the current subscription id will be used." ) ]
148
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Scope ,
149
- HelpMessage = "Scope of the role assignment. In the format of relative URI. If not specified, will assign the role at subscription level. If specified, it can either start with \" /subscriptions/<id>\" or the part after that. If it's latter, the current subscription id will be used." ) ]
108
+ [ Parameter ( Mandatory = false , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
109
+ HelpMessage = "Role to assign the principals with." ) ]
150
110
[ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithObjectId ,
151
111
HelpMessage = "Scope of the role assignment. In the format of relative URI. If not specified, will assign the role at subscription level. If specified, it can either start with \" /subscriptions/<id>\" or the part after that. If it's latter, the current subscription id will be used." ) ]
152
112
[ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . ScopeWithMail ,
@@ -158,9 +118,7 @@ public class RemoveAzureRoleAssignmentCommand : ResourcesBaseCmdlet
158
118
[ ValidateNotNullOrEmpty ]
159
119
public string Scope { get ; set ; }
160
120
161
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , ParameterSetName = ParameterSet . Empty ,
162
- HelpMessage = "Role to assign the principals with." ) ]
163
- [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , HelpMessage = "Role to assign the principals with." ) ]
121
+ [ Parameter ( Mandatory = true , ValueFromPipelineByPropertyName = true , HelpMessage = "Role the principal is assigned to." ) ]
164
122
[ ValidateNotNullOrEmpty ]
165
123
public string RoleDefinitionName { get ; set ; }
166
124
@@ -191,7 +149,8 @@ protected override void ProcessRecord()
191
149
ResourceName = ResourceName ,
192
150
ResourceType = ResourceType ,
193
151
Subscription = DefaultProfile . DefaultContext . Subscription . Id . ToString ( )
194
- }
152
+ } ,
153
+ ExcludeAssignmentsForDeletedPrincipals = false
195
154
} ;
196
155
197
156
ConfirmAction (
0 commit comments