Búsqueda de sitios web

Utilice PowerShell para ver objetos de Exchange Online | Parte 3#3


Mi objetivo principal en los artículos actuales es revisar la forma en que utilizamos PowerShell como herramienta para implementar la "búsqueda filtrada" en el entorno basado en Exchange Online.

En algunos escenarios, podemos usar cmdlets de PowerShell integrados, que nos permiten consultar Exchange Online sobre un tipo específico de destinatarios.

La opción principal que revisamos en este artículo para implementar consultas de búsqueda filtradas es la declaración de PowerShell.

Utilice PowerShell para ver objetos de Office 365 y Exchange Online | Serie de artículos

La serie de artículos incluye los siguientes artículos:

  1. Uso de la “declaración Where” de PowerShell para crear búsquedas filtradas | Objetos de Office 365 y Exchange Online
  2. Utilice PowerShell para ver objetos de Office 365
  3. Utilice PowerShell para ver objetos de Exchange Online (este artículo)

El término "objetos específicos de Exchange Online" se puede traducir a muchos tipos de escenarios.

Por ejemplo

  • Ejemplo 1: crear una “búsqueda filtrada” de PowerShell, buscando un tipo específico de destinatarios en línea, como contactos de correo, grupos de Exchange, carpetas públicas, usuarios de buzones de correo, etc.
  • Ejemplo 2: crear una “búsqueda filtrada” de PowerShell, buscando buzones de correo de Exchange Online cuya dirección de correo electrónico incluya el nombre de dominio específico o el alias específico.
  • Ejemplo 3: crear una “búsqueda filtrada” de PowerShell, buscando un tipo de buzón de Exchange Online específico, como buzón de usuario, buzón compartido, buzón de sala, etc.
  • Ejemplo 4: crear una “búsqueda filtrada” de PowerShell, buscando un buzón de Exchange Online específico, como por ejemplo: buzones con un archivo, buzones con retención por litigio, buzones con retención local, buzones con auditoría habilitada; Buzones de correo de Exchange Online eliminados temporalmente, buzones de correo de Exchange Online inactivos, etc.
  • Ejemplo 5: crear una “búsqueda filtrada” de PowerShell, buscando una “propiedad” del usuario del buzón de correo de Exchange Online, como por ejemplo: un usuario de un departamento específico, un usuario con un título específico, un estado o provincia específico, etc.
  • Ejemplo 6: crear una “búsqueda filtrada” de PowerShell y buscar una “información de fecha” en los buzones de Exchange. Por ejemplo:

    • Buzones de Exchange Online que se crearon en un momento específico (minutos, días, meses y años).
    • Buzones de Exchange Online a los que accedió un usuario (propietario del buzón) en un momento específico (minutos, días, meses y años).

Mostrar información sobre los buzones de correo de Exchange mediante el comando Get-Mailbox

Ver todos los buzones de correo de Exchange Online frente a un número limitado predeterminado

Exchange incluye muchos tipos de buzones, como buzones de usuario, buzones compartidos, buzones de sala, etc. Al utilizar el comando de PowerShell - Get-Mailbox, solicitamos mostrar todos los tipos de buzones de Exchange.

De forma predeterminada, los resultados del comando Get-Mailbox de PowerShell muestran solo los “primeros 1000 buzones de correo de Exchange”. "

Get-Mailbox

Mostrar información sobre todos los diferentes tipos de buzones de Exchange Online | No hay “límite” del número de buzones de correo de Exchange Online que se mostrarán.

En caso de que queramos “extender” la “restricción de 1.000 resultados” predeterminada o indicar con precisión el número de buzones de Exchange Online que queremos mostrar, podemos usar el parámetro ResultSize.

El parámetro ResultSize especifica el número máximo de resultados que se devolverán. Si desea devolver todas las solicitudes que coinciden con la consulta, utilice ilimitado para el valor de este parámetro.

Get-Mailbox -ResultSize Unlimited

¿Cómo saber qué parámetro de filtro puedo usar cuando dirijo un objeto de buzón de Exchange Online?

En el siguiente artículo repasamos diferentes ejemplos en los que creamos una búsqueda Filtrada, buscando una propiedad específica del buzón de Exchange Online.

En caso de que queramos obtener una lista de todas las propiedades disponibles de un objeto de PowerShell específico, como "buzón de Exchange Online", podemos usar los cmdlets de PowerShell - Get-Member

Por ejemplo, para obtener una lista de las propiedades (miembros) del comando de PowerShell Get-Mailbox que podemos "consultar", podemos usar el comando de PowerShell Get-Member.

Un ejemplo de la sintaxis de PowerShell que utilizamos es:

Obtener información sobre las propiedades de los objetos de PowerShell

Sintaxis del comando de PowerShell:

Get-Mailbox * | Get-Member

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox * | Get-Member
TypeName: Deserialized.Microsoft.Exchange.Data.Directory.Management.Mailbox

Name                                   MemberType   Definition 
----                                   ----------   ---------- 
GetType                                Method       type GetType() 
ToString                               Method       string ToString(), string ToString(string format, System.IFormatProvider formatProvider), string IFormattable.ToString(string format, System.IFormatPr...
PSComputerName                         NoteProperty string PSComputerName=outlook.office365.com 
PSShowComputerName                     NoteProperty bool PSShowComputerName=False 
RunspaceId                             NoteProperty guid RunspaceId=35665d8e-40d6-4fb7-9f09-cc13bd844e99 
AcceptMessagesOnlyFrom                 Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AcceptMessagesOnlyFromDLMembers        Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AcceptMessagesOnlyFromSendersOrMembers Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AccountDisabled                        Property     System.Boolean {get;set;} 
AddressBookPolicy                      Property     {get;set;}

Dos parámetros útiles de PowerShell que podemos usar | Contar + Grupo-Objeto

En la siguiente sección, me gustaría revisar brevemente dos opciones útiles de PowerShell que se pueden aplicar a los "resultados" que obtenemos de la salida del comando de PowerShell.

Cuente el número de buzones de correo de Exchange Online

La opción “contar” de PowerShell, nos permite “contar” los resultados que se muestran mediante el comando de PowerShell.

En el siguiente ejemplo, utilizamos el parámetro "count" de PowerShell para contar el número de buzones de correo de Exchange Online que se "crean" cuando utilizamos el comando de PowerShell Get-Mailbox.

Cuente el número de buzones de correo de Exchange Online

Sintaxis del comando de PowerShell:

Get-Mailbox -ResultSize Unlimited).Count

