Skip to content

Commit 07fc6c2

Browse files
author
Maddie Clayton
authored
Merge pull request Azure#7228 from bganapa/role-fix
Fix for New-AzureRmRoleAssignment and Remove-AzureRmRoleAssignment fo…
2 parents e649b2b + 4ccbe9b commit 07fc6c2

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

Resources/Commands.Resources/Models.Authorization/AuthorizationClient.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,14 +165,25 @@ public List<PSRoleDefinition> FilterRoleDefinitionsByCustom(string scope, bool s
165165
public PSRoleAssignment CreateRoleAssignment(FilterRoleAssignmentsOptions parameters)
166166
{
167167
Guid principalId = ActiveDirectoryClient.GetObjectId(parameters.ADObjectFilter);
168+
string principalIdStr = null;
169+
170+
if (principalId == Guid.Empty)
171+
{
172+
principalIdStr = ActiveDirectoryClient.GetAdfsObjectId(parameters.ADObjectFilter);
173+
}
174+
else
175+
{
176+
principalIdStr = principalId.ToString();
177+
}
178+
168179
Guid roleAssignmentId = RoleAssignmentNames.Count == 0 ? Guid.NewGuid() : RoleAssignmentNames.Dequeue();
169180
string scope = parameters.Scope;
170181
string roleDefinitionId = !string.IsNullOrEmpty(parameters.RoleDefinitionName)
171182
? AuthorizationHelper.ConstructFullyQualifiedRoleDefinitionIdFromScopeAndIdAsGuid(scope, GetSingleRoleDefinitionByName(parameters.RoleDefinitionName, scope).Id)
172183
: AuthorizationHelper.ConstructFullyQualifiedRoleDefinitionIdFromScopeAndIdAsGuid(scope, parameters.RoleDefinitionId);
173184
var createProperties = new RoleAssignmentProperties
174185
{
175-
PrincipalId = principalId.ToString(),
186+
PrincipalId = principalIdStr,
176187
RoleDefinitionId = roleDefinitionId
177188
};
178189
var createParameters = new RoleAssignmentCreateParameters(createProperties);

Resources/Commands.Resources/RoleAssignments/RemoveAzureRoleAssignmentCommand.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ public override void ExecuteCmdlet()
175175
ADObjectFilter = new ADObjectFilterOptions
176176
{
177177
UPN = SignInName,
178-
Id = ObjectId.ToString(),
178+
Id = ObjectId,
179179
SPN = ServicePrincipalName
180180
},
181181
ResourceIdentifier = new ResourceIdentifier()

0 commit comments

Comments
 (0)