Use la búsqueda de contenido para buscar en los buzones y OneDrive para la empresa para obtener una lista de usuarios

Importante:  Este artículo se ha traducido con traducción automática; vea la declinación de responsabilidades. Para su referencia, puede encontrar la versión en inglés de este artículo aquí.

La Centro de cumplimiento y seguridad de Office 365 proporciona una serie de cmdlets de Windows PowerShell que le permiten automatizar tareas que lleva mucho tiempo de exhibición de documentos electrónicos. Actualmente, la creación de una búsqueda de contenido en el Centro de cumplimiento y seguridad para buscar un gran número de ubicaciones de contenido custodio toma tiempo y preparación. Antes de crear una búsqueda, debe recopilar la dirección URL para cada sitio de OneDrive para la Empresa y después agregue cada buzón y OneDrive para la Empresa el sitio de la búsqueda. En futuras versiones, será más fácil hacerlo en la Centro de cumplimiento y seguridad. Hasta entonces, puede usar la secuencia de comandos para automatizar este proceso en este artículo. Esta secuencia de comandos le pide el nombre del dominio de Mi sitio de su organización (por ejemplo, contoso en la dirección URL https://contoso-my.sharepoint.com), una lista de direcciones de correo electrónico del usuario, el nombre de la búsqueda de contenido nuevo y la consulta de búsqueda para usar. La secuencia de comandos obtiene la dirección URL de OneDrive para la Empresa para cada usuario de la lista y, a continuación, crea y se inicia una búsqueda de contenido que busca en el sitio del buzón de correo y OneDrive para la Empresa para cada usuario en la lista, con la consulta de búsqueda que proporciona.

Estos son los pasos para que esto suceda:

Paso 1: Instalar el Shell de administración de SharePoint

Paso 2: Generar una lista de usuarios

Paso 3: Ejecutar la secuencia de comandos para crear e iniciar la búsqueda

Antes de empezar

  • Debe ser miembro del grupo de roles de administrador de exhibición de documentos electrónicos en la Centro de cumplimiento y seguridad y un administrador global de SharePoint Online para ejecutar el script en el paso 3.

  • Asegúrese de guardar la lista de usuarios que cree en el paso 2 y la secuencia de comandos en el paso 3 en la misma carpeta. Que le será más fácil ejecutar la secuencia de comandos.

  • La secuencia de comandos incluye control de errores mínima. Su objetivo principal es rápida y fácilmente examinar buzón y OneDrive para la Empresa de cada usuario.

  • Los scripts de ejemplo que aparecen en este tema no son soportados por ningún programa o servicio de soporte técnico de Microsoft. Los scripts de ejemplo aparecen "TAL CUAL", sin garantía de ningún tipo. Además, Microsoft no se hace responsable de cualquier garantía implícita, incluyendo, de manera enunciativa pero no limitativa, cualquier garantía implícita de comercialización o de calidad para cualquier propósito. Cualquier riesgo resultante del uso o resultado de los scripts y la documentación de ejemplo será únicamente responsabilidad suya. En ningún caso Microsoft, sus autores o cualquier persona involucrada en su creación, producción o entrega de los scripts será responsable de cualquier daño (incluidos, de manera enunciativa pero no limitativa, daños por pérdidas de beneficios de una empresa, interrupción de la actividad de una empresa, pérdidas de información de una empresa, o cualquier otro daño pecuniario), incluso si Microsoft supiera de la posibilidad de tales daños.

Paso 1: Instalar el Shell de administración de SharePoint Online

El primer paso es instalar el Shell de administración de SharePoint Online. No es necesario que use el shell de este procedimiento, pero debe instalarlo porque contiene los requisitos previos necesarios para que la secuencia de comandos que se ejecutan en el paso 3. Estos requisitos previos permiten la secuencia de comandos para comunicarse con SharePoint Online para obtener las direcciones URL para los sitios de OneDrive para la Empresa.

Vaya a Configurar el entorno de SharePoint Online administración Shell de Windows PowerShell y realizar el paso 1 y 2 de paso para instalar el Shell de administración de SharePoint Online.

Volver al principio

Paso 2: Generar una lista de usuarios

La secuencia de comandos en el paso 3 creará una búsqueda de contenido para buscar los buzones y OneDrive para la Empresa sitios de una lista de usuarios. Solo puede escribir las direcciones de correo electrónico en un archivo de texto, o puede ejecutar un comando en Windows PowerShell para obtener una lista de direcciones de correo electrónico y guardarlos en un archivo (que se encuentra en la misma carpeta que va a guardar la secuencia de comandos en el paso 3).

Aquí es un comando de Windows PowerShell (que se ejecutan con PowerShell remoto conectado a su organización Exchange Online ) para obtener una lista de direcciones de correo electrónico para todos los usuarios de su organización y guardarlo en un archivo de texto llamado Users.txt.

Get-Mailbox -ResultSize unlimited -Filter { RecipientTypeDetails -eq 'UserMailbox'} | Select-Object PrimarySmtpAddress > Users.txt

Después de ejecutar este comando, asegúrese de abrir el archivo y quitar el encabezado que contiene el nombre de propiedad, PrimarySmtpAddress. El archivo de texto solo debe contener una lista de direcciones de correo electrónico y nada más. Asegúrese de que no hay ninguna fila en blanco antes o después de la lista de direcciones de correo electrónico.

Volver al principio

Paso 3: Ejecutar la secuencia de comandos para crear e iniciar la búsqueda

Cuando se ejecuta la secuencia de comandos en este paso, le pedirá la siguiente información. Asegúrese de que tiene esta información preparada antes de ejecutar la secuencia de comandos.

  • Las credenciales de usuario  La secuencia de comandos utilizará sus credenciales para tener acceso a SharePoint Online obtener la URL OneDrive para la Empresa y conectarse a la Centro de cumplimiento y seguridad con PowerShell remoto.

  • Nombre de su dominio de Mi sitio  El dominio de Mi sitio es el dominio que contiene todos los sitios de OneDrive para la Empresa de su organización. Por ejemplo, si la dirección URL de su dominio de Mi sitio es https://contoso-my.sharepoint.com, debe escribir contoso cuando la secuencia de comandos solicita el nombre de su dominio de Mi sitio.

  • Ruta de acceso del archivo de texto en el paso 2  La ruta de acceso del archivo de texto que ha creado en el paso 2. Si el archivo de texto y la secuencia de comandos se encuentran en la misma carpeta, escriba el nombre del archivo de texto. En caso contrario, escriba la ruta de acceso completa del archivo de texto.

  • Nombre de la búsqueda de contenido   El nombre de la búsqueda de contenido que se va a crear la secuencia de comandos.

  • Consulta de búsqueda   Crear y ejecutar la consulta de búsqueda que se utilizará con la búsqueda de contenido. Para obtener más información sobre las consultas de búsqueda, vea consultas de palabra clave y condiciones de búsqueda para la búsqueda de contenido.

  1. Guarde el siguiente texto a un archivo de script Windows PowerShell usando un nombre de archivo sufijo. ps1; Por ejemplo, SearchEXOOD4B.ps1. Guarde el archivo en la misma carpeta donde guardó la lista de usuarios en el paso 2.

    # This PowerShell script will prompt you for the following information:
    #    * Your user credentials 
    #    * The name of your organization's MySite domain                                              
    #    * The pathname for the text file that contains a list of user email addresses
    #    * The name of the Content Search that will be created
    #    * The search query string
    # The script will then:
    #    * Find the OneDrive for Business site for each user in the text file
    #    * Create and start a Content Search using the above information
    
    
    # Get user credentials
    if (!$credentials)
    {
        $credentials = Get-Credential
    }
    
    # Get the user's MySite domain name.  We use this to create the admin URL and root URL for OneDrive for Business
    $mySiteDomain = Read-Host "What is your organization's MySite domain?  For example,  'contoso' for 'https://contoso-my.sharepoint.com'"
    $AdminUrl = "https://$mySiteDomain-admin.sharepoint.com"
    $mySiteUrlRoot = "https://$mySiteDomain-my.sharepoint.com"
    
    # Get other required information
    $inputfile = read-host "Enter the file name of the text file that contains the email addresses for the users you want to search"
    $searchName = Read-Host "Enter the name for the new search"
    $searchQuery = Read-Host "Enter the search query you want to use"
    $emailAddresses = Get-Content $inputfile | where {$_ -ne ""}  | foreach{ $_.Trim() }
    
    # Connect to Office 365
    if (!$s -or !$a)
    {
        $s = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "https://ps.compliance.protection.outlook.com/powershell-liveid" -Credential $credentials -Authentication Basic -AllowRedirection -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
        $a = Import-PSSession $s -AllowClobber
    
        if (!$s)
        {
            Write-Error "Could not create PowerShell session."
            return;
        }
    }
    
    # Load the SharePoint assemblies from the SharePoint Online Management Shell
    # To install, go to http://go.microsoft.com/fwlink/p/?LinkId=255251
    if (!$SharePointClient -or !$SPRuntime -or !$SPUserProfile)
    {
        $SharePointClient = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client")
        $SPRuntime = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.Runtime")
        $SPUserProfile = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.UserProfiles")
    
        if (!$SharePointClient)
        {
            Write-Error "SharePoint Online Management Shell isn't installed, please install from: http://go.microsoft.com/fwlink/p/?LinkId=255251 and then run this script again"
            return;
        }
    }
    
    if (!$spCreds)
    {
        $spCreds = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($credentials.UserName, $credentials.Password)
    }
    
    # Add the path of the User Profile Service to the SPO admin URL, then create a new webservice proxy to access it
    $proxyaddr = "$AdminUrl/_vti_bin/UserProfileService.asmx?wsdl"
    $UserProfileService= New-WebServiceProxy -Uri $proxyaddr -UseDefaultCredential False
    $UserProfileService.Credentials = $credentials
    
    # Take care of auth cookies
    $strAuthCookie = $spCreds.GetAuthenticationCookie($AdminUrl)
    $uri = New-Object System.Uri($AdminUrl)
    $container = New-Object System.Net.CookieContainer
    $container.SetCookies($uri, $strAuthCookie)
    $UserProfileService.CookieContainer = $container
    
    Write-Host "Getting each user's OneDrive for Business URL"
    $urls = @()
    foreach($emailAddress in $emailAddresses)
    {
        try
        {
            $prop = $UserProfileService.GetUserProfileByName("i:0#.f|membership|$emailAddress") | Where-Object { $_.Name -eq "PersonalSpace" } 
            $url = $prop.values[0].value
            $furl = $mySiteUrlRoot + $url
            $urls += $furl
            Write-Host "-$emailAddress => $furl"
        }
        catch
        {
            Write-Warning "Could not locate OneDrive for $emailAddress"
        }
    }
    
    Write-Host "Creating and starting the search"
    $search = New-ComplianceSearch -Name $searchName -ExchangeLocation $emailAddresses -SharePointLocation $urls -ContentMatchQuery $searchQuery
    
    # Finally, start the search and then display the status
    if($search)
    {
        Start-ComplianceSearch $search.Name
        Get-ComplianceSearch $search.Name
    }
    
  2. Abra Windows PowerShell y vaya a la carpeta donde guardó la secuencia de comandos y la lista de usuarios del paso 2.

  3. Iniciar la secuencia de comandos; Por ejemplo:

    .\SearchEXOOD4B.ps1
  4. Cuando se le solicite sus credenciales, escriba su dirección de correo electrónico y contraseña y, a continuación, haga clic en Aceptar.

  5. Escriba la siguiente información cuando se le solicite la secuencia de comandos. Escriba cada fragmento de información y, a continuación, presione ENTRAR.

    • El nombre de su dominio de Mi sitio.

    • La ruta de acceso del archivo de texto que contiene la lista de usuarios.

    • Un nombre para la búsqueda de contenido.

    • La consulta de búsqueda (deje este en blanco para devolver todos los elementos de las ubicaciones de contenido).

    La secuencia de comandos obtiene las direcciones URL para cada sitio de OneDrive para la Empresa y, a continuación, crea y comienza la búsqueda. Puede ejecutar el cmdlet Get-ComplianceSearch para mostrar las estadísticas de búsqueda y los resultados, o puede ir a la página de búsqueda de contenido en el Centro de cumplimiento y seguridad para ver información sobre la búsqueda.

Volver al principio

Nota: Declinación de responsabilidades de traducción automática: Este artículo se ha traducido con un sistema informático sin intervención humana. Microsoft ofrece estas traducciones automáticas para que los hablantes de otros idiomas distintos del inglés puedan disfrutar del contenido sobre los productos, los servicios y las tecnologías de Microsoft. Puesto que este artículo se ha traducido con traducción automática, es posible que contenga errores de vocabulario, sintaxis o gramática.

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×