La opción “Grupo-Objeto” de PowerShell, nos habilita como su nombre indica, el “Grupo” los resultados que se muestran mediante el comando de PowerShell.

En el siguiente ejemplo, solicitamos mostrar información sobre todos los buzones de correo de tipo Public Folder Exchange Online existentes, pero además, solicitamos: Agrupar el resultado del tipo de buzón.

Mostrar información sobre todos los buzones de correo de Exchange Online | Agrupar por buzón

Sintaxis del comando de PowerShell:

Get-Mailbox -ResultSize Unlimited | Group-Object -Property RecipientTypeDetails

Ejemplo de salida de la consola PowerShell:

PS C:\script> Get-Mailbox -ResultSize Unlimited | Group-Object -Property RecipientTypeDetails |ft

Count  Name               Group
-----  ----               -----
45     UserMailbox        {Adele, Alice Good, Alicia Keys...}
1      DiscoveryMailbox   {Discovery Search Mailbox}
9      SharedMailbox      {DMARC and Spoof E-mail, E-mail attachments Mailbox, Help desk support tickets, Shared-MB01...}
4      RoomMailbox        {Room03, room04, Room-MB01, Room-MB02}

Mostrar información sobre un tipo específico de buzones de Exchange

Exchange Online proporciona varios tipos de “buzones”, como buzones de usuario, buzones de sala, buzones compartidos y mucho más.

En la siguiente sección, podemos ver ejemplos del uso de un comando de PowerShell que filtrará los resultados de la búsqueda mostrando solo un tipo específico de buzones de correo de Exchange Online.

Filtrar el resultado de la búsqueda | Mostrar información solo sobre los buzones de Exchange Online considerados como “Buzón de usuario”

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “UserMailbox”} |FT Alias,RecipientTypeDetails

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.RecipientTypeDetails -eq “UserMailbox”} |FT DisplayName,RecipientTypeDetails

DisplayName        RecipientTypeDetails
-----------        --------------------
Adele              UserMailbox 
Alicia Keys        UserMailbox 
Angelina Jolie     UserMailbox 
Aretha Franklin    UserMailbox 
Beatles the        UserMailbox 
Beyonce            UserMailbox 
Billy              UserMailbox 
Bob marley         UserMailbox

Filtrar el resultado de la búsqueda | Mostrar información solo sobre los buzones de Exchange Online considerados como “buzón de sala”

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “RoomMailbox”} | FT Alias,RecipientTypeDetails

Filtrar el resultado de la búsqueda | Mostrar información solo sobre los buzones de correo de Exchange Online considerados como “buzón compartido”

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “SharedMailbox”} | FT Alias,RecipientTypeDetails

Filtrar el resultado de la búsqueda | Mostrar información solo sobre los buzones de Exchange Online considerados como “Buzón de equipo”

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “EquipmentMailbox”} | FT Alias,RecipientTypeDetails

Nota: si desea ver la "lista completa" de los distintos tipos de buzones de Exchange Online, puede utilizar el siguiente artículo: Enumeración RecipientTypeDetails.

Mostrar información sobre un tipo específico de destinatarios de Exchange

Exchange Online incluye muchos tipos de “destinatarios”. "

En la siguiente sección repasamos los comandos de PowerShell, que nos ayudarán a “filtrar los resultados de la búsqueda” buscando un destinatario de Exchange Online específico.

Mostrar información sobre todos los destinatarios de Exchange Online

Sintaxis del comando de PowerShell:

Get-Recipient | Sort RecipientType | Select DisplayName,RecipientType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Recipient | Sort RecipientType | Select DisplayName,RecipientType 

DisplayName                  RecipientType 
-----------                  ------------- 
test-01                      DynamicDistributionGroup 
test-02                      DynamicDistributionGroup 
Test004                      MailUniversalDistributionGroup
Billy group                  MailUniversalDistributionGroup
Marketing                    MailUniversalDistributionGroup
ex2010                       MailUser 
test002                      PublicFolder 
test300                      PublicFolder 
Christina Aguilera           UserMailbox 
Chris Brown                  UserMailbox

Mostrar información sobre todos los contactos de Exchange Online

Sintaxis del comando de PowerShell:

Get-Contact | FT Name,RecipientType

Mostrar información sobre todos los contactos de correo de Exchange Online

Sintaxis del comando de PowerShell:

Get-MailContact | FT Name,RecipientType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-MailContact | FT Name,RecipientType

Name                  RecipientType
----                  -------------
Allie Bellew          MailContact 
Chris Norred          MailContact 
Cindy White           MailContact

Mostrar información sobre todos los usuarios de correo de Exchange Online

En el entorno híbrido de Exchange, la cuenta de usuario de Active Directory local que tiene un buzón de correo local de Exchange se considerará Get-Mailuser.

Mostrar información sobre todos los usuarios de correo de Exchange Online

Sintaxis del comando de PowerShell:

Get-Mailuser | FT Name,RecipientType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailuser | FT Name,RecipientType

Name            RecipientType
----            -------------
ed200           MailUser 
ex2007          MailUser 
ex2010          MailUser 
ex2013          MailUser

Mostrar información sobre todos los usuarios de Exchange Online

Sintaxis del comando de PowerShell:

Get-User | Sort RecipientType | Select DisplayName,RecipientType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Sort RecipientType | Select DisplayName,RecipientType 

DisplayName                RecipientType
-----------                -------------
ex2007                     MailUser 
ex2013                     MailUser 
Selena Gomez               User 
John Armstrong             User 
Nicki Minaj                UserMailbox 
Justin Bieber              UserMailbox

Mostrar información sobre los grupos de Exchange Online

En esta sección, revisamos los comandos de PowerShell que podemos usar para mostrar información sobre el grupo de Exchange Online y el tipo de grupo específico, como grupo de seguridad, grupo de distribución, etc.

Mostrar información sobre todos los tipos de grupos de Exchange Online disponibles

Sintaxis del comando de PowerShell:

Get-Group | Sort GroupType |Select Name,DisplayName,GroupType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Group | Sort GroupType |Select Name,DisplayName,GroupType

Name                               DisplayName              GroupType 
----                               -----------              --------- 
inbal01                            inbal01                  Universal 
SharedMailboxes-group              SharedMailboxes-group    Universal 
office365_3fdb9f3bff               office365                Universal 
Support                            Support                  Universal, SecurityEnabled
info                               info                     Universal, SecurityEnabled
ATP-users                          ATP-users                Universal, SecurityEnabled
test03                             test03                   Universal, SecurityEnabled
Mobile Users                       Mobile Users             Universal, SecurityEnabled

Mostrar información sobre todos los grupos de Exchange Online que se consideran - Grupos de distribución

