Búsqueda de sitios web

Exportar informe de permisos de calendario de Office 365 mediante PowerShell


Delegar el acceso al calendario es una de las funciones populares de Exchange. Permite compartir los calendarios con otras personas con derechos de acceso específicos. Es fácil para los usuarios delegar el acceso a sus calendarios.

Dado que los calendarios del buzón se pueden compartir con usuarios internos y externos, administrar los permisos del calendario requiere cuidado adicional.

¿Cómo ver los permisos del calendario en Office 365 usando PowerShell?

A pesar de ser el administrador, no puede ver la configuración del calendario compartido de los buzones a través de los Centros de administración. La única opción que queda es PowerShell. Lamentablemente, PowerShell necesita varios cmdlets de PowerShell para recuperar los permisos del calendario.

  • Un buzón puede tener varios calendarios, incluidos calendarios integrados y creados por el usuario. Para enumerar todos los calendarios de un usuario, puede utilizar 'Get-MailboxFolderStatistics'.
  • Para cada carpeta de calendario, debe usar ‘Get-MailboxFolderPermission’ para ver los permisos del calendario compartido.
  • Si desea ver los permisos del calendario para algunos buzones de correo, los cmdlets anteriores son suficientes. Pero, si necesita ver todos los buzones de correo, debe utilizar el cmdlet 'Get-Mailbox' .

Para facilitar su trabajo, hemos creado un script de PowerShell para generar 6 informes de permisos de calendario diferentes. Al utilizar parámetros de filtrado incorporados, puede exportar el informe requerido.

Descarga de script: GetMailboxCalendarPermissions.ps1

Guiones destacados:

  • Genera 6 informes de permisos de calendario de buzones diferentes.
  • La secuencia de comandos utiliza autenticación moderna para recuperar los permisos del calendario.
  • El script también se puede ejecutar con cuenta habilitada para MFA .
  • Exporta los resultados del informe a un archivo CSV .
  • Le permite realizar un seguimiento de todos los permisos de los calendarios
  • Ayuda a ver permiso de calendario predeterminado para todos los buzones
  • Muestra todos los calendarios de buzones a los que un usuario tiene acceso.
  • Enumera los calendarios compartidos con usuarios externos.
  • Ayuda a descubrir los permisos de calendario para una lista de buzones de correo mediante entrada CSV.
  • Automáticamente instale el módulo EXO V2 (si aún no está instalado) tras su confirmación.
  • El script es compatible con el programador. Es decir, la credencial se puede pasar como parámetro en lugar de guardarla dentro del script.

Obtener informe de permisos del calendario del buzón: descripción general del script

Con el script, puede obtener datos granulares sobre los calendarios y los derechos de acceso de otros usuarios de Office 365. Puede generar rápidamente varios informes de permisos de calendario. A continuación, enumeramos algunos casos de uso importantes:

  • Obtener permiso de calendario para todos los usuarios
  • Exportar calendarios compartidos con usuarios externos
  • Enumera todos los calendarios a los que tiene acceso un usuario
  • Ver los permisos para compartir todos los calendarios (incluido el uso compartido predeterminado y anónimo)
  • Obtener permiso de calendario predeterminado
  • Recuperar permisos de calendario para la lista de buzones de correo (ingrese CSV)
  • Programar informe de permisos de calendario

Obtener permisos de calendario para todos los usuarios en Office 365:

Los calendarios del buzón se pueden delegar a otros usuarios de Office 365 para fines comerciales. Por tanto, los administradores son responsables de la seguridad y privacidad de los datos. Deben saber si el acceso al calendario otorgado es apropiado y cumple plenamente con la política de la organización. Puede utilizar el formato siguiente para obtener todos los calendarios compartidos con derechos de acceso delegados.

.\GetMailboxCalendarPermissions.ps1

Con el formato anterior, puede obtener rápidamente todos los permisos en un calendario. Las columnas "Derechos de acceso", "Compartido con" y "Indicador de permisos para compartir" del informe le ayudan a obtener la información principal sobre el calendario compartido.

Nota: El informe no incluye el permiso para compartir calendario predeterminado y anónimo. Puede ejecutar la secuencia de comandos con el interruptor -ShowAllPermission para ver todos los permisos, incluido el calendario predeterminado y anónimo. permiso.

Resultado de muestra:

Exportar calendarios compartidos con usuarios externos:

A veces, los usuarios de Office 365 comparten sus calendarios con personas ajenas a la organización para encontrar una hora de reunión común. El propietario del buzón es responsable de revocar el acceso al calendario otorgado a usuarios externos una vez que se completa la actividad.

