Cómo mostrar una lista de OneDrive para colecciones de sitios de la empresa

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í.

Este artículo proporciona al administrador de una secuencia de comandos de PowerShell que se muestre todos los sitios OneDrive para la Empresa en su organización.

Paso 1: Conectar Shell de administración de SharePoint Online para su organización

Paso 2: Recopilar una lista de todos los OneDrive para los sitios de la empresa con Windows PowerShell

Consulte más información al final de este tema para obtener sugerencias sobre el uso de esta secuencia de comandos.

Antes de empezar

  • Instalar el Shell de administración de SharePoint. Para obtener más información, vea Configurar el entorno de SharePoint Online administración Shell de Windows PowerShell.

    Importante: Un administrador de inquilinos que sí mismos concede permiso de administrador de colección de sitio para el sitio de OneDrive para la Empresa de un usuario puede abrir bibliotecas de documentos de un usuario OneDrive para la Empresa y realizar las mismas tareas como propietario. Es importante para controlar y supervisar que se ha asignado el permiso de administrador de inquilinos de su organización.

  • La secuencia de comandos de PowerShell requiere que el modelo de objetos de cliente de SharePoint (OMSC) está instalado. Esto se indica mediante la siguiente línea: [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client").

  • Las secuencias de comandos de ejemplo PowerShell incluidos en este tema no se admiten en cualquier servicio o programa de soporte estándar de Microsoft. Las secuencias de comandos de ejemplo se proporcionan tal cual sin ninguna garantía. Microsoft renuncia a todas las garantías implícitas incluyendo, sin limitación, cualquier garantía de comerciabilidad o idoneidad para un propósito particular implícita. Todo el riesgo derivado del uso o el rendimiento de las secuencias de comandos de ejemplo y documentación permanece con usted. En ningún caso Microsoft, sus autores o cualquier otro implicado en la creación, producción o entrega de las secuencias de comandos será responsable de daños índole (incluidos, sin limitación, daños por pérdida de beneficios empresariales, interrupción del negocio, pérdida de información empresarial u otras pérdidas de carácter económico) derivadas del uso o no puede usar los scripts de ejemplo o la documentación, aunque Microsoft tenga constancia de la posibilidad de dichos daños.

Paso 1: Conectar Shell de administración de SharePoint Online para su organización

  1. En el equipo local, abra el Shell de administración de SharePoint Online y ejecute el siguiente comando:

    $credentials = Get-Credential

    En el cuadro de diálogo Solicitud de credenciales de Windows PowerShell, escriba el nombre de usuario y la contraseña de su cuenta de administrador global de Office 365 y, a continuación, haga clic en Aceptar.

  2. Ejecute el comando siguiente para conectar el Shell a su organización de SharePoint Online:

    Connect-SPOService -Url https://<yourdomain>-admin.sharepoint.com –credential $credentials
  3. Para comprobar que está conectado a su organización de SharePoint Online, ejecute el comando siguiente para conectarse al sitio de raíz de su organización:

    Get-SPOSite https://<yourdomain>.sharepoint.com

Paso 2: Recopilar una lista de todos los OneDrive para los sitios de la empresa con Windows PowerShell

En este paso, ejecute una secuencia de comandos de PowerShell para crear una lista de todos los sitios de OneDrive para la Empresa de su organización. Esta lista se guarda en un archivo de texto.

  1. Guarde el siguiente texto en un archivo de texto. Por ejemplo, puede guardarlo en un archivo llamado GetOD4BSites.txt.

    # Specifies the URL for your organization's SPO admin service
    $AdminURI = "https://your organization name-admin.sharepoint.com"
    
    # Specifies the User account for an Office 365 global admin in your organization
    $AdminAccount = "global admin account"
    $AdminPass = "password for global admin account"
    
    # Specifies the location where the list of MySites should be saved
    $LogFile = 'C:\Users\youralias\Desktop\ListOfMysites.txt'
    
    
    # Begin the process
    
    $loadInfo1 = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client")
    $loadInfo2 = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.Runtime")
    $loadInfo3 = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.UserProfiles")
    
    # Convert the Password to a secure string, then zero out the cleartext version ;)
    $sstr = ConvertTo-SecureString -string $AdminPass -AsPlainText –Force
    $AdminPass = ""
    
    # Take the AdminAccount and the AdminAccount password, and create a credential
    
    $creds = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($AdminAccount, $sstr)
    
    
    # Add the path of the User Profile Service to the SPO admin URL, then create a new webservice proxy to access it
    $proxyaddr = "$AdminURI/_vti_bin/UserProfileService.asmx?wsdl"
    $UserProfileService= New-WebServiceProxy -Uri $proxyaddr -UseDefaultCredential False
    $UserProfileService.Credentials = $creds
    
    # Set variables for authentication cookies
    $strAuthCookie = $creds.GetAuthenticationCookie($AdminURI)
    $uri = New-Object System.Uri($AdminURI)
    $container = New-Object System.Net.CookieContainer
    $container.SetCookies($uri, $strAuthCookie)
    $UserProfileService.CookieContainer = $container
    
    # Sets the first User profile, at index -1
    $UserProfileResult = $UserProfileService.GetUserProfileByIndex(-1)
    
    Write-Host "Starting- This could take a while."
    
    $NumProfiles = $UserProfileService.GetUserProfileCount()
    $i = 1
    
    # As long as the next User profile is NOT the one we started with (at -1)...
    While ($UserProfileResult.NextValue -ne -1) 
    {
    Write-Host "Examining profile $i of $NumProfiles"
    
    # Look for the Personal Space object in the User Profile and retrieve it
    # (PersonalSpace is the name of the path to a user's OneDrive for Business site. Users who have not yet created a 
    # OneDrive for Business site might not have this property set.)
    $Prop = $UserProfileResult.UserProfile | Where-Object { $_.Name -eq "PersonalSpace" } 
    $Url= $Prop.Values[0].Value
    
    # If "PersonalSpace" (which we've copied to $Url) exists, log it to our file...
    if ($Url) {
    $Url | Out-File $LogFile -Append -Force
    }
    
    # And now we check the next profile the same way...
    $UserProfileResult = $UserProfileService.GetUserProfileByIndex($UserProfileResult.NextValue)
    $i++
    }
    
    Write-Host "Done!"
  2. Editar las siguientes variables al principio del archivo de comandos y use la información específica de su organización. Los ejemplos siguientes, se suponen que el nombre de dominio de su organización es contoso.com.

    • $AdminURI   Especifica el URI para el servicio de administración de SharePoint Online, por ejemplo, https://contoso-admin.sharepoint.com.

    • $AdminAccount   Especifica una cuenta de administrador global de la organización de Office 365, por ejemplo, admin@contoso.onmicrosoft.com.

    • $AdminPass   Especifica la contraseña de la cuenta que se especifica por $AdminAccount, por ejemplo, "J$P1ter1".

    • $LogFile   Especifica la ruta de acceso completa del archivo de texto que se crea y contiene una lista de todos los sitios de OneDrive para la Empresa de su organización. Por ejemplo, para guardar este archivo en el escritorio, use 'C:\Users\<youralias>\Desktop\ListOfMysites.txt'.

  3. Guarde el archivo de texto como un archivo de script PowerShell cambiando el sufijo del nombre de archivo a. ps1. Por ejemplo, guarde el archivo GetOD4BSites.txt como GetOD4BSites.ps1.

  4. En el Shell de administración de SharePoint Online, vaya a la carpeta donde se encuentra la secuencia de comandos que creó en el paso anterior y, a continuación, ejecute la secuencia de comandos, por ejemplo:

    .\GetOD4BSites.ps1

Cuando la secuencia de comandos finaliza correctamente, se crea un archivo de texto en la ubicación especificada por la variable $LogFile en la secuencia de comandos. Este archivo contiene una lista de todos los sitios de OneDrive para la Empresa de su organización de SharePoint Online. El texto siguiente proporciona un ejemplo de cómo se debe aplicar el formato de la lista de sitios de este archivo. Puede quitar los sitios de este archivo si es necesario.

/personal/annb_contoso_onmicrosoft_com/
/personal/carolt_contoso_onmicrosoft_com/
/personal/esterv_contoso_onmicrosoft_com/
/personal/hollyh_contoso_onmicrosoft_com/
/personal/jeffl_contoso_onmicrosoft_com/
/personal/joeh_contoso_onmicrosoft_com/
/personal/kaia_contoso_onmicrosoft_com/

Volver al principio

Más información

Puede conectarse a un sitio de OneDrive para la Empresa mediante el cmdlet Get-SPOSite y puede cambiar la propiedad mediante el cmdlet Set-SPOSite . Una vez que es el propietario del sitio, puede usar lado objeto modelo (OMSC) cliente de SharePoint normal para seguir las operaciones de administración.

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.

×