Sintaxis del comando de PowerShell:

Get-DynamicDistributionGroup |FT Name,DisplayName,RecipientType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-DynamicDistributionGroup |FT Name,DisplayName,RecipientType

Name             DisplayName   RecipientType 
----             -----------   ------------- 
sm-dy            sm-dy         DynamicDistributionGroup
test-01          test-01       DynamicDistributionGroup
test-07          test-07       DynamicDistributionGroup

Mostrar información sobre todos los grupos de Exchange Online que se consideran: grupos unificados

Sintaxis del comando de PowerShell:

Get-UnifiedGroup | FT Name,DisplayName,RecipientType,AccessType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-UnifiedGroup | FT Name,DisplayName,RecipientType,AccessType

Name                               DisplayName            RecipientType                   AccessType
----                               -----------            -------------                   ----------
BOB-OFFICE365_5d7917ddd4           BOB-OFFICE365          MailUniversalDistributionGroup  Public 
Eyal-001-uni_7eca52b0ac            Eyal-001-uni           MailUniversalDistributionGroup  Private 
Eyal-002-uni-PUBLIC_3bf86941dd     Eyal-002-uni-PUBLIC    MailUniversalDistributionGroup  Public 
office365_3fdb9f3bff               office365              MailUniversalDistributionGroup  Public

Mostrar información sobre todos los grupos de Exchange Online que se consideran un "grupo de seguridad"

Sintaxis del comando de PowerShell:

Get-Group | Where {$_.GroupType -like "*security*"} | FT Name,DisplayName,GroupType

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Group | Where {$_.GroupType -like "*security*"} | FT Name,DisplayName, GroupType

Name                                   DisplayName GroupType 
----                                   ----------- --------- 
Organization Management                Universal, SecurityEnabled
Recipient Management                   Universal, SecurityEnabled
View-Only Organization Management      Universal, SecurityEnabled
UM Management                          Universal, SecurityEnabled

Mostrar información sobre las carpetas públicas de Exchange Online

En esta sección, revisamos los comandos de PowerShell que podemos usar para mostrar información de las carpetas públicas de Exchange Online.

Mostrar información sobre todas las carpetas públicas de Exchange Online

El comando de PowerShell - Get-MailPublicFolder, muestra información solo sobre la jerarquía de carpetas públicas de “nivel superior”.

Sintaxis del comando PowerShell

Get-MailPublicFolder |FT Alias,DisplayName,RecipientType,EmailAddresses

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-MailPublicFolder |FT Alias,DisplayName,RecipientType

Alias       DisplayName      RecipientType
-----       -----------      -------------
root1       root             PublicFolder 
test002     test002          PublicFolder 
Jobs        Jobs             PublicFolder 
test300     test300          PublicFolder 
test400     test400          PublicFolder

Mostrar información sobre las carpetas públicas de Exchange Online + “carpetas públicas secundarias”

Si desea mostrar la "jerarquía de carpetas públicas completa" que incluye la carpeta pública de nivel superior + las "carpetas públicas secundarias", puede utilizar el siguiente comando de PowerShell.

Sintaxis del comando de PowerShell:

Get-PublicFolder “\” -Recurse

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-PublicFolder “\” -Recurse

Name                  Parent Path 
----                  ----------- 
IPM_SUBTREE 
Jobs                  \ 
Test200               \ 
test300               \ 
test400               \ 
layer-01-Test-400     \test400 
layer-02-test400      \test400\layer-01-Test-400
test500               \

Mostrar buzones de correo de Exchange Online que tienen una dirección de correo electrónico con un sufijo o alias de nombre de dominio específico

Busque y muestre buzones de correo de Exchange Online con una dirección de correo electrónico que incluya un nombre de dominio específico

Mostrar todos los buzones de correo de Exchange Online que tienen un correo electrónico con un sufijo de nombre de dominio específico

En el siguiente ejemplo, buscamos buzones de correo de Exchange Online, con una dirección de correo electrónico que incluya el nombre de dominio: o365info.com

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.EmailAddresses -like "*@o365info.com"} | FL DisplayName,EmailAddresses

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.EmailAddresses -like "*@o365info.com"} | FL DisplayName,EmailAddresses

DisplayName    : Adele
EmailAddresses : {SPO:SPO_d5a46ab4-0922-4d9c-b2f3-3ddbff048a32@SPO_e95bcc9e-2927-483d-ad36-7311a7152bdd, smtp:Adele@o365info.com, SMTP:Adele@o365info2.onmicrosoft.com, SIP:Adele@o365info.com}

DisplayName    : Alicia Keys
EmailAddresses : {SIP:Alicia@o365info.com, smtp:Alicia@o365info2.onmicrosoft.com, SMTP:Alicia@o365info.com}

DisplayName    : Angelina Jolie
EmailAddresses : {SPO:SPO_5b27dc17-68b0-442e-804b-aee5b4df9847@SPO_e95bcc9e-2927-483d-ad36-7311a7152bdd, SIP:Angelina@o365info.com, SMTP:Angelina@o365info.com, smtp:Angelina@o365info2.onmicrosoft.com}

DisplayName    : Aretha Franklin
EmailAddresses : {SIP:Aretha@o365info.com, SMTP:Aretha@o365info.com, smtp:Aretha@o365info2.onmicrosoft.com}

Busque y muestre buzones de correo de Exchange Online, con una dirección de correo electrónico que incluya un alias específico

El buzón de correo en línea de Exchange debe tener una dirección de correo electrónico que se defina como dirección de correo electrónico principal. Puede tener una dirección de correo electrónico adicional que se defina como: dirección de correo electrónico proxy.

Cuando buscamos un Alias específico (la “parte izquierda” de una dirección de E-mail), podemos definir si queremos buscar este alias solo si el Alias aparece en la dirección de E-mail principal o buscamos un Alias que aparecen en todas las direcciones de correo electrónico del buzón de Exchange Online.

Mostrar todos los buzones de correo de Exchange Online cuya dirección de correo electrónico principal incluye un alias específico

En este caso, utilizamos el parámetro de PowerShell "Dirección de correo electrónico" para buscar buzones de correo de Exchange Online, que tienen una dirección de correo electrónico principal que incluye el nombre de alias: Bob.

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.primarysmtpaddress -like "bob*"} | FL DisplayName,EmailAddresses

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.primarysmtpaddress -like "bob*"} | FL DisplayName,EmailAddresses

DisplayName    : Bob marley
EmailAddresses : {smtp:mrkt1@o365info.com, smtp:Albert@o365info.com, smtp:bobm@o365info.com, SIP:bob@o365info.com...}