Para ver calendarios compartidos fuera de la organización, puede ejecutar el script con - ExternalUsersCalendarPermissions parámetro.

.\GetMailboxCalendarPermissions.ps1 -ExternalUsersCalendarPermissions

El formato anterior enumera todos los calendarios que se han compartido con usuarios externos, junto con los derechos de acceso. Al consultar este informe, el administrador/propietario del buzón puede eliminar el permiso para compartir.

Resultado de muestra:

Enumerar todos los calendarios a los que tiene acceso un usuario:

¿Cómo ver todos los calendarios a los que un usuario tiene permiso para acceder? - He visto esta pregunta en muchos foros. Entonces, he decidido incluir ese caso de uso también. Para mostrar todos los calendarios de buzones de correo a los que un usuario tiene acceso, ejecute la secuencia de comandos con - DisplayAllCalendarsSharedTo param junto con la identidad del usuario.

.\GetMailboxCalendarPermissions.ps1 -DisplayAllCalendarsSharedTo john@contoso.com

El ejemplo anterior recupera todos los calendarios compartidos con John y el nivel de acceso permitido.

Resultado de muestra:

Ver todos los permisos para compartir calendarios:

De forma predeterminada, la secuencia de comandos excluye los permisos de calendario anónimos y predeterminados en todos los demás casos de uso. Para ver calendarios con todos los permisos para compartir, incluidos los permisos predeterminados y anónimos, ejecute la secuencia de comandos con -ShowAllPermissions cambiar parámetro.

Predeterminado: muestra los permisos para los usuarios de su organización o los usuarios autenticados.

Anónimo: muestra el permiso para usuarios externos y no autenticados.

.\GetMailboxCalendarPermissions.ps1 -ShowAllPermissions

Al consultar este informe, el administrador puede cambiar el permiso predeterminado del calendario y modificar/deshabilitar el uso compartido anónimo del calendario.

Resultado de muestra:

Obtener permiso de calendario predeterminado:

El permiso de calendario predeterminado es el nivel de acceso permitido a las personas dentro de la organización. De forma predeterminada, el valor se establece como "AvailabliityOnly". La mayoría de las organizaciones prefieren "Detalles limitados" en lugar del "Solo disponibilidad" predeterminado debido a la visibilidad de los datos.

Para ver la política de uso compartido predeterminada para los calendarios de todos los usuarios de Office 365, ejecute la secuencia de comandos con -DefaultCalendarPermissions cambiar parámetro.

.\GetMailboxCalendarPermissions.ps1 -DefaultCalendarPermissions

Con este informe, los administradores pueden identificar los permisos predeterminados del calendario y modificarlos si es necesario.

Resultado de muestra:

Buscar permisos de calendario para la lista de buzones mediante el archivo CSV de entrada:

Generar informes de permisos de calendario para todos los usuarios lleva mucho tiempo, específicamente en entornos grandes. Para verificar los permisos de la carpeta del calendario para algunos buzones de correo, puede pasar el archivo CSV de entrada con las identidades de buzones de correo específicos.

.\GetMailboxCalendarPermissions.ps1 -CSVIdentityFile C:/InputFile.csv

El archivo CSV de nombres de buzones debe seguir el siguiente formato: Identidad de buzones separados por una nueva línea sin encabezado. La identidad puede ser nombre para mostrar/alias/nombre distinguido/DN canónico/dirección de correo electrónico o GUID de buzones de correo.

Nota: puedes combinar otros parámetros con -CSVIdentityFile para obtener un informe de permisos de calendario más granular.

Por ejemplo,

.\GetMailboxCalendarPermissions.ps1 -CSVIdentityFile C:/InputFile.csv -ExternalUsersCalendarPermissions

Este ejemplo procesa los buzones de correo en el archivo CSV y exporta sus calendarios que se comparten con usuarios externos.

Programar informe de permisos de Calendario de Office 365:

Es esencial verificar periódicamente la configuración para compartir el calendario, ya que los usuarios pueden cambiarla. Para automatizar la generación de informes, puede ejecutar el script en el Programador de tareas de Windows como tarea programada de PowerShell.

.\GetMailboxCalendarPermissions.ps1 -UserName admin@contoso.com -Password XXX -ShowAllPermissions

El formato anterior recupera los permisos de calendario de todos los buzones, incluidos los derechos de acceso predeterminados y anónimos.

Nota: Si la cuenta de administrador tiene MFA, no puedes usarla directamente para programar. En su lugar, debe deshabilitar MFA según la Política de acceso condicional para que funcione.


Esperamos que este blog le ayude a conocer detalladamente los permisos del calendario. Háganos saber sus preguntas y comentarios.

Artículos relacionados