Auditer Viva Engage les utilisateurs dans les réseaux connectés à Microsoft 365

Le réseau Viva Engage de votre entreprise peut avoir des utilisateurs qui ne travaillent plus pour votre entreprise. Ou bien, certains utilisateurs Viva Engage peuvent se connecter avec leur adresse e-mail et leur mot de passe, car ils n’ont pas de compte Microsoft 365 correspondant. Pour analyser ces situations et prendre des mesures, vous pouvez auditer vos Viva Engage utilisateurs. Cela implique l’exportation de la liste des utilisateurs Viva Engage, la recherche des status de ces utilisateurs Viva Engage dans Microsoft 365 à l’aide du module Azure Active Directory pour Windows PowerShell, l’analyse des résultats et la prise d’action.

En plus de l’audit Viva Engage utilisateurs, vous souhaiterez peut-être en savoir plus sur la façon dont le service Viva Engage peut être géré en toute transparence à partir de Microsoft 365. Pour plus d’informations, consultez Appliquer l’identité Microsoft 365 pour les utilisateurs Viva Engage.

Exporter la liste des utilisateurs Viva Engage

Avant d’exécuter le script d’audit, vous créez un fichier d’entrée qui contient la liste des comptes d’utilisateurs pour le script. Vous créez le fichier d’entrée à l’aide de la fonction Exporter des utilisateurs dans Viva Engage.

  1. Dans Viva Engage, sélectionnez l’icône des paramètres de Viva Engage , puis sélectionnez Administration réseau.

  2. Sélectionnez Exporter des utilisateurs.

  3. Dans la page Exporter les utilisateurs, choisissez Exporter tous les utilisateurs, puis sélectionnez Exporter.

  4. Enregistrez le fichier exporté. Le fichier est enregistré en tant que fichier compressé avec l’extension de nom de fichier .zip.

  5. Accédez à l’emplacement où vous avez enregistré le fichier compressé et développez-le.

Remarque

Plusieurs fichiers sont contenus dans le fichier compressé. Vous avez uniquement besoin du fichier nommé users.csv.

Rechercher status d’utilisateurs Viva Engage dans Microsoft 365

  1. Installez et configurez le module Azure Active Directory pour Windows PowerShell. Pour obtenir des instructions à ce sujet, lisez le document suivant : aide Microsoft Entra ID.

  2. Copiez l’exemple de code suivant, collez-le dans un éditeur de texte tel que le Bloc-notes, puis enregistrez le fichier en tant queUserMatchToAzureAD.ps1.

    N’hésitez pas à le modifier en fonction des besoins de votre organization.

     <#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.  Viva Engage auditing tool for Office 365 looks for active Viva Engage accounts  that  are missing from Office 365 / Azure AD.  Takes User.csv file from Viva Engage Data Export as the input file.   Compares all Active Viva Engage 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. 
    
     azurepowershell
    
     This information can be used to double check licenses are assigned correctly for each user.  
    
     azurepowershell
    
     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 Viva Engage User Export tool  OutputFile: Output location to save the final CSV to  Example -  UserMatchToAzureAD.ps1 -InputFile .\Users.csv -OutputFile .\Results.csv  #> 
    
     azurepowershell
    
     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 Viva Engage 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 "Writing the output csv file..."
       $yammerusers | Export-Csv $Outputfile -NoTypeInformation 
       Write-Host "Done." 
    
  3. À partir d’un module Azure Active Directory pour Windows PowerShell fenêtre de commande, exécutez la commande comme dans l’exemple suivant, en transmettant le fichier d’entrée exporté à partir de Viva Engage et un emplacement de fichier de sortie.

    Exemple d’utilisation :

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

    Pour plus d’informations sur l’exécution du script, consultez le fichier PS1 ci-dessus.

Analyser les résultats et prendre des mesures

  1. Ouvrez le fichier CSV de résultat et filtrez toutes les lignes qui affichent la colonne exists_in_azure_ad sur FALSE.

    Chacun d’eux est un compte qui existe dans Viva Engage, mais pas dans Microsoft 365/Microsoft Entra ID. Pour chacun d’eux, décidez si vous devez :

    • Suspendez le compte d’utilisateur dans Viva Engage si l’utilisateur ne doit pas y avoir accès.

    • Créez l’utilisateur dans Microsoft 365/Microsoft Entra ID.

  2. Une fois ces opérations terminées, nous vous recommandons de réexécuter ces étapes à partir du début pour confirmer que tous les utilisateurs se trouvent désormais dans Microsoft Entra ID.

Après un audit complet, si vous appliquez l’identité Microsoft 365, envisagez de déconnecter tous les utilisateurs actuels pour vous assurer que tout le monde se connecte maintenant avec ses informations d’identification Microsoft 365, et ne pas utiliser d’informations d’identification mises en cache. Si vous choisissez de le faire, veillez à communiquer d’abord avec vos utilisateurs. Pour plus d’informations, consultez Appliquer l’identité Microsoft 365 pour les utilisateurs Viva Engage.