J'essaie depuis 2 jours de créer un script qui me permettrait de créer des Temporarry Access Password sur Azure AD pour 2000 utilisateurs environ, ci-dessous le script que j'ai pu créer avec mes compétences un peu limité sur powershell :
# Specifie le chemin du fichier Excel contenant la liste des UPN des utilisateurs
$ExcelFilePath = "C:\Temp\Users.xlsx"
# Specifie le nom de la feuille de calcul dans le fichier Excel
$SheetName = "Users"
# Recupere la liste des UPN des utilisateurs a partir de la colonne A de la feuille de calcul
$UPNs = (Import-Excel -Path $ExcelFilePath -WorksheetName $SheetName | Select-Object -ExpandProperty UPN)
foreach ($UPN in $UPNs) {
# Récupérer l'objet utilisateur correspondant à l'UPN
$User = Get-AzureADUser -ObjectId $UPN
if ($User -ne $null) {
# Créer un Temporary Access Pass pour l'utilisateur
$TAP = New-MgUserAuthenticationTemporaryAccessPassMethod -UserId $User.ObjectId -IsUsableOnce -LifetimeInMinutes 43200
# Afficher le Temporary Access Pass pour l'utilisateur
Write-Host "Temporary Access Pass pour $($User.UserPrincipalName) : $($TAP.TemporaryAccessPass)"
# Ajouter le Temporary Access Pass à côté de l'UPN dans le fichier Excel
$rowIndexObject = (Import-Excel -Path $ExcelFilePath -WorksheetName $SheetName | where {$_.UPN -eq $UPN}).PSElementType
if ($rowIndexObject -ne $null) {
$rowIndex = $rowIndexObject[0].RowIndex
$cellAddress = "TAP$rowIndex"
$excel = Get-ExcelPackage -Path $ExcelFilePath
$excel.Workbook.Worksheets[$SheetName].Cells[$cellAddress].Value = $TAP.TemporaryAccessPass
Save-ExcelPackage -ExcelPackage $excel -Path $ExcelFilePath
} else {
Write-Host "L'UPN $UPN n'existe pas dans le fichier Excel."
}
}
else {
# Si l'utilisateur n'a pas été trouvé, afficher un message d'erreur
Write-Host "Utilisateur avec UPN $($UPN) non trouvé !"
}
}
Le script fonctionne très bien et il arrive a récupérer les UPN depuis mon fichier excel puis de créer les temporary access password mais il n'arrive pas a copier le résultat sur le fichier comme demandé, ci-dessous l'erreur qu'il me renvoie :
Utilisateur avec UPN ***@*** non trouvé !
Utilisateur avec UPN ***@*** non trouvé !
Pourtant il arrive très bien a les trouvers pour créer les TAP mais bizarrement il n'arrive pas a les retrouver pour écrire la sortie du TAP, et je n'ai malheureusement plus d'idée sur comment le résoudre,
Mon fichier excel est comme suit :
UPN TAP
***@***
***@***
j'ai vraiment besoin d'aide pour pouvoir finir le script,