Mostrar todos los buzones de correo de Exchange Online, cuyas direcciones de correo electrónico incluyen un Alias específico

En este caso, utilizamos el parámetro de PowerShell "Dirección de correo electrónico" para buscar buzones de correo de Exchange Online, que tengan una dirección de correo electrónico (cualquier dirección de correo electrónico proxy) que incluya el nombre de alias: Bob.

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.EmailAddresses -like "*bob*"} | FL DisplayName, EmailAddresses

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.EmailAddresses -like "*bob*"} | FL DisplayName, EmailAddresses

DisplayName    : Bob marley
EmailAddresses : {smtp:mrkt1@o365info.com, smtp:Albert@o365info.com, smtp:bobm@o365info.com, SIP:bob@o365info.com...}

Mostrar buzones de Exchange Online: buzones eliminados temporalmente y buzones inactivos

En esta sección, revisamos cómo usar los comandos de PowerShell que restringirán el resultado de la búsqueda solo para los buzones de correo de Exchange Online que se consideren: buzones de correo de Exchange Online eliminados temporalmente o buzones de correo de Exchange Online inactivos.

Mostrar información sobre todos los buzones de correo de Exchange Online que se consideran “buzones eliminados temporalmente”

Sintaxis del comando de PowerShell:

Get-Mailbox -SoftDeletedMailbox | FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox -SoftDeletedMailbox | FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

Name                        Alias      IsSoftDeletedByRemove IsInactiveMailbox
----                        -----      --------------------- -----------------
room001                     room001                     True             False
Katy Perry                  Katy                        True             False
michael jackson             michael                     True             False
James Brown_eb17e65f06      James                       True             False
Test100                     Test100                     True              True
test501                     test501                     True             False
test500                     test500                     True             False

Mostrar Exchange Online cuya cuenta de usuario (propietario) está deshabilitada

Sintaxis del comando de PowerShell:

Get-mailbox | Where {$_.AccountDisabled -eq $True} | FT Alias, UserPrincipalName,AccountDisabled

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-mailbox | Where {$_.AccountDisabled -eq $True} | FT Alias, UserPrincipalName,AccountDisabled 

Alias                                                           UserPrincipalName         AccountDisabled
-----                                                           -----------------         ---------------
Angelina                                                        Angelina@o365info.com     True
DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}    DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}@o365info.com True
DMARC-Spoof DMARC-Spoof@o365info.com                                                      True
hd                                                              hd@o365info.com True
Shared-MB01                                                     Shared-MB01@o365info.com  True
Shared-MB02                                                     Shared-MB02@o365info.com  True
Shared-MB03                                                     Shared-MB03@o365info.com  True

Mostrar información sobre todos los buzones de correo de Exchange Online que se consideran - “buzones inactivos”

Sintaxis del comando de PowerShell:

Get-Mailbox -InactiveMailboxOnly |FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox -InactiveMailboxOnly |FT Name,Alias ,IsSoftDeletedByRemove,IsInactiveMailbox

Name         Alias     IsSoftDeletedByRemove IsInactiveMailbox
----         -----     --------------------- -----------------
Test100      Test100                    True              True

Mostrar información sobre los buzones de correo de Exchange Online configurados con una zona horaria específica o un código de idioma específico”

Mostrar información sobre los buzones de correo de Exchange Online | Zona horaria específica

En el siguiente ejemplo, solicitamos filtrar el resultado de la búsqueda de buzones de correo de Exchange Online, que responden a la siguiente condición.

Mostrar buzones de correo de Exchange con una zona horaria específica

En el siguiente ejemplo, queremos obtener información sobre los buzones de correo de Exchange Online indicando que su zona horaria es=“Hora estándar del Pacífico. "

Sintaxis del comando de PowerShell:

Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.TimeZone -like "*Pacific Standard Time*"}

Ejemplo de salida de la consola PowerShell

PS C:\> Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.TimeZone -like "*Pacific Standard Time*"}

Identity       Language      DateFormat   TimeFormat     TimeZone 
--------       --------      ----------   ----------     -------- 
Demi           en-US         M/d/yyyy     h:mm tt        Pacific Standard Time 
Grace jones    en-US         M/d/yyyy     h:mm tt        Pacific Standard Time 
Rihanna        en-US         M/d/yyyy     h:mm tt        Pacific Standard Time

Nota: cuando un cliente de correo OWA selecciona esta zona horaria, la zona horaria aparece como - (GMT-08:00) Hora del Pacífico (EE. UU. y Canadá).

Obtenga una lista de valores de zonas horarias disponibles

Consejo: puede "obtener" información sobre los valores de las zonas horarias utilizando el siguiente comando de PowerShell:

Get-ChildItem "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Time zones" | FL pschildname

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-ChildItem "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Time zones" | FL pschildname

PSChildName : Afghanistan Standard Time

PSChildName : Alaskan Standard Time

PSChildName : Aleutian Standard Time

PSChildName : Altai Standard Time

PSChildName : Arab Standard Time

PSChildName : West Pacific Standard Time

PSChildName : Yakutsk Standard Time

Puede leer más información sobre el tema de los valores disponibles de “Zonas horarias” en el siguiente artículo: Valores del índice de zonas horarias de Microsoft

Mostrar información sobre los buzones de correo de Exchange Online | Idioma específico

En el siguiente ejemplo, solicitamos filtrar el resultado de la búsqueda de buzones de correo de Exchange Online, que responden a la siguiente condición.

Mostrar información sobre los buzones de correo de Exchange Online con un idioma específico

En el siguiente ejemplo, queremos mostrar buzones de correo de Exchange, cuya configuración de idioma=“en-GB ”.

Sintaxis del comando de PowerShell:

Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.Language -like "*en-GB*"}

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.Language -like "*en-GB*"}

Identity             Language       DateFormat TimeFormat TimeZone 
--------             --------       ---------- ---------- -------- 
Angelina             en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
Ayelet_9acbcfb3dc    en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
George Michael       en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
onprem120            en-GB          dd/MM/yyyy HH:mm      Samoa Standard Time

Mostrar el buzón de Exchange Online con retención por juicio o retención local

En esta sección, revisamos los comandos de PowerShell que podemos usar para buscar un buzón de Exchange Online específico, que está configurado como buzones de Exchange Online con Retención por litigio o Retención local.

Mostrar información sobre los buzones de correo de Exchange Online con retención por juicio

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.LitigationHoldEnabled -match "True"} | FT Alias , lit*

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.LitigationHoldEnabled -match "True"} | FT Alias , lit*

