Auditar usuarios de Yammer en redes conectadas a Office 365
La red de Yammer de su empresa podría tener usuarios que ya no trabajen para su empresa. O bien, es posible que algunos usuarios de Yammer inicien sesión con su correo electrónico y contraseña porque no tienen una cuenta de Office 365 correspondiente. Para analizar estas situaciones y tomar medidas, puede auditar a los usuarios de Yammer. Esto implica exportar la lista de usuarios de Yammer, buscar el estado de estos usuarios de Yammer en Office 365 mediante el módulo de Azure Active Directory para Windows PowerShell y analizar los resultados y tomar medidas.
Además de auditar a los usuarios de Yammer, es posible que quiera comprender mejor cómo se puede administrar el servicio yammer sin problemas desde Office 365. Por ejemplo, puede administrar usuarios de Yammer a lo largo de su ciclo de vida desde Office 365 y aplicar Office 365 identidad para los usuarios de Yammer.
Exportación de la lista de usuarios de Yammer
Antes de ejecutar el script de auditoría, cree un archivo de entrada que contenga la lista de cuentas de usuario para que el script se use. El archivo de entrada se crea mediante la función Exportar usuarios en Yammer.
En Yammer, haga clic en el icono de configuración de
y, a continuación, haga clic en Red Administración.
Haga clic en Exportar usuarios.
En la página Exportar usuarios, seleccione Exportar todos los usuarios y después haga clic en Exportar.
Guarde el archivo exportado. El archivo se guarda como un archivo comprimido con una extensión de nombre de archivo .zip.
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 denominado users.csv.
Buscar el estado de los usuarios de Yammer en Office 365
Instale y configure el módulo de Azure Active Directory para Windows PowerShell. Para obtener instrucciones sobre esto, lea el siguiente documento: Ayuda de Azure AD.
Copie el código de ejemplo siguiente, péguelo en un editor de texto como el Bloc de notas y, a continuación, guarde el archivo como UserMatchToAzureAD.ps1.
No dude en modificarlo para satisfacer 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."
Desde un módulo de 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 del 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
Abra el archivo CSV de resultado y filtre todas las filas que muestran la columna exists_in_azure_ad como FALSE.
Cada una de ellas son cuentas que existen en Yammer, pero no en Office 365 o Azure AD. Para cada uno de ellos, decida si necesita:
Suspenda la cuenta de usuario en Yammer si el usuario no debe tener acceso.
Cree el usuario en Office 365 o Azure AD.
Una vez completadas estas operaciones, se recomienda volver a ejecutar estos pasos desde el principio para confirmar que todos los usuarios se encuentran ahora en Office 365 y Azure AD.
Si va a aplicar Office 365 identidad, 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 estar seguro de que todos los usuarios inician sesión ahora 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 Aplicar Office 365 identidad para los usuarios de Yammer.