Question Modification password dans AD + génération fichier

Plus d'informations
il y a 3 ans 2 mois - il y a 3 ans 2 mois #30371 par Noel
Bonjour,
Je cherche à mettre en place un script qui rechercherait d'ans l'AD un utilisateur et viendrait lui attribuer un mot de passe plus sécurisé. De plus, je souhaiterai qu'il y ait un fichier qui soit généré avec les informations d'identification.
J'ai une base de script mais ce n'est pas moi qui l'ai créé et je suis novice ++.
J'ai bien saisie les lignes qui servent de connexion à l'AD, de recherche de l'utilisateur existant ou non et la génération du mot de passe.
Est-il possible de m'aider ? En vous remerciant par avance. 
Voici la base :
Function random-password ($length = 10)
{
    $punc = 46..46
    $digits = 48..57
    $letters = 65..90 + 97..122

    $password = get-random -count $length `
        -input ($punc + $digits + $letters) |
            % -begin { $aa = $null } `
            -process {$aa += [char]$_} `
            -end {$aa}

    return $password
}
$pw = random-password


# Open connexion to DC1
Invoke-Command -ComputerName SVDC2.sih.cav -Credential ($cred=Get-Credential -Credential $null) -ScriptBlock {

    # Get User
    $User = Read-Host "Nom d'utilisateur: Login "
    $Password = Read-Host "Mot de passe : Motdepasse"

    if ($user -ne ""){
        # Get AD User
        $UserAD = Get-ADUser -Filter "SamAccountName -eq `"$User`"" -SearchBase "OU=RES_Users,OU=Classics,OU=Users,OU=CAV,DC=SIH,DC=CAV"

        # Check if user exist in AD
        If ($UserAD){

            If ($UserAD.enabled -eq $True) {

                # Generation password :
                Set-ADAccountPassword -Identity $User -NewPassword (ConvertTo-SecureString -AsPlainText $args[0] -Force) -Reset
                Write-Host "Le nouveau mot de passe est : $($args[0])"

                # Mot de passe fixe pour ICL :
                #Set-ADAccountPassword -Identity $User -NewPassword (ConvertTo-SecureString -AsPlainText "icl2019" -Force) -Reset
                #Write-Host "Le nouveau mot de passe est : nouveaumotdepasse"

                # Force change password
                # Set-ADUser -Identity $User -ChangePasswordAtLogon $true

                Send-MailMessage -From '************@**************' -To 'exploitation@***********' -Subject "Reset $User AD Password" -Body "$($args[1]) reseted $User AD Password" -SmtpServer 'smtp.sih.cav'

            }
            Else {Write-Warning "User disabled in AD"}
        }
        Else { Write-Warning "User not found in AD"}
    }
    Else { Write-Warning "Login is empty !"}

    pause

} -ArgumentList $pw,$cred.UserName
Dernière édition: il y a 3 ans 2 mois par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.060 secondes
Propulsé par Kunena