Alias     LitigationHoldEnabled LitigationHoldDate       LitigationHoldOwner   LitigationHoldDuration
-----     --------------------- ------------------       -------------------   ----------------------
Adele     True                  11/23/2016 2:52:34 PM    George@o365info.com   6000.00:00:00 
bob       True                  12/11/2016 1:20:09 PM    George@o365info.com   6000.00:00:00 
Depeche   True                  2/3/2016 2:29:08 PM      Bradp@o365pilot.com   970.00:00:00

Mostrar información sobre los buzones de correo de Exchange Online con retención local

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.InplaceHolds -ne $null} | FT Name,Alias,InPlaceHolds

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.InplaceHolds -ne $null} | FT Name,Alias,InPlaceHolds

Name         Alias     InPlaceHolds 
----         -----     ------------ 
Angelina     Angelina  {0e9a2a3160464d49a656127020a7c11a} 
Eyal200      Eyal200   {UniHd0bcaafd-c284-4bae-b46f-ef049559d45a}

Mostrar buzones de Exchange Online con Auditoría habilitada

Mostrar buzones de Exchange Online con Auditoría habilitada

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.AuditEnabled -eq “$True”} | FL Name,Alias,Audit*

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.AuditEnabled -eq “$True”} | Fl Name,Alias,Audit*

Name             : Adele
Alias            : Adele
AuditEnabled     : True
AuditLogAgeLimit : 90.00:00:00
AuditAdmin       : {Update, Copy, Move, MoveToDeletedItems...}
AuditDelegate    : {Update, Move, MoveToDeletedItems, SoftDelete...}
AuditOwner       : {Update, Move, MoveToDeletedItems, SoftDelete...}

Name             : bob
Alias            : bob
AuditEnabled     : True
AuditLogAgeLimit : 90.00:00:00
AuditAdmin       : {Update, Copy, Move, MoveToDeletedItems...}
AuditDelegate    : {Update, Move, MoveToDeletedItems, SoftDelete...}
AuditOwner       : {Update, Move, MoveToDeletedItems, SoftDelete...}

Mostrar información sobre los buzones de correo de Exchange Online, que se configuraron para reenviar automáticamente el correo electrónico a otra dirección de correo electrónico

La “Opción de reenvío” se puede configurar para reenviar automáticamente cada correo electrónico a otro destinatario en una de las siguientes opciones:

Opción 1: reenviar un mensaje de correo electrónico a un destinatario interno

Una configuración en la que el mensaje de correo electrónico se reenviará automáticamente a otros “destinatarios de Office 365” (del mismo inquilino de Office 365).

Esta opción definida por el parámetro PowerShell - ForwardingAddress

Opción 2: reenviar un mensaje de correo electrónico a un destinatario externo

Una configuración en la que el mensaje de correo electrónico se reenviará automáticamente a otro destinatario que se considerará "destinatario externo", es decir, el destinatario con la dirección de correo electrónico externa.

Esta opción definida por el parámetro PowerShell - ForwardingSmtpAddress

Mostrar buzones de correo de Exchange Online con el reenvío de correo electrónico habilitado para una dirección de correo electrónico interna

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.ForwardingAddress -ne $null}| Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.ForwardingAddress -ne $null}| Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

DisplayName              Alias         ForwardingAddress           ForwardingSmtpAddress 
-----------              -----         -----------------           --------------------- 
Angelina Jolie           Angelina      Eyal                        smtp:bradp@o365info.com
DMARC and Spoof E-mail   DMARC-Spoof   DMARC Report- dmarcian.com

Mostrar buzones de correo de Exchange Online con el reenvío de correo electrónico habilitado para una dirección de correo electrónico externa

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.ForwardingSmtpAddress -ne $null} | Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.ForwardingSmtpAddress -ne $null} | Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

DisplayName       Alias      ForwardingAddress ForwardingSmtpAddress 
-----------       -----      ----------------- --------------------- 
Angelina Jolie    Angelina   Eyal              smtp:bradp@o365info.com 
Bob marley        bob                          smtp:edron789@gmail.com

Mostrar buzones de correo de Exchange Online, que no aparecen en la GAL

De forma predeterminada, cada buzón de Exchange Online aparece en la GAL (Lista global de direcciones).

En algunos casos, los buzones de correo de Exchange Online específicos están configurados para "no aparecer" (buzones ocultos de las listas de direcciones) en la GAL.

Para poder obtener una lista de dichos buzones de correo de Exchange Online, podemos usar el siguiente comando de PowerShell.

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.HiddenFromAddressListsEnabled -eq $True} | FT Name,Alias,HiddenFromAddressListsEnabled

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.HiddenFromAddressListsEnabled -eq $True} | FT Name,Alias,HiddenFromAddressListsEnabled

Name                                                         Alias                                                        HiddenFromAddressListsEnabled
----                                                         ----- -----------------------------
DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852} DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852} True
Elvis                                                        Elvis                                                        True

Mostrar buzones de Exchange Online con buzón de archivo

Mostrar buzones de correo de Exchange Online que tienen un archivo

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.ArchiveStatus -eq 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.ArchiveStatus -eq 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Alias   RecipientTypeDetails ArchiveStatus
-----   -------------------- -------------
Alicia  UserMailbox          Active 
bradp   UserMailbox          Active 
mord    UserMailbox          Active

Mostrar una lista de buzones de correo de Exchange Online que no tienen un archivo

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.ArchiveStatus -ne 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

O

Sintaxis del comando de PowerShell:

