Agent 365 & Agents Administration
AB-650 Exam Alignment
AB-650
Domain 3 — Administer Agent 365 and agents (completely new in AB-650): manage agent identities using Microsoft Entra Agent ID including agent lifecycle workflows; secure agent access using access packages and Conditional Access for agents; manage agent owners and agent settings; discover and manage Microsoft and third-party agents in the agent registry; publish, reject, install, block, and upload custom agents; manage tools available in Agent 365.
- Know that every agent in Agent 365 has a corresponding service principal in Microsoft Entra ID managed through Entra Agent ID
- Understand the difference between agent states in the registry: Available, Installed (user), Installed (admin-deployed), Blocked, Pending review
- Know that Conditional Access policies can target agent service principals to control when and how agents can access M365 resources
- Understand access packages (Entra Identity Governance) as the mechanism for granting users the right to install and use specific agents
🤖 Microsoft Entra Agent ID NEW IN AB-650
Microsoft Entra Agent ID is the identity management framework for AI agents. Every agent registered in Agent 365 is assigned a service principal in Microsoft Entra ID — giving it a managed identity that can be governed, audited, and controlled with the same tools used for application and human identities.
| Agent ID Concept | What It Is | Why It Matters for AB-650 |
|---|---|---|
| Agent service principal | An Entra ID object representing the agent — similar to a service principal for an enterprise application | Agents can be targeted by Conditional Access policies, access reviews, and audit logs just like applications |
| Agent owner | A user or group designated as responsible for the agent — receives alerts about the agent’s activity and is accountable for its use | Every agent should have an owner — agents without owners are flagged in the Agent 365 registry as ungoverned |
| Agent lifecycle states | Register → Pending review → Published/Blocked → Installed → Revoked | AB-650 tests the admin’s ability to move agents through these states in the registry |
| Agent permissions | Like app permissions, agents request access to M365 data (SharePoint, Exchange, Teams) — admins grant or deny consent | Review requested permissions before publishing an agent — agents should follow least-privilege principle |
| Agent Name | Publisher | Type | Status |
|---|---|---|---|
| SharePoint Agent | Microsoft | Built-in | ● Installed |
| ServiceNow Agent | ServiceNow | Third-party | ● Published |
| HR Onboarding Agent | Contoso IT | Custom | ● Pending review |
| CompetitorResearch | Unknown | Third-party | ● Blocked |
🔒 Secure Agent Access — Access Packages & Conditional Access
| Control Mechanism | What It Does | When to Use |
|---|---|---|
| Access Packages (Entitlement Management) | Bundle an agent installation right with other resources (SharePoint access, Teams membership). Users request the package, manager approves, and agent access + supporting resources are granted together automatically. | When agent access requires corresponding data access to be meaningful — e.g. “HR Advisor Agent” package includes the agent + access to HR SharePoint site |
| Agent Conditional Access | Apply Conditional Access policies targeted at agent service principals in Entra ID. Control what conditions must be met for an agent to access M365 resources — time of day, network location, risk level. | When agents should only operate within specific parameters — e.g. restrict agents to corporate network only, or require enhanced authentication for agents accessing financial data |
| Agent permissions consent | When a new agent requests permission to access M365 data (SharePoint, Exchange, Teams Graph API), an admin must grant tenant-wide consent before the agent can operate | Review carefully before granting — permissions should follow least privilege. Revoke unnecessary permissions via Entra Admin Center → Applications → Agent ID → [Agent] → Permissions |
📊 Agent Registry Administration
| Action | What It Does | Admin Location |
|---|---|---|
| Publish an agent | Makes a pending or uploaded agent available for users to install from the Agent 365 catalogue. Published agents appear in the catalogue for all licensed users. | M365 Admin Center → Copilot → Agents → [Select agent] → Publish |
| Block an agent | Prevents any user in the tenant from installing the agent. Existing installations are disabled. Use for agents that violate security policy or are not approved. | M365 Admin Center → Copilot → Agents → [Select agent] → Block |
| Admin deploy (install for all users) | Installs an agent for all users in the tenant or for specific groups — users see it in their Agent 365 without needing to manually install | M365 Admin Center → Copilot → Agents → [Select agent] → Deploy to users |
| Upload a custom agent | Upload a custom agent package (.zip containing agent manifest) built in Copilot Studio or via Teams app packaging | M365 Admin Center → Copilot → Agents → Upload agent |
| Reject a pending agent | Declines an agent submitted for review — it does not appear in the catalogue and cannot be installed. The agent developer is notified. | M365 Admin Center → Copilot → Agents → Pending review → [Select] → Reject |
🔥 Agent 365 Tools Management
Agents in Agent 365 can have access to tools — capabilities that allow the agent to take actions beyond just answering questions. Tools include: web search (agent can search the public web), file reading (agent can read files the user has access to), code interpreter (agent can run code), and custom API connectors. Administrators can manage which tools are available to agents tenant-wide via M365 Admin Center → Copilot → Agents → Tools settings. Restricting tools limits what agents can do — e.g. disabling web search for agents ensures they only use internal M365 data.
Connect-MgGraph -Scopes 'Application.Read.All','Application.ReadWrite.All' # List all agent service principals registered via Entra Agent ID Get-MgServicePrincipal -Filter "tags/any(t:t eq 'Agent365')" | Select-Object DisplayName,AppId,AccountEnabled | Format-Table -AutoSize # Get owners of a specific agent service principal Get-MgServicePrincipalOwner -ServicePrincipalId [AgentSPId] | Select-Object DisplayName,UserPrincipalName | Format-Table -AutoSize # Add an owner to the agent New-MgServicePrincipalOwnerByRef -ServicePrincipalId [AgentSPId] -BodyParameter @{'@odata.id' = "https://graph.microsoft.com/v1.0/users/$($UserId)"} # Get all permissions granted to an agent Get-MgServicePrincipalAppRoleAssignment -ServicePrincipalId [AgentSPId] | Select-Object PrincipalDisplayName,ResourceDisplayName,AppRoleId | Format-Table -AutoSize # Disable an agent service principal (block the agent globally) Update-MgServicePrincipal -ServicePrincipalId [AgentSPId] -AccountEnabled $false # Review CA policies targeting agent app IDs Get-MgIdentityConditionalAccessPolicy | Where-Object {$_.Conditions.Applications.IncludeApplications -contains [AgentAppId]} | Select-Object DisplayName,State | Format-Table -AutoSize
💡 Best Practices
- Assign an owner to every agent before publishing — agent owners receive notifications about unusual activity and are accountable if the agent causes a compliance issue
- Review all agent permission requests carefully before granting consent — agents requesting access to all SharePoint sites or all user calendars should be scrutinised before approval
- Default to “Pending review” for all new agent submissions — configure the Agent 365 registry to require admin approval before any new agent is visible to users
- Use access packages for agents that require corresponding data access — bundle the agent installation right with the minimum necessary SharePoint or Teams access
- Block unknown or unapproved agents immediately when they appear in the registry — third-party agents can appear via Microsoft AppSource integrations and should be reviewed before being available to users
- Apply Conditional Access to agent service principals to restrict when agents can access sensitive M365 resources — e.g. allow finance data agents to operate only during business hours from corporate network
🎓 Interview Q&A
An organisation discovers that a third-party agent called “DataMiner Pro” has appeared in the Agent 365 registry and is requesting permission to read all SharePoint sites in the tenant. No admin has reviewed this agent. What should the administrator do first?
A Copilot Studio developer has built an HR Onboarding agent and submitted it to the Agent 365 registry. The compliance team wants the agent reviewed and approved by IT security before any user can install it. Which Agent 365 configuration ensures all new agent submissions require admin review?
The IT security team wants the “Finance Advisor Agent” to only be available to Finance department employees, who also need access to the Finance SharePoint site and Finance Teams channel to use the agent effectively. Which approach handles all three access requirements with an approval workflow?
An administrator needs to ensure that a custom agent cannot be installed or used if the service principal associated with the agent is disabled in Entra ID. Which Agent 365 concept makes this possible?
Update-MgServicePrincipal -AccountEnabled $false or through the Entra Admin Center) prevents the agent from obtaining tokens and accessing any M365 data — effectively disabling it at the identity layer. This is a deeper control than the registry status (A — which controls user visibility), permission revocation (C — which limits data access but doesn’t prevent authentication), or CA block (D — which is also valid but requires explicit policy targeting the agent’s app ID).A security administrator wants a high-sensitivity financial data agent to only access M365 resources when connecting from within the corporate network (trusted IP range). Which feature achieves this specific control?