AD groups used to be relatively simple
I’ve recently had the fun of being involved in yet another merger. Fortunately, this time I’ve been a little smarter about it and resigned in advance. Not only because of how stressful mergers are — there were plenty of other reasons too.
One of the things mergers inevitably bring to the surface is the wonderful world of group types, scopes, nesting and membership. And that prompted me to finally write this article, which has been rattling around in the back of my head for a while.
Because… how the fuck did we get here ?
Back in the early days of Active Directory — and I’m deliberately not going back as far as Windows NT 3.51 — things were comparatively straightforward.
There were three group scopes:
- Domain Local
- Global
- Universal
Universal groups weren’t initially available in every AD configuration; their availability depended on whether the domain was operating in Windows 2000 mixed or native mode.
Groups also had a type:
- Security
- Distribution
And, importantly, these concepts had reasonably well-defined purposes.
Security groups were used to control access to resources. Distribution groups were used for email distribution. The different scopes determined where groups could be used and how they could contain members.
There was a model to it.
Most administrators who had been around AD for a while would have been familiar with AGDLP:
Accounts → Global Groups → Domain Local Groups → Permissions
It wasn’t perfect, but it was predictable. If someone handed you an AD environment, you could generally look at a group and understand what it was, why it existed, and what it was likely to be used for.
With Exchange 2000, the lines started to blur a little, security groups could be mail-enabled, meaning the same security principal could both control access to resources and receive email.
Later, Exchange 2007 changed the rules for mail-enabled security groups: new mail-enabled security groups needed to be Universal groups. Existing mail-enabled groups could continue to function, but the management model changed.
Still, despite the slight additional complexity, the underlying concepts remained reasonably understandable.
A group had a scope. It had a type. It had a purpose.It had a model.
So what do we have now?
Fast forward to now…. add in Entra ID — and things started getting… interesting. The concept of a “group” is now just astrounding complex.
We still have the traditional Active Directory groups (which may or may not be sync’ed to ExtraID) :
- Domain Local
- Global
- Universal
- Security
- Distribution
But we’ve also accumulated a whole collection of cloud-based group types and mechanisms:
- Entra security groups
- Entra dynamic security groups
- Microsoft 365 Groups
- Mail-enabled security groups
- Distribution groups
- Dynamic Distribution Groups
- Role-assignable groups
And then there are the workloads that consume these groups, each with their own interpretation of what a group can and can’t do:
- AD and other on-prem services
- Exchange / Exchange Online
- Teams
- SharePoint
- Intune
- Enterprise Applications
- Conditional Access
- Azure / Entra RBAC
- Microsoft 365 services
The problem isn’t simply that there are lots of different types of groups, but the reality that their usages have become fragmented, inflexible and change based on workload.
- An on-prem group can by sync’ed to AAD, but cant be used for all Entra or Entra-based purposes
- Nesting will work for some workloads and not others
- An Entra security group cannot be mail enabled
- An Exchange online mail-enabled security group cannot be managed via the entra interface (or entra group automations)
- An M365 group can be used in Teams, Sharepoint etc – but cant be used as a security group
- Entra dynamic groups can no longer use “memberof”
- Group members in on-prem groups from a trsuted domain wont sync into Entra – which forces an entra group for this purpose
The upshot of all this is a complete loss of flexibility for us admins.
User : I need a group to allocate permissions to thie enterprise app
Me : Done, here is a entra security group
User : Oh – i need it mail enabled as well
Me : Well, i need to delete the original group, re-create as a mail-enabled security group through EXO
User : Now our automations dont work
Me : Yes – because its now an exchange-based object, not an entra-based object. Why didnt you tell me about the automations ?
User : Its a group….. how hard can it be
Me : I very much wish that was the case
So where does that leave us?
- There is no longer a model or best practice
- AGDLP exists… kinda, but its such a small piece of puzzle in any enterprise now.
- Start with the workload, not the group – and hope that the workload requirement doesn’t change
- What needs to consume the group?
- Email?
- File/AD permissions?
- Enterprise App?
- Teams?
- Intune?
- Conditional Access?
- Multiple workloads?
- Accept that one requirement may require multiple groups
- Not much else to be said here…. and with memberOf disappearing in November 2026 – the non-scripting options are diminishing
- The management plane
- AD-sourced group → AD is authoritative.
- Exchange-created mail-enabled group → Exchange is authoritative.
- Entra-created security group → Entra is authoritative.
- We’ve all done it – gone to edit a group and found we need to make changes elsehwere
This stuff is always going to have some complexity…. but now the answer for any group question is “it depends” – which is complete shit – and if the usage changes or grows in the future as new requirements are uncovered…. there’s solutions, but none of them are elegant – or what you would expect from a company with almost 4 trillion market cap. I know none of this will change – and will more than likely get worse – but, i still feel better to let it all out.





