azureblog.co.uk
← cd ~/roles
// roles/entra · privileged

Security OperatorMicrosoft Entra built-in role

Creates and manages security events and performs identity containment actions during security incidents.

Role ID5f2222b1-57c3-48ba-8ad5-d4759f1fde6f
PrivilegedYes. Microsoft marks this role as privileged.
Permissions17

Before you assign it

Microsoft labels this a privileged role, so make it eligible through PIM rather than permanent, require phishing-resistant MFA to activate it, and review who has it regularly.

What it can do

PermissionWhat it allows
microsoft.azure.advancedThreatProtection/allEntities/allTasksManage all aspects of Azure Advanced Threat Protection
microsoft.azure.supportTickets/allEntities/allTasksCreate and manage Azure support tickets
microsoft.directory/auditLogs/allProperties/readRead all properties on audit logs, excluding custom security attributes audit logs
microsoft.directory/authorizationPolicy/standard/readRead standard properties of authorization policy
microsoft.directory/cloudAppSecurity/allProperties/allTasksCreate and delete all resources, and read and update standard properties in Microsoft Defender for Cloud Apps
microsoft.directory/identityProtection/allProperties/allTasksCreate and delete all resources, and read and update standard properties in Microsoft Entra ID Protection
microsoft.directory/privilegedIdentityManagement/allProperties/readRead all resources in Privileged Identity Management
microsoft.directory/provisioningLogs/allProperties/readRead all properties of provisioning logs
microsoft.directory/signInReports/allProperties/readRead all properties on sign-in reports, including privileged properties
microsoft.directory/users/disableDisable users
microsoft.directory/users/enableEnable users
microsoft.directory/users/invalidateAllRefreshTokensForce sign-out by invalidating user refresh tokens
microsoft.directory/users/password/updateReset passwords for all users
microsoft.intune/allEntities/readRead all resources in Microsoft Intune
microsoft.office365.securityComplianceCenter/allEntities/allTasksCreate and delete all resources, and read and update standard properties in the Microsoft 365 Security and Compliance Center
microsoft.office365.supportTickets/allEntities/allTasksCreate and manage Microsoft 365 service requests
microsoft.windows.defenderAdvancedThreatProtection/allEntities/allTasksManage all aspects of Microsoft Defender for Endpoint

Assign it

The role ID is the same in every tenant, so these work as they are. Make it eligible through PIM:

powershell13 lines
Connect-MgGraph -Scopes "RoleEligibilitySchedule.ReadWrite.Directory"
$user = Get-MgUser -UserId "jane.doe@contoso.com"
New-MgRoleManagementDirectoryRoleEligibilityScheduleRequest -BodyParameter @{
    Action           = "AdminAssign"
    Justification    = "Needs Security Operator for <reason>"
    RoleDefinitionId = "5f2222b1-57c3-48ba-8ad5-d4759f1fde6f"
    DirectoryScopeId = "/"
    PrincipalId      = $user.Id
    ScheduleInfo     = @{
        StartDateTime = (Get-Date).ToUniversalTime().ToString("o")
        Expiration    = @{ Type = "afterDuration"; Duration = "P180D" }
    }
}

Who already has it?

powershell3 lines
Connect-MgGraph -Scopes "RoleManagement.Read.Directory"
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '5f2222b1-57c3-48ba-8ad5-d4759f1fde6f'" -ExpandProperty Principal |
    ForEach-Object { $_.Principal.AdditionalProperties.displayName }

Related roles

Find the smallest role for a task →