BED-4887: AZResetPassword edge false positive on a role-assignable group. #1151
+62
−10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Before creating AZResetPassword from an AZRole to an AZUser, make sure the user is not a member of a role assignable group.
Motivation and Context
This PR addresses: https://specterops.atlassian.net/browse/BED-4887
How Has This Been Tested?
Ingest SpecterDev.
Run pathfinding between
PARTNER TIER1 SUPPORT@SPECTEROPS DEVELOPMENT
andACHILES@SPECTERDEV.ONMICROSOFT.COM
You should get the following results (important part is that there is no AZPasswordReset edge directly between the two):

Prior to this fix, you would see the following:

This is not correct because ACHILES@SPECTERDEV.ONMICROSOFT.COM is a member of a role assignable group (ALL SPECTERDEV USERS@SPECTEROPS DEVELOPMENT)

Since it's a member of a role assignable group, only Global Administrator Role, Privileged Authentication Administrator Role, or Partner Tier2 Support Role can perform a reset password operation.
You can quickly disable my change by commenting out these lines I added in TenantRoleAssignments()

Types of changes
Checklist: