0:00–0:10
Recap
0:10–0:35
Lecture
0:35–1:40
Guided Lab
1:40–1:50
Bonus
1:50–2:00
Debrief
0:00 – 0:10
Recap · 10 min
Week 1 debrief & the security gap
Bridge from Week 1 into Week 2 by surfacing the most obvious security problem with the tenant as it currently stands.
- Return Week 1 assessments with brief verbal feedback — highlight one common strength and one common gap across the class
- Ask: "Right now, who in Lakeview Logistics has admin access to the M365 tenant?" — answer: only the Global Admin account, which every student has been using for everything all week
- Ask: "What happens to Lakeview Logistics if that Global Admin account is compromised?" — surface the single point of failure
- Frame the week: Week 2 is about removing that single point of failure — distributing admin access correctly, enforcing strong authentication, and controlling the conditions under which access is granted
0:10 – 0:35
Lecture · 25 min
Entra ID roles — the right access for the right person
Microsoft Entra ID has over 80 built-in administrative roles. Students don't need to memorise all of them — they need to understand the model, know the most important roles cold, and be able to reason about which role fits a given situation.
- The role-based access control (RBAC) model in Entra ID — roles are collections of permissions. Assigning a role to a user grants them those permissions within the scope defined. Roles are additive — a user can hold multiple roles simultaneously. No role means no admin access. The default state for a new user is correct: zero roles.
- The roles every M365 admin must know — cover these in detail:
| Role | What it can do | Lakeview Logistics use case |
| Global Administrator | Full control of everything in the tenant — users, groups, licences, all services, billing, security. Can grant any role to anyone. | Break-glass only. Never used for daily tasks. |
| Global Reader | Read-only equivalent of Global Admin — can see everything, change nothing. | Auditors, senior management needing visibility without risk. |
| User Administrator | Create/edit/delete users and groups, manage licences, reset passwords (except for admins). | Sarah Chen (IT Manager) — day-to-day user management. |
| Helpdesk Administrator | Reset passwords and manage service requests for non-admin users only. | Dev Sharma (IT Support) — first-line password resets. |
| Exchange Administrator | Full control of Exchange Online — mailboxes, mail flow, connectors, anti-spam. | Whoever manages email in Week 3. |
| SharePoint Administrator | Full control of SharePoint Online and OneDrive — sites, permissions, storage. | Assigned in Week 4 when SharePoint is configured. |
| Teams Administrator | Full control of Teams — policies, meetings, telephony, guest access. | Assigned in Week 5 when Teams is configured. |
| Security Administrator | Manage security policies, Defender, Secure Score, identity protection. | Sarah Chen again in Weeks 7–8. |
| Billing Administrator | Manage subscriptions, licences, and payment methods. | Priya Nair (Finance Manager) — licence purchasing decisions. |
- Global Admin: the break-glass account — the Global Admin account should be treated like a physical key to a locked server room. It exists for emergencies and major configuration tasks. It should have a very strong password, MFA enforced, and never be used as a daily sign-in. Best practice: create a named Global Admin account (e.g. admin-emergency@[subdomain]) separate from the admin's personal account, stored securely, used rarely.
- Role assignment scope — roles can be assigned at tenant scope (affects everything) or, with Entra ID P2, at administrative unit scope (affects only a subset of users/groups). Business Standard supports tenant-scope only. This will change when E5 is added.
- Custom roles — Entra ID P1/P2 supports custom roles built from individual permissions. Not available on Business Standard — but worth knowing exists for when it matters.
Instructor note: The role table above maps directly to the lab. Students will assign these exact roles to these exact users. Having the table on the projector during the lab removes ambiguity and keeps the focus on understanding rather than lookups.
0:35 – 1:40
Guided lab · 65 min
Lab 2-A: Assigning administrative roles to Lakeview Logistics staff
Students assign the correct Entra ID roles to the Lakeview Logistics team using three methods — the M365 admin centre, the Entra admin centre, and Microsoft Graph PowerShell. They then test role boundaries by signing in as a role-limited user and attempting actions outside their permissions.
- Step 1 — Assign roles via the M365 admin centre (15 min)
Navigate to Users → Active users → [user] → Roles tab → Manage roles. Assign the following roles:
| User | Role to assign | Method |
| Sarah Chen | User Administrator | M365 admin centre |
| Dev Sharma | Helpdesk Administrator | M365 admin centre |
| Priya Nair | Billing Administrator | Entra admin centre |
| Marcus Webb | Global Reader | Entra admin centre |
| Diane Rousseau | User Administrator | PowerShell |
- Step 2 — Assign roles via the Entra admin centre (10 min)
Navigate to entra.microsoft.com → Roles and administrators → [role name] → Add assignments. Assign Billing Administrator to Priya Nair and Global Reader to Marcus Webb. Note that the Entra admin centre shows the full role description and permissions list — explore this for both roles before assigning.
- Step 3 — Assign a role via PowerShell (15 min)
Connect to Microsoft Graph:
Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"
Get the role definition ID for User Administrator:
$role = Get-MgDirectoryRole | Where-Object {$_.DisplayName -eq "User Administrator"}
If the role is not yet activated in the tenant, activate it first:
$roleTemplate = Get-MgDirectoryRoleTemplate | Where-Object {$_.DisplayName -eq "User Administrator"}
New-MgDirectoryRole -RoleTemplateId $roleTemplate.Id
Get Diane Rousseau's Object ID and assign the role:
$user = Get-MgUser -Filter "displayName eq 'Diane Rousseau'"
New-MgDirectoryRoleMember -DirectoryRoleId $role.Id -OdataId "https://graph.microsoft.com/v1.0/directoryObjects/$($user.Id)"
Verify by checking Diane's Roles tab in the Entra admin centre.
- Step 4 — Test role boundaries (25 min)
Open a private/incognito browser window and sign in as Dev Sharma (Helpdesk Administrator) at admin.microsoft.com.
Attempt the following and record the result (allowed / blocked / partially allowed) in your Lab Journal:
| Action attempted as Dev Sharma | Expected result | Your result |
| Reset the password for James Okafor (no admin role) | Allowed | |
| Reset the password for Sarah Chen (User Administrator) | Blocked | |
| Create a new user account | Blocked | |
| View the Active users list | Allowed | |
| Access Billing → Licences | Blocked | |
| View service health dashboard | Allowed | |
- Step 5 — Audit role assignments via PowerShell (10 min)
Back in your Global Admin session, run the following to produce a full report of all role assignments in the tenant:
Get-MgDirectoryRole | ForEach-Object {
$role = $_
$members = Get-MgDirectoryRoleMember -DirectoryRoleId $role.Id
foreach ($m in $members) {
[PSCustomObject]@{ Role=$role.DisplayName; Member=$m.AdditionalProperties.displayName }
}
} | Format-Table -AutoSize
Copy the output into your Lab Journal. This is the kind of role audit report a security team would run regularly.
Important — don't remove your own Global Admin role: When testing role assignments, work in a separate incognito window as another user. Do not modify your own Global Admin account's roles during this lab. Locking yourself out of Global Admin on a trial tenant with no backup admin is unrecoverable without a Microsoft support ticket.
Instructor note: Step 4 is the most valuable part of this lab — students experience what least privilege actually means from the user's perspective. The blocked actions are not errors; they are the system working correctly. Make sure students record their results rather than just clicking through.
1:40 – 1:50
Bonus material · 10 min
⭐ Bonus: Administrative units & custom role exploration
For students who complete the core lab early. Two independent extension tasks — attempt either or both.
⭐ Bonus A — Administrative units (Entra admin centre)
- In entra.microsoft.com → Administrative units → Add, create an administrative unit called Lakeview Logistics IT Department
- Add Sarah Chen and Dev Sharma as members
- Attempt to assign Dev Sharma's Helpdesk Administrator role scoped to this administrative unit only (note: this requires Entra ID P2 — document whether it works on Business Standard and what error you see if not)
- In your Lab Journal: explain what problem administrative units solve that tenant-wide role assignment cannot
⭐ Bonus B — Role permission deep-dive via PowerShell
- Run the following to list every permission granted to the Helpdesk Administrator role:
$roleDef = Get-MgRoleManagementDirectoryRoleDefinition -Filter "displayName eq 'Helpdesk Administrator'"
$roleDef.RolePermissions | Select-Object -ExpandProperty AllowedResourceActions
- Do the same for User Administrator
- Identify at least two permissions that User Administrator has that Helpdesk Administrator does not
- In your Lab Journal: based on the permission list, explain specifically why Helpdesk Administrator cannot create a new user — name the missing permission
1:50 – 2:00
Debrief · 10 min
Reflection & preview
- Ask: "Lakeview Logistics now has five people with admin roles. Is that more secure or less secure than before, when only the Global Admin account had access?" — surface the nuance: more accounts with limited roles is safer than one account with unlimited access
- Ask: "Sarah Chen has User Administrator. Can she change Marcus Webb's Global Reader role? Can she change her own role?" — test understanding of role boundaries at the admin tier
- Collect exit ticket: name the role you would assign to a new IT support hire who needs to reset user passwords but nothing else — and explain what would happen if you gave them User Administrator instead
- Preview Day 2: roles are assigned — but none of these admin accounts have MFA enforced yet. Tomorrow that changes for everyone.
Learning outcomes — by end of Day 1, students can…
Explain Entra ID RBACDescribe how roles, permissions, and assignments work in Microsoft Entra ID
Identify the right roleSelect the appropriate built-in role for a given admin responsibility scenario
Assign roles three waysUse the M365 admin centre, Entra admin centre, and Graph PowerShell to assign roles
Test role boundariesVerify that a role-limited account can and cannot perform the expected actions
Audit role assignmentsGenerate a tenant-wide role assignment report via PowerShell
What you need ready
Week 1 assessments marked and returned
Microsoft Graph PowerShell SDK installed
Role reference table on projector
Lab 2-A step sheet
Incognito browser available on all machines