Get-Mailbox | Where {$_.ArchiveStatus -eq 'none'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-Mailbox | Where {$_.ArchiveStatus -ne 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Alias      RecipientTypeDetails ArchiveStatus
-----      -------------------- -------------
Adele      UserMailbox          None 
admin      UserMailbox          None 
Angelina   UserMailbox          None 
Aretha     UserMailbox          None 
Beatles    UserMailbox          None

Mostrar buzones de correo de Exchange Online | Filtrar los resultados por propiedad específica o una combinación de propiedades del usuario (propietario del buzón)

En la siguiente sección, revisamos cómo filtrar el resultado de la búsqueda utilizando una "propiedad de usuario" específica, como Departamento, Título, Estado o Provincia, etc.

El “objeto” de PowerShell al que nos referimos es - no el buzón de correo de Exchange Online, sino un objeto que se describe como “objeto de usuario de Exchange” (Get-User)

Cuando se utiliza la interfaz de administración web de Exchange Online, las propiedades del usuario se muestran como parte de las propiedades del buzón de Exchange Online.

Aunque las propiedades del usuario se muestran como "parte del buzón de Exchange Online", para poder filtrar el resultado de la búsqueda, debemos abordar el "propietario del buzón de Exchange Online", es decir, el usuario que se considera propietario del buzón de Exchange Online, y no el propio buzón de correo de Exchange Online.

Mostrar "buzones de correo de usuarios de Exchange Online", con un valor de "Departamento" específico

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El departamento de usuarios del buzón es - “Ventas”

Sintaxis del comando de PowerShell:

Get-User | Where {$_.Department -eq “Sales”} |FT DisplayName,Department

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {$_.Department -eq “Sales”} |FT DisplayName,Department

DisplayName           Department
-----------           ----------
Brad Pitt             Sales 
Christina Aguilera    Sales

Mostrar "buzones de correo de usuarios de Exchange Online", con un valor de "Departamento" específico | Departamento X o Departamento Y

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El departamento de usuario del buzón es - “Ventas” o el departamento de usuario del buzón es - “Marketing”

Sintaxis del comando de PowerShell:

Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”)} | Select DisplayName,Department | Sort Department

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”)} | Select DisplayName,Department | Sort Department

DisplayName           Department
-----------           ----------
Beatles the           Marketing 
Beyonce               Marketing 
Craig David           Marketing 
Brad Pitt             Sales 
Christina Aguilera    Sales

Mostrar "buzones de correo de usuarios de Exchange Online", con un valor de "Departamento" específico y un valor de "Título" específico

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El título de usuario del buzón es: “Administrador”
  • El departamento del buzón del usuario es - “Ventas”

Sintaxis del comando de PowerShell:

Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

DisplayName    Department  Title 
-----------    ----------  ----- 
Brad Pitt      Sales       Manager

Mostrar "buzones de correo de usuarios de Exchange Online", con un valor de "Departamento" específico | Departamento X o Departamento Y + valor de título específico

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El título de usuario del buzón es - “Administrador. ”
  • El departamento del buzón del usuario es - “Ventas” o el departamento del buzón del usuario es - “Marketing. ”

Sintaxis del comando de PowerShell:

Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

DisplayName    Department  Title 
-----------    ----------  ----- 
Brad Pitt      Sales       Manager

Mostrar "buzones de correo de usuarios de Exchange Online", con un valor de "Departamento" específico | El nombre del departamento comienza con una cadena específica

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El departamento de usuarios del buzón comienza con la palabra - “Ventas”

En este ejemplo, la empresa tiene un par de departamentos que comienzan con la palabra "ventas", como: Ventas, Ventas EE.UU., etc.

Sintaxis del comando de PowerShell:

Get-User | Where {$_.Department -like “Sales*”} | FT DisplayName,Department

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {$_.Department -like “Sales*”} | FT DisplayName,Department

DisplayName           Department
-----------           ----------
Aretha Franklin       Sales UK 
Brad Pitt             Sales 
Christina Aguilera    Sales 
Elvis Preslay         Sales USA

Mostrar "buzones de correo de usuarios de Exchange Online", que su país o región "no es igual" a un valor de país o región específico

Este requisito suena un poco confuso.

Un ejemplo de tal requisito podría ser: una empresa con muchos sitios en todo el mundo.
La empresa necesita obtener una lista de usuarios de Exchange Online, que están ubicados en las sucursales de la empresa en todo el mundo, además de la sucursal de la empresa en Estados Unidos (no en Estados Unidos).

Muestra una lista de "buzones de correo de usuarios de Exchange Online", que responden a los siguientes parámetros:

  • El estado o provincia del buzón del usuario no es EE. UU.

Sintaxis del comando de PowerShell:

Get-User | Where {$_.CountryOrRegion -ne “USA”} | FT DisplayName,CountryOrRegion

Ejemplo de salida de la consola PowerShell:

PS C:\> Get-User | Where {$_.CountryOrRegion -ne “USA”} | FT DisplayName,CountryOrRegion

DisplayName        CountryOrRegion
-----------        ---------------
Aretha Franklin    Israel 
Beatles the        United Kingdom 
Billy              United Kingdom 
Bob marley         Israel 
Brad Pitt          Australia

Mostrar buzones de correo de Exchange Online | Filtrar los resultados por “Información de fecha”

En la siguiente sección, revisamos cómo crear una consulta de PowerShell relacionada con el valor de “Fecha\Hora” de un objeto específico.

En nuestro caso, estamos interesados en obtener información sobre los buzones de correo de Exchange Online que tienen una propiedad específica que tiene un valor específico de "Fecha\Hora". "

Sé que esta definición parece un poco confusa, por lo que proporcionaremos ejemplos más concretos en el orden anterior.

El objeto de buzón de Exchange Online incluye dos "propiedades" que incluyen un valor de: "Fecha\Hora". "

  1. El primer valor es la “Fecha\Hora” en la que se creó el buzón de Exchange Online. Este valor se define como “WhenCreated. "
  2. El segundo valor es: la "Fecha\Hora" en la que el usuario del buzón de Exchange (el propietario del buzón) accede (inicia sesión) a su buzón de Exchange Online. Este valor se define como “LastLogonTime. "

En la siguiente sección, me gustaría comenzar con una explicación de la forma en que usamos PowerShell para implementar consultas relacionadas con un valor "Fecha\Hora" y luego brindar ejemplos más específicos de la sintaxis del comando PowerShell que usamos para obtener información. sobre diferentes "marcos de tiempo", como minutos, horas, meses, años, etc.

Antes de comenzar con la información sobre la sintaxis específica del comando PowerShell, dediquemos unos momentos al concepto de: usar PowerShell para un "evento" de consulta que ocurre en un rango de tiempo específico.

