Auditar Yammer usuarios en redes conectadas a Office 365

La red de Yammer de la empresa puede tener usuarios que ya no trabajan para su empresa. O bien, Yammer usuarios pueden iniciar sesión con su correo electrónico y contraseña porque no tienen una cuenta Office 365 correspondiente. Para analizar estas situaciones y tomar medidas, puede auditar los usuarios Yammer usuario. Esto implica exportar la lista de usuarios de Yammer, encontrar el estado de estos usuarios de Yammer en Office 365 mediante Azure Active Directory Module para Windows PowerShell y analizar los resultados y realizar acciones.

Además de auditar Yammer usuarios, es posible que desee comprender más acerca de cómo el servicio Yammer se puede administrar sin problemas desde Office 365. Por ejemplo, puede administrar Yammer usuarios en todo su ciclo de vida desde Office 365 y Aplicar Office 365 identidad para Yammer usuarios.

Exportar la lista Yammer usuarios

Antes de poder ejecutar el script de auditoría, cree un archivo de entrada que contenga la lista de cuentas de usuario que usará el script. El archivo de entrada se crea mediante la función Exportar usuarios en Yammer.

  1. En Yammer, haga clic en el icono Yammer configuración Yammer de configuración. Y, a continuación, haga  clic en Administrador de red.

  2. Haga clic en Exportar usuarios.

    Yammer Menú Exportar usuarios.

  3. En la página Exportar usuarios, seleccione Exportar todos los usuarios y después haga clic en Exportar.

    Yammer Exportar opciones de usuarios: exportar todos los usuarios o exportar todos los usuarios desde (fecha).

  4. Guarde el archivo exportado. El archivo se guarda como un archivo comprimido con la extensión .zip.

  5. Vaya a la ubicación donde guardó el archivo comprimido y expándalo.

    Nota

    Hay varios archivos contenidos en el archivo comprimido. Solo necesita el archivo que se denomina users.csv.

Buscar el estado de Yammer usuarios en Office 365

  1. Instale y configure el módulo Azure Active Directory para Windows PowerShell. Para obtener instrucciones sobre esto, lea el siguiente documento: Ayuda de Azure AD.

  2. Copie el siguiente código de ejemplo, péguelo en un editor de texto como Bloc de notas y, a continuación, guarde el archivo como UserMatchToAzureAD.ps1.

    No dude en modificarlo para que se adapte a las necesidades de su organización.


<#Copyright 2016  Microsoft Licensed under the Apache License, Version 2.0 (the "License");  you may not use this file except in compliance with the License.  You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0  Unless required by applicable law or agreed to in writing, software  distributed under the License is distributed on an "AS IS" BASIS,  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the specific language governing permissions  and limitations under the License.  Yammer auditing tool for Office 365 looks for active Yammer accounts  that  are missing from Office 365 / Azure AD.  Takes User.csv file from Yammer Data Export as the input file.   Compares all Active Yammer accounts in the input file to user   lookup in Azure AD. User is searched by both email and proxyAddresses.   The output csv file is exactly matching the source file, but it includes  three new columns: exists_in_azure_ad, object_id and azure_licenses:  exists_in_azure_ad: Will be TRUE or FALSE, and signals that the user can be, or cannot be found in Office 365 / Azure AD  object_id: For users that can be found, lists the ObjectId in Azure AD  azure_licenses: For users that can be found, lists the plans assigned to the user in Azure AD. 

This information can be used to double check licenses are assigned correctly for each user.  

Params -  UseExistingConnection: Defines if the script should try to use an existing Azure AD connection. Will prompt for credentials and will start a new connection if $FALSE. Default is $FALSE  InputFile: Source CSV file of users, coming from the Yammer User Export tool  OutputFile: Output location to save the final CSV to  Example -  UserMatchToAzureAD.ps1 -InputFile .\Users.csv -OutputFile .\Results.csv  #> 
  
Param(
     [bool]$UseExistingConnection = $FALSE,
     [string]$InputFile = ".\Users.csv",
     [string]$Outputfile = ".\Results.csv"
    ) 
  if(!$UseExistingConnection){
       Write-Host "Creating a new connection. Login with your Office 365 Global Admin Credentials..."
       $msolcred = get-credential
       connect-msolservice -credential $msolcred
   }
   Write-Host "Loading all Office 365 users from Azure AD. This can take a while depending on the number of users..."
   $o365usershash = @{}
   get-msoluser -All | Select userprincipalname,proxyaddresses,objectid,@{Name="licenses";Expression={$_.Licenses.AccountplanId}} | ForEach-Object {
       $o365usershash.Add($_.userprincipalname.ToUpperInvariant(), $_)
       $_.proxyaddresses | ForEach-Object {
           $email = ($_.ToUpperInvariant() -Replace "SMTP:(\\*)*", "").Trim()
           if(!$o365usershash.Contains($email))
           {
               $o365usershash.Add($email, $_)
           }
       }
   }
   Write-Host "Matching Yammer users to Office 365 users"
   $yammerusers = Import-Csv -Path $InputFile | Where-Object {$_.state -eq "active"}
   $yammerusers | ForEach-Object {
       $o365user = $o365usershash[$_.email.ToUpperInvariant()]
       $exists_in_azure_ad = ($o365user -ne $Null)
       $objectid = if($exists_in_azure_ad) { $o365user.objectid } else { "" }
       $licenses = if($exists_in_azure_ad) { $o365user.licenses } else { "" }
       $_ | Add-Member -MemberType NoteProperty -Name "exists_in_azure_ad" -Value $exists_in_azure_ad
       $_ | Add-Member -MemberType NoteProperty -Name "azure_object_id" -Value $objectid
       $_ | Add-Member -MemberType NoteProperty -Name "azure_licenses" -Value $licenses
   } 
  Write-Host "Writting the output csv file..."
  $yammerusers | Export-Csv $Outputfile -NoTypeInformation 
  Write-Host "Done." 
  
  1. Desde un módulo Azure Active Directory para Windows PowerShell ventana de comandos, ejecute el comando como en el ejemplo siguiente, pasando el archivo de entrada exportado desde Yammer y una ubicación de archivo de salida.

    Ejemplo de uso:

UserMatchToAzureAD.ps1 -InputFile .\Users.csv -OutputFile .\Results.csv

Para obtener más información sobre cómo ejecutar el script, consulte el archivo PS1 anterior.

Analizar los resultados y tomar medidas

  1. Abra el archivo CSV de resultados y filtre todas las filas que muestran la exists_in_azure_ad columna como FALSE.

    Cada una de ellas son cuentas que existen en Yammer, pero no en Office 365 / Azure AD. Para cada uno de ellos, decida si necesita:

    • Suspenda la cuenta de usuario Yammer si el usuario no debería tener acceso.

    • Cree el usuario en Office 365 / Azure AD.

  2. Después de completar estas operaciones, le recomendamos que vuelva a ejecutar estos pasos desde el principio para confirmar que todos los usuarios se encuentran ahora en Office 365 y Azure AD.

Si está aplicando una identidad Office 365, después de una auditoría completa puede considerar la posibilidad de cerrar la sesión de todos los usuarios actuales, de modo que pueda asegurarse de que todos los usuarios inician sesión con sus credenciales de Office 365 y no usan credenciales almacenadas en caché. Si decide hacerlo, asegúrese de que se comunica a los usuarios. Más información en Enforce Office 365 identity for Yammer users.