← cd ~/roles
// roles/entra
Organizational Messages WriterMicrosoft Entra built-in role
Write, publish, manage, and review the organizational messages for end-users through Microsoft product surfaces.
| Role ID | 507f53e4-4e52-4077-abd3-d2e1558b6ea2 |
|---|---|
| Privileged | No |
| Permissions | 3 |
What it can do
| Permission | What it allows |
|---|---|
microsoft.office365.organizationalMessages/allEntities/allProperties/allTasks | Manage all authoring aspects of Microsoft 365 Organizational Messages |
microsoft.office365.usageReports/allEntities/standard/read | Read tenant-level aggregated Office 365 usage reports |
microsoft.office365.webPortal/allEntities/standard/read | Read basic properties on all resources in the Microsoft 365 admin center |
Assign it
The role ID is the same in every tenant, so these work as they are. Make it eligible through PIM:
Connect-MgGraph -Scopes "RoleEligibilitySchedule.ReadWrite.Directory"
$user = Get-MgUser -UserId "jane.doe@contoso.com"
New-MgRoleManagementDirectoryRoleEligibilityScheduleRequest -BodyParameter @{
Action = "AdminAssign"
Justification = "Needs Organizational Messages Writer for <reason>"
RoleDefinitionId = "507f53e4-4e52-4077-abd3-d2e1558b6ea2"
DirectoryScopeId = "/"
PrincipalId = $user.Id
ScheduleInfo = @{
StartDateTime = (Get-Date).ToUniversalTime().ToString("o")
Expiration = @{ Type = "afterDuration"; Duration = "P180D" }
}
}Who already has it?
Connect-MgGraph -Scopes "RoleManagement.Read.Directory"
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '507f53e4-4e52-4077-abd3-d2e1558b6ea2'" -ExpandProperty Principal |
ForEach-Object { $_.Principal.AdditionalProperties.displayName }Related roles
- Attack Simulation Administrator · 3 permissions
- Edge Administrator · 3 permissions
- Insights Analyst · 3 permissions
- Message Center Privacy Reader · 3 permissions
- Microsoft 365 Migration Administrator · 3 permissions
- Network Administrator · 3 permissions
- Organizational Messages Approver · 3 permissions
- Search Editor · 3 permissions