Para crear la “consulta basada en tiempo” de PowerShell, necesitaremos definir los siguientes parámetros:

    1. El objeto
      El objeto concreto que solicitamos para obtener información sobre él. El objeto puede ser "Cuenta de usuario", "Buzón de Exchange", etc.
    2. La propiedad específica del objeto
      Por ejemplo, en un entorno de Office 365, podemos solicitar obtener información sobre una hora específica en la que se creó el buzón de Exchange Online.
      En Office 365, la propiedad que “abordamos” es - cuando se crea
    3. La unidad de tiempo
      PowerShell nos ofrece una variedad de "unidades de tiempo" que podemos usar, como milisegundos, segundos, minutos, hora, día, año, etc.
    4. Operador de PowerShell
      Este es el operador de PowerShell específico que utilizamos.

    Usando el operador de PowerShell con “Rangos de tiempo”

    En nuestro ejemplo, demostraré varios escenarios utilizando los dos operadores de PowerShell siguientes:

    1. ge (Mayor o igual que).
      El uso del operador "ge" nos ayudará a obtener información sobre un "evento" que "sucedió" desde un momento específico en adelante.
    2. le (Menor o igual a).
      El uso del operador “le” nos ayudará a obtener información sobre un “evento” que ocurrió antes de un momento específico.

    Para poder plasmar este concepto, usemos el siguiente ejemplo:

    El "punto de partida" es el comando de PowerShell: Get-Date, que "busca" la fecha actual (día, mes, año, etc.).

    En nuestro ejemplo específico, queremos definir un "intervalo de tiempo" de dos meses antes de la fecha actual.

    Para definir este rango de tiempo, utilizamos el siguiente comando de PowerShell:

    (Obtener fecha). Agregar meses (-2)

    Tomamos la fecha actual y le restamos “2 meses”. "

    En nuestro ejemplo, la “hora actual” es el mes 8 (agosto) y el día es “15. "

    El resultado del comando de PowerShell - (Get-Date).AddMonths(-2), se obtendrá como un rango de tiempo, que abarca los siguientes meses: mes 6 y mes 7 hasta el mes actual (mes 8).

    Si queremos ser más precisos, el comando definirá un rango de tiempo, que comienza el 01/06 y
    finaliza el 15/08.

    1. Usando el operador ge (mayor o igual que) + rango de tiempo.

    Cuando utilizamos el operador ““ge” de PowerShell, con la combinación del comando -
    (Get-Date).AddMonths(-2), le pedimos a PowerShell, que nos muestre información sobre un evento, que sucedió en el siguiente rango horario: 01/06 hasta el 15/08.

    Los “puntos de rango de tiempo” se definen de la siguiente manera:

    El "punto de partida" del rango de tiempo se calcula tomando la fecha actual y restando dos meses de la fecha actual.
    En nuestro ejemplo, el punto de partida es el primer día del mes "6 . "

    El "Fin" del rango de tiempo es la "fecha actual". ”
    En nuestro ejemplo, la fecha actual es el día 15 del mes “8. "

    Nota: el valor de la "fecha actual" es solo un valor arbitrario que usamos para la demostración.

    1. Usando el operador le (menor o igual a) + rango de tiempo.

    Cuando usamos el operador “le” de PowerShell, con la combinación del comando -
    (Get-Date).AddMonths(-2), le pedimos a PowerShell, que nos muestre información sobre un “evento” que sucedió antes del siguiente intervalo de tiempo: 01/06.

    En el siguiente ejemplo, nos gustaría obtener información sobre los buzones de correo de Exchange Online que se crearon en un rango de tiempo específico.

    1. El “objeto” de PowerShell es un “buzón de Exchange Online”. ”
      (Representado por los cmdlets de PowerShell - Get-Mailbox).
    2. La propiedad de cuenta de usuario específica que “consultamos” es - “WhenCreated. ”
    3. La “unidad de tiempo” que utilizamos es - “Meses. ”

    Para poder obtener una lista de buzones de correo de Exchange Online que respondan a nuestra consulta específica, utilizamos los cmdlets (declaración) de PowerShell denominados “Dónde” para definir la condición y filtrar la información requerida.

    Escenario 1: información sobre buzones de correo de Exchange creados en los últimos dos meses.

    En este escenario, solicitamos obtener información sobre los buzones de correo de Exchange Online que se crearon en los últimos dos meses.

    Para definir el “intervalo de tiempo” que comenzó hace dos meses y dura hasta la fecha actual, utilizamos el operador de PowerShell ge (Mayor o igual a).

    Escenario 2: información sobre los buzones de Exchange que se crearon antes de los últimos dos meses.

    En este escenario, solicitamos obtener información sobre los buzones de correo de Exchange Online que se crearon antes de los últimos dos meses.

    Para definir el "intervalo de tiempo" que comenzó hace dos meses, desde la fecha actual, y dura "para siempre", utilizamos el operador de PowerShell - le (Menor o igual a).

    1#2 - Obtener información sobre la “Fecha\Hora”, en la que se creó el buzón de Exchange Online

    En la siguiente sección, proporciono varios ejemplos, de sintaxis de comandos de PowerShell, que nos ayudarán a filtrar información sobre - Obtener información sobre la “Fecha\Hora”, en la que se creó el buzón de Exchange Online en un rango de tiempo específico.

    • En la primera parte, buscaremos información sobre las cuentas de usuario de Office 365, que se crearon desde una fecha determinada en el pasado hasta la fecha actual.
    • En la segunda parte, buscaremos información sobre las cuentas de usuario de Office 365 que se crearon antes de un rango de fechas específico.

    Escenario 1#2: obtener información sobre el buzón de correo de Exchange Online, que se creó en el último intervalo de tiempo X.

    La “condición” de PowerShell que definimos, en base al operador de PowerShell -ge (Mayor o igual que)

    En nuestros ejemplos, queremos obtener información sobre los buzones de correo de Exchange que se crearon a partir de un "momento temporal" específico y posteriormente (mayor o igual a).

    Mostrar buzones de correo de Exchange Online que se crearon después de una fecha específica

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online que se crearon después de la siguiente fecha: 10/11/2016.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where-Object {$_.WhenCreated -gt “11/10/2016”} | FT DisplayName,WhenCreated

    Ejemplo de salida de la consola PowerShell:

    PS C:\> Get-Mailbox | Where-Object {$_.WhenCreated -gt “11/10/2016”} | FT DisplayName,WhenCreated
    
    DisplayName      WhenCreated 
    -----------      ----------- 
    Aretha Franklin  12/18/2016 9:01:58 AM 
    Bob marley       11/17/2016 7:41:32 PM 
    Demi Lovato      12/13/2016 1:23:08 PM 
    Rihanna          12/13/2016 1:22:21 PM 
    Shared-MB06      11/28/2016 3:31:46 PM 
    Shared-MB07      11/28/2016 3:32:30 PM

    Mostrar los buzones de correo de Exchange Online que se crearon durante los últimos X minutos

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online que se crearon en los últimos 160 minutos.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).Addminutes(-160))} | FT DisplayName,WhenCreated

    Mostrar los buzones de correo de Exchange Online que se crearon durante las últimas X horas

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online que se crearon en las últimas 40 horas.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddHours(-40))} | FT DisplayName,WhenCreated

    Mostrar buzones de correo de Exchange Online que se crearon durante los últimos X días

    En el siguiente ejemplo, buscamos buzones de Exchange Online que se crearon en los últimos 20 días.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).Adddays(-2))} | FT DisplayName,WhenCreated

    Mostrar buzones de correo de Exchange Online que se crearon durante los últimos X meses

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online que se crearon en los últimos 2 meses.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddMonths(-2))} | FT DisplayName,WhenCreated

    Muestra los buzones de correo de Exchange Online que se crearon en un mes específico.

    En el siguiente ejemplo, buscamos buzones de Exchange Online que se crearon en el mes de agosto (8).

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {($_.WhenCreated).Month -eq 8} | FT DisplayName,WhenCreated

    Mostrar buzones de correo de Exchange Online que se crearon durante los últimos X años

    En el siguiente ejemplo, buscamos buzones de Exchange Online que se crearon en los últimos 2 años.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddYears(-2))} | FT DisplayName,WhenCreated

    Mostrar buzones de correo de Exchange Online que se crearon en un año específico

    En el siguiente ejemplo, buscamos buzones de Exchange Online que se crearon durante el año 2016.

    Escenario 2#2: obtener información sobre el buzón de correo de Exchange Online, que se creó antes de un intervalo de tiempo específico.

    En el escenario actual, necesitamos obtener información sobre los buzones de correo de Exchange Online que se crearon antes de un intervalo de tiempo específico (en comparación con el escenario anterior en el que buscamos los buzones de correo de Exchange Online que se crearon durante el intervalo de tiempo especificado). intervalo de tiempo).

    Los intervalos de tiempo que definimos son: dos meses a partir de la fecha actual.
    La información que queremos obtener es: información sobre los buzones de correo de Exchange Online que se crearon antes de este intervalo de tiempo.

    Por ejemplo, en caso de que la fecha actual sea 15/12/2016, los resultados serán: todos los buzones de correo de Exchange Online que se crearon antes de la fecha: 01/10/2016 .

    Para cumplir con este requisito, utilizamos el operador de PowerShell -le (Menor o igual a).

    Mostrar buzones de correo de Exchange Online que se crearon antes de hace X días

    En el siguiente ejemplo, queremos obtener información sobre los buzones de correo de Exchange Online que se crearon antes del intervalo de tiempo de “40 días” o más.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).Adddays(-40))} | FT DisplayName,WhenCreated

    Muestra los buzones de correo de Exchange Online que se crearon antes de hace X días.

    En el siguiente ejemplo, queremos obtener información sobre los buzones de correo de Exchange Online que se crearon antes del intervalo de tiempo de “40 días” o más.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).Adddays(-40))} | FT DisplayName,WhenCreated

    Mostrar buzones de correo de Exchange Online que se crearon antes de hace X meses

    En el siguiente ejemplo, queremos obtener información sobre los buzones de correo de Exchange Online que se crearon antes del intervalo de tiempo de “2 meses” o más.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).AddMonths(-2))} | FT DisplayName,WhenCreated

    2#2 - Obtener información sobre el buzón de Exchange Online - Fecha del último inicio de sesión

    En la siguiente sección, revisamos cómo crear una consulta de PowerShell, que mostrará un "resultado de búsqueda filtrado" sobre: la fecha del último inicio de sesión, en la que el usuario de Exchange accedió o no a su buzón de Exchange Online.

    Escenario 1#2: mostrar información sobre los buzones de correo de Exchange Online que fueron "utilizados" por el usuario en un momento específico.

    En este escenario, queremos encontrar información sobre los buzones de correo de Exchange Online que fueron "utilizados" (accedidos) por sus "propietarios" en un rango de tiempo específico.

    Para poder cumplir con este requisito utilizamos el operador de PowerShell “-ge” (Mayor o igual que).

    Por ejemplo, en lugar de decir: "Quiero encontrar los buzones de Exchange Online a los que accedió su propietario en la última semana", el comando de PowerShell dirá: mostrar los buzones de Exchange Online cuyo "LastLogonTime" sea mayor o igual a ( ge) a “1 semana. "

    Nota: si necesita más información sobre los operadores de PowerShell disponibles, lea el primer artículo de la serie de artículos actual.

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en los últimos X minutos

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online a los que se accedió en los últimos 160 minutos.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).Addminutes(-160))} | FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en las últimas X horas

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en las últimas 40 horas.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).AddHours(-40))}| FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en los últimos X días

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en los últimos 40 días.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).Adddays(-30))}| FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en los últimos X meses

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en los últimos 2 meses.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).AddMonths(-2))}| FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en un mes específico

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en el mes de agosto (8).

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {($_.LastLogonTime).Month -eq 8}| FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en los últimos X años

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en los últimos 2 años.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date). AddYears(-2))}| FT DisplayName,LastLogonTime

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en un año específico

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en el año 2016.

    Sintaxis del comando PowerShell

    Get-Mailbox | Get-MailboxStatistics| Where-Object {($_.LastLogonTime).Year -eq 2016}| FT DisplayName,LastLogonTime -Autosize

    Escenario 2#2: mostrar información sobre los buzones de correo de Exchange Online que "NO fueron utilizados" por el usuario en un rango de tiempo específico.

    En este escenario, queremos encontrar información sobre los buzones de Exchange Online que no fueron "usados" (accedidos) por sus "propietarios" en un rango de tiempo específico.

    Para poder cumplir con este requisito utilizamos el operador de PowerShell “-le” (Menor o igual a).

    Por ejemplo, en lugar de decir: "Quiero encontrar buzones de Exchange Online a los que su propietario no accedió durante la última semana", el comando de PowerShell dirá: mostrar buzones de Exchange Online, que su " LastLogonTime” es menor o igual a (le) a “1 semana. "

    Nota: si necesita más información sobre los operadores de PowerShell disponibles, lea el primer artículo de la serie de artículos actual.

    ¡Este tipo de información puede ser útil para saber si está pagando por alguna licencia que no se está utilizando!

    Mostrar los buzones de Exchange Online a los que el usuario NO accedió (el usuario no inició sesión en el buzón) en los últimos X meses

    En el siguiente ejemplo, buscamos buzones de correo de Exchange Online a los que no se accedió en los últimos 2 meses.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -le ((Get-Date).AddMonths(-2))}| FT DisplayName,LastLogonTime -Autosize

    Mostrar los buzones de correo de Exchange Online a los que accedió el usuario (inicio de sesión del usuario en el buzón) en los últimos X años

    En el siguiente ejemplo, buscamos buzones de Exchange Online a los que se accedió en los últimos 2 años.

    Sintaxis del comando de PowerShell:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date). AddYears(-2))}| FT DisplayName,LastLogonTime -Autosize

      Artículos relacionados