Kuddel071089 9 Geschrieben 1. März 2017 Melden Teilen Geschrieben 1. März 2017 Hallo zusammen, bei der Einrichtung eines Users wird per GUI Kalender ein Ablaufdatum für externe User gewählt. Z.B. 31.03.2017. Wenn das Einrichtungskript jetzt das Ablaufdatum des AD-User setzt, läuft der User am Anfang des Tages (31.03.2017 00:00 Uhr) und nicht am Ende des Tages (31.03.2017 23:59 Uhr) aus. Daher müsste man auf das anegebene Datum immer +1 Tag rechnen. Ich habe es erst so versucht #Datum aufsplitten $tag = $($ablaufdatum_projektuser.substring(0,2)) $monat = $($ablaufdatum_projektuser.substring(3,2)) $jahr = $($ablaufdatum_projektuser.substring(6,4)) #Einen Tag hinzufügen, damit der Account korrekt abläuft $tag = [INT]$tag +1 #Neues Datum zusammensetzen $ablaufdatum_projektuser = "$tag"+"/"+"$monat"+"/"+"$jahr" #Ablaufdatum setzen Set-ADAccountExpiration $username $ablaufdatum_projektuser -Confirm:$false} Dieser Versucht klappt aber nur bis zum vorletzen Tag des jeweiligen Monats. Daher müsste man das irgendwie mit einer Datums-Funktion (AddDays) o.Ä. machen. Jemand ein Idee für mich? Schon einmal vielen Dank Zitieren Link zu diesem Kommentar
Dukel 451 Geschrieben 1. März 2017 Melden Teilen Geschrieben 1. März 2017 PS C:\Users\user> $datum = Get-Date 31.03.2017 PS C:\Users\user> $datum.AddDays(1) Samstag, 1. April 2017 00:00:00 Zitieren Link zu diesem Kommentar
testperson 1.660 Geschrieben 1. März 2017 Melden Teilen Geschrieben 1. März 2017 Hi,also wenn ich ein Ablaufdatum in der GUI mit 31.03.2017 setze meldet mir die PowerShell mit "Get-ADUser test -Properties * | fl AccountExpirationDate": "AccountExpirationDate : 01.04.2017 00:00:00". Oder auch auf die Schnelle zusammen geschustert: Get-ADUser test -Properties samAccountName, AccountExpirationDate | %{ Set-ADAccountExpiration -Identity $_.samAccountName -DateTime ($_.AccountExpirationDate).AddDays(1) } Gruß Jan Zitieren Link zu diesem Kommentar
Kuddel071089 9 Geschrieben 2. März 2017 Autor Melden Teilen Geschrieben 2. März 2017 (bearbeitet) Hi, also wenn ich ein Ablaufdatum in der GUI mit 31.03.2017 setze meldet mir die PowerShell mit "Get-ADUser test -Properties * | fl AccountExpirationDate": "AccountExpirationDate : 01.04.2017 00:00:00". Oder auch auf die Schnelle zusammen geschustert: Get-ADUser test -Properties samAccountName, AccountExpirationDate | %{ Set-ADAccountExpiration -Identity $_.samAccountName -DateTime ($_.AccountExpirationDate).AddDays(1) } Gruß Jan Ja das ist richtig. Ich bekomme das Ablaufdatum aber von einer Website als Variable, die ich per Powershell weiterverarbeite. Setzt man das Datum dann per Powershell auf 31.03.17, sagt mit die AD-Verwatlungskonsole, dass der User am 30.03.17 abläuft. Daher muss ich auf das Datum der Variable einen Tag drauf rechnen, nur weiß ich nicht wie Was würde ich nur ohne Google machen :-D $ablaufdatum_projektuser = "31.03.2017" $datum = Get-Date $ablaufdatum_projektuser $ablaufdatum_projektuser = $datum.AddDays(+1).ToString("dd.MM.yyyy") $ablaufdatum_projektuser bearbeitet 2. März 2017 von Kuddel071089 Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.