-
Notifications
You must be signed in to change notification settings - Fork 253
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate use of SecureScore to satisfy AAD 7.2 #548
Comments
After further investigation into this issue, the current thinking is to proceed with a custom-made mathematical formula to replace the Identity Secure Score check for the Control Name: RoleOverlap for the following reasons:
The following procedure was used to come up with a meaningful formula Step 1. Come up with a few least privilege score formulas using simple ratios to start Step 1: Formulas considered:
*Total Privileged Roles refers to Microsoft's recently updated official list of Azure AD built-in roles. Total Privileged Roles is the union of Microsoft's privileged roles and ScubaGear highly privileged roles. Note that ScubaGear includes two highly privileged roles that are not part of Microsoft's privileged roles set: Exchange and SharePoint Admins After reviewing the different formulas, formula (2) seems to apply best for these reasons:
Initially, the threshold can be set at 1 as there should likely not be as many Global Admins as there are users assigned to other roles. However, for small tenants, it may be necessary to reduce the threshold to less than 1 as the ratio doesn't include insight into the total Global Admins (ScubaGear recommends no more than 8.) For small tenants, this number may be more important to check (e.g., even a ratio of 7/8 may not be advisable for small tenants as 7 Global Admins may be too many.) Below is the calculations for formula 2 against the E5, G5, and E3 tenants: - E5: Global Admins/ScubaGear Highly Privileged Roles excluding Global Admins: 6/11 Note that this formula only looks at the sum of highly privileged roles and not the distribution or roles. Another formula iteration could include information on the number of roles with at least one user provisioned. CAVEAT: This issue has a dependency on issue #376 because of the fact that the privileged_users array will need to include roles assigned using PIM for Groups. Currently, privileged_users only includes users assigned directly to a highly privileged role. |
Next step is to get concurrence from CISA on the new formula. Follow up via email. |
Issue can be closed as effort is now in the coding issue #760. |
💡 Summary
Currently, policy MS.AAD.7.2v1 is a manual check for ensuring that the tenant is using fine grained administrative roles.
The purpose of this issue is to determine the best way to implement this policy check in ScubaGear.
Update 12/20/2023
Since creating this issue, we determined that Identity Secure Score is not feasible for ScubaGear. Instead we designed our own calculation to determine least privilege which is documented in this issue.
Old notes
Only tenants that have Secure Score for Identity Category implemented, ScubaGear can check the status of the Identity Secure Score for the Control Name: "RoleOverlap" to see if it is "100%". This option was considered but may not be ideal for the following reasons:
Some alternative ideas for the future that are not mutually exclusive:
Acceptance criteria
How do we know when this work is done?
The text was updated successfully, but these errors were encountered: