Cómo exportar el permiso del buzón de acceso completo
Puede exportar una lista de usuarios con permiso de acceso completo a un buzón de correo de Microsoft 365 con licencia. De esta manera puede ver qué usuarios pueden abrir el buzón de Microsoft 365 y comportarse como propietario del buzón. En este artículo, aprenderá cómo exportar el permiso del buzón de acceso completo con Exchange Online PowerShell.
Conéctese a Exchange Online PowerShell
Para poder ejecutar comandos de PowerShell, debe conectarse a Exchange Online PowerShell. Abra Windows PowerShell como administrador, ejecute el siguiente cmdlet e inicie sesión con sus credenciales de administrador.
Connect-ExchangeOnlineExportar permisos de buzón de acceso total para un solo usuario
Le mostraremos cómo exportar los permisos del buzón de un usuario con PowerShell.
Queremos obtener información sobre los permisos de buzón que otros usuarios tienen en un buzón de usuario específico. El cmdlet de PowerShell que utilizamos para mostrar los permisos del buzón es Get-MailboxPermission.
En nuestro ejemplo, queremos mostrar qué usuarios (o grupos) tienen permiso de buzón de acceso total al buzón de Brenda.
Usaremos el parámetro -AutoSize para reducir el espacio entre las columnas de resultados.
Ejecute el siguiente comando de PowerShell.
Get-MailboxPermission "Brenda.Smith@m365info.com" | ft -AutoSizeVea el resultado de salida de PowerShell.
Identity User AccessRights IsInherited Deny
-------- ---- ------------ ----------- ----
0f38d53f-cbe0-4844-86e9-1032a45ba31b NT AUTHORITY\SELF {FullAccess, ReadPermission} False False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess} False False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list {FullAccess} False False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway {FullAccess} False False
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess} False FalseEl resultado muestra la Identidad del buzón (Brenda) que proporcionó y enumera los buzones con permiso de acceso total en la columna Usuario.
Técnicamente, obtuvimos los resultados requeridos, pero si profundizamos en los datos, hay algunos problemas.
Cuando usamos el comando básico de PowerShell para mostrar el permiso del buzón en Exchange Online, hay mucha información no relevante. Primero, queremos eliminar el permiso SELF que cada usuario tiene en su buzón. Luego, queremos eliminar del resultado mostrado los permisos IsInherited.
Para eliminar la información innecesaria, usaremos una condición lógica (Dónde) para excluir el permiso del buzón de acceso total clasificado como NT AUTHORITY\SELF y IsInherited. fuerte>.
Ejecute el siguiente ejemplo de comando de PowerShell.
Get-MailboxPermission "Brenda.Smith@m365info.com" | Where { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") } | Ft Identity, User, AccessRights -AutoSizeEl resultado de la salida de PowerShell se muestra a continuación.
Identity User AccessRights
-------- ---- ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess}
Podemos ver que logramos excluir o borrar la mayor parte de la información no relevante. Muestra los buzones con permiso de acceso total al buzón de Brenda.
Exportar permiso de buzón de acceso total para múltiples usuarios
También puede obtener permisos de buzón para más de un usuario. En nuestro ejemplo, queremos saber quién tiene permiso de buzón para Brenda Smith y Ken Walker.
En el comando de PowerShell podemos agregar cada nombre de usuario separado por una coma.
Consulte la siguiente sintaxis del comando de PowerShell.
"Brenda.Smith@m365info.com","Ken.Walker@m365info.com" | ForEach {Get-MailboxPermission -Identity $_}Para eliminar información irrelevante en la salida, cambiaremos el comando de PowerShell anterior.
Ejecute el ejemplo del comando PowerShell.
"Brenda.Smith@m365info.com","Ken.Walker@m365info.com" | ForEach { Get-MailboxPermission -Identity $_ | Where { ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") -and -not ($_.User -like '*Discovery Management*') } } | Select Identity, User, AccessRightsLos resultados de salida de PowerShell se muestran a continuación.
Identity User AccessRights
-------- ---- ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Diana.Baker@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Finance UK mail list {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Sales Norway {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Laura.Terry@m365info.com {FullAccess}
12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Brian.Mill@m365info.com {FullAccess}
12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Anna.Bell@m365info.com {FullAccess}Enumerará todos los buzones de correo con permisos de acceso total en la columna Usuario para los buzones de correo (Brenda Smith y Ken Walker) que proporcionó.
Exportar permiso de acceso total al que el usuario tiene acceso
Queremos exportar el permiso del buzón de acceso completo que un usuario específico tiene acceso a otros usuarios o grupos.
Para obtener esa información, necesitamos usar el cmdlet Get-Mailbox para obtener una lista de todos los buzones de correo existentes. Luego, también usaremos el cmdlet Get-MailboxPermission y agregaremos el nombre de usuario.
El comando de PowerShell revisará todas las matrices de buzones, verificará en qué buzones el usuario tiene permiso de buzón y mostrará los resultados. El resto del comando de PowerShell se utiliza para mejorar los resultados mostrados por el cmdlet Get-MailboxPermission.
En nuestro ejemplo, nos gustaría obtener información sobre el permiso de acceso total que tiene el usuario Brenda Smith a otros buzones de correo.
- Especifique el buzón en la línea número 1
- Ejecute el siguiente script de comando de PowerShell
Get-Mailbox -Resultsize Unlimited | Get-MailboxPermission -User "Brenda.Smith@m365info.com" | ForEach-Object {
$mailbox = Get-Mailbox $_.Identity
$User = Get-Mailbox $_.User
[PSCustomObject]@{
UserId = $User.Identity
User = $_.User
Identity = $_.Identity
UserPrincipalName = $mailbox.UserPrincipalName
AccessRights = $_.AccessRights
}
} | Format-Table UserId, User, Identity, UserPrincipalName, AccessRightsLa salida de PowerShell muestra una lista de buzones de correo para los que Brenda Smith tiene permiso de acceso total.
UserId User Identity UserPrincipalName AccessRights
------ ---- -------- ----------------- ------------
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com 82cd0d62-e974-4892-aca6-e0387abc62be Anna.Bell@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Catch All Catch.All@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Info Box InfoBox@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com 12eefbb2-e5f4-4eec-bd18-df7ca2f1ee6b Ken.Walker@m365info.c… {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com Projector 21 Projector21@m365info.… {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com RoomTest8 RoomTest8@m365info.com {FullAccess}
0f38d53f-cbe0-4844-86e9-1032a45ba31b Brenda.Smith@m365info.com c32b2b27-d809-439a-a3e3-eb7a749eeb72 Stephen.Hunter@m365in… {FullAccess}La información del buzón (Brenda.Smith@m365info.com) que especificó con permiso de acceso total aparece en las columnas UserId y Usuario. Muestra una lista de todos los buzones de correo de Exchange Online en la columna Identidad y UserPrincipalName.
Exportar lista de buzones de correo con permiso de acceso total a un archivo CSV
Queremos exportar una lista de todos los usuarios con permiso de buzón de acceso completo a un archivo CSV y Out-GridView. Muestra cada buzón con permiso de acceso completo a otro buzón con licencia.
Siga los pasos a continuación para exportar una lista de permisos de buzón a CSV:
- Cree la carpeta temp y guárdela en la unidad (C:) si aún no la tiene.
- Escriba CSVPath en la línea número 2
- Ejecute el siguiente script de PowerShell
# Set the path for the CSV file to store the permissions
$CSVPath = "C:\temp\FullAccessPerms.csv"
try {
# Get all the mailboxes with unlimited result size and retrieve their mailbox permissions
$permissions = Get-Mailbox -ResultSize Unlimited | Get-MailboxPermission | Where-Object {
# Filter out permissions that are inherited, belong to "NT AUTHORITY\SELF", or belong to "Discovery Management"
($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") -and -not ($_.User -like '*Discovery Management*')
} | ForEach-Object {
# For each permission, get the mailbox details
$mailbox = Get-Mailbox $_.Identity
[PSCustomObject]@{
UserPrincipalName = $mailbox.UserPrincipalName
Identity = $mailbox.Identity
User = $_.User
AccessRights = $_.AccessRights
RecipientTypeDetails = $mailbox.RecipientTypeDetails
}
} | Select-Object Identity, UserPrincipalName, User, AccessRights, RecipientTypeDetails
# Display the permissions in Out-GridView
$permissions | Out-GridView -Title "Full Access mailbox permissions"
# Export the permissions to a CSV file
$permissions | Export-Csv -Path $CSVPath -NoTypeInformation -Encoding UTF8
# Display a success message if the export was successful
Write-Host "Exported permissions successfully to $CSVPath" -ForegroundColor Cyan
}
catch {
# Display an error message if there was an exception during the export
Write-Host "Error exporting permissions: $_" -ForegroundColor Red
}- Out-GridView aparece después de ejecutar el script
- Busque el archivo CSV en la carpeta C:\temp.
- Abra el archivo CSV con una aplicación como Microsoft Excel para ver los resultados.
¡Eso es todo!
Leer más: Exporte usuarios de Azure AD con Microsoft Graph PowerShell »
Conclusión
Aprendió a exportar el permiso del buzón de acceso completo con Exchange Online PowerShell. Con el cmdlet Get-MailboxPermission PowerShell, puede obtener una lista de usuarios con permiso de acceso completo para uno o todos los buzones de correo de Microsoft 365.
Disfrutaste este artículo? También te puede interesar Exportar miembros del grupo de Azure AD a CSV con PowerShell. No olvides seguirnos y compartir este artículo.



