Block
CA502-Agents-AttackSurfaceReduction-AllAgentIdentities-AllAgentResources-BLOCK
Block access
About this policy
The CA502-Agents-AttackSurfaceReduction-AllAgentIdentities-AllAgentResources-BLOCK policy is a default deny for agent identities, blocking them from all agent identity resources. The idea is simple, nothing agent shaped gets access unless you have made a deliberate decision to allow it elsewhere. As organisations begin experimenting with AI agents, this stops shadow agents from quietly acquiring access before your governance catches up. Treat it as your safety net, then build specific allowances on top for the agents you actually trust.
Policy conditions
JSON template
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/conditionalAccess/policies/$entity",
"@odata.type": "#microsoft.graph.conditionalAccessPolicy",
"@odata.id": "identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')",
"@odata.editLink": "identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')",
"templateId": null,
"displayName": "CA502-Agents-AttackSurfaceReduction-AllAgentIdentities-AllAgentResources-BLOCK",
"createdDateTime@odata.type": "#DateTimeOffset",
"modifiedDateTime@odata.type": "#DateTimeOffset",
"state@odata.type": "#microsoft.graph.conditionalAccessPolicyState",
"state": "enabledForReportingButNotEnforced",
"deletedDateTime": null,
"partialEnablementStrategy": null,
"sessionControls": null,
"conditions": {
"@odata.type": "#microsoft.graph.conditionalAccessConditionSet",
"userRiskLevels@odata.type": "#Collection(microsoft.graph.riskLevel)",
"userRiskLevels": [],
"signInRiskLevels@odata.type": "#Collection(microsoft.graph.riskLevel)",
"signInRiskLevels": [],
"clientAppTypes@odata.type": "#Collection(microsoft.graph.conditionalAccessClientApp)",
"clientAppTypes": [
"all"
],
"platforms": null,
"locations": null,
"times": null,
"deviceStates": null,
"devices": null,
"agents": null,
"applications": {
"@odata.type": "#microsoft.graph.conditionalAccessApplications",
"includeApplications@odata.type": "#Collection(String)",
"includeApplications": [
"AllAgentIdResources"
],
"excludeApplications@odata.type": "#Collection(String)",
"excludeApplications": [],
"includeUserActions@odata.type": "#Collection(String)",
"includeUserActions": [],
"includeAuthenticationContextClassReferences@odata.type": "#Collection(String)",
"includeAuthenticationContextClassReferences": [],
"applicationFilter": null
},
"users": {
"@odata.type": "#microsoft.graph.conditionalAccessUsers",
"includeUsers@odata.type": "#Collection(String)",
"includeUsers": [
"None"
],
"excludeUsers@odata.type": "#Collection(String)",
"excludeUsers": [],
"includeGroups@odata.type": "#Collection(String)",
"includeGroups": [],
"excludeGroups@odata.type": "#Collection(String)",
"excludeGroups": [],
"includeRoles@odata.type": "#Collection(String)",
"includeRoles": [],
"excludeRoles@odata.type": "#Collection(String)",
"excludeRoles": [],
"includeGuestsOrExternalUsers": null,
"excludeGuestsOrExternalUsers": null
},
"clientApplications": {
"@odata.type": "#microsoft.graph.conditionalAccessClientApplications",
"includeServicePrincipals@odata.type": "#Collection(String)",
"includeServicePrincipals": [],
"includeAgentIdServicePrincipals@odata.type": "#Collection(String)",
"includeAgentIdServicePrincipals": [
"All"
],
"excludeServicePrincipals@odata.type": "#Collection(String)",
"excludeServicePrincipals": []
}
},
"grantControls": {
"@odata.type": "#microsoft.graph.conditionalAccessGrantControls",
"operator": "OR",
"builtInControls@odata.type": "#Collection(microsoft.graph.conditionalAccessGrantControl)",
"builtInControls": [
"block"
],
"customAuthenticationFactors@odata.type": "#Collection(String)",
"customAuthenticationFactors": [],
"termsOfUse@odata.type": "#Collection(String)",
"termsOfUse": [],
"authenticationStrength@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')/grantControls/authenticationStrength/$entity",
"authenticationStrength@odata.associationLink": "https://graph.microsoft.com/beta/identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')/grantControls/authenticationStrength/$ref",
"authenticationStrength@odata.navigationLink": "https://graph.microsoft.com/beta/identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')/grantControls/authenticationStrength",
"authenticationStrength": null
},
"#microsoft.graph.restore": {
"title": "microsoft.graph.restore",
"target": "https://graph.microsoft.com/beta/identity/conditionalAccess/policies('b35f5bf5-4d34-4e2d-815b-168b9cf57dd5')/microsoft.graph.restore"
},
"Tag": "jv-CAF-2026.2.1",
"summary": "The CA502-Agents-AttackSurfaceReduction-AllAgentIdentities-AllAgentResources-BLOCK policy is a default deny for agent identities, blocking them from all agent identity resources. The idea is simple, nothing agent shaped gets access unless you have made a deliberate decision to allow it elsewhere. As organisations begin experimenting with AI agents, this stops shadow agents from quietly acquiring access before your governance catches up. Treat it as your safety net, then build specific allowances on top for the agents you actually trust."
}