Jump to content

Kuddel071089

Members
  • Gesamte Inhalte

    559
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von Kuddel071089

  1. Wieso will man Ticketnummern im AD haben? Kann man im Ticketsystem bei euch nicht suchen?

     

    Mit Powershell kannst du AD Felder lesen und schreiben. Du brauchst dafür nicht mal mehr eine csv Zwischendatei.

     

    Man kann im TIcketsystem suchen, aber mit den Nummern direkt in der Userbeschreibung geht es deutlich schneller

     

    Ja mit PS kann man lesen und schreiben, nur leider sind meine Skills noch begrenzt was das angeht

  2. problematisch könnte auch werden, dass sich teileweise mehrer einträge untereinander befinden

     

    REQ-2014-12343 User erstellt

    REQ-2015-13541 Mail-Account hiznugefügt

     

    Die Einträge dürfen natürlich nicht verloren gehen, Zwecks historie.

     

    Mein erster Ansatz war: Export samAccountName und Description in eine CSV. In der CSV "SR" durch "REQ-" ersetzen und dann die geänderten Daten wieder einfügen.

     

    Problem 1: beim Export wird nicht der komplette Inhalt vom Descriptionfeld exportiert

    Problem 2: Eine Info für X User einfügen bekomme ich hin. verschiedene Infos, für verschiedene User nicht ^^

    Problem 3: Es dürfen keine Einträge verloren gehen

  3. Hallo zusammen,

     

    bei jedem AD User ist im Beschreibungsfeld eine Ticketnummer hinterlegt.

     

    Leider wurden diese Nummer nicht immer einheitlich geplegt.

     

    Beispiel: REQ-2015-12345 oder SR 2015-12345

     

    Gibt es die Möglichkeit diese Einträge (REQ / SR) zu vereinheitlichen ?

     

    Irgendwie per Powershellscript -> suchen und ersetzen ?

     

     

    Danke schonmal

  4. Dann änder doch einfach den Alias bei z.B. Heirat ;)

     

    der alias wird ja geändert in den neuen usernamen, die alte adresse bleibt aber weiterhin erhalten.

     

    also müsste man abfragen, ob es eine mail-adresse gibt mit dem usernamen xy

     

    iwie in der form:

     

     

    get-mailbox -mailaddress $username
    

     

    if (Get-Mailbox -Identity "$username@xxxx.de") {
    cls
    Write-Host
    Write-Host -ForegroundColor Red "+++ Username im Exchange ist bereits vergeben +++"
    Write-Host
    Get-Mailbox -Identity $username@xxxx.de | select UserPrincipalName, DisplayName, EmailAddresses | fl
    Write-Host
    Write-Host -ForegroundColor Red "+++ Bitte Script neu starten +++"
    Sleep 5
    break
    }
    
    else {
    Write-Host
    Write-Host -ForegroundColor Green "+++ Username im Exchange ist noch frei +++"
    Sleep 2
    }
    
  5. Hallo zusammen,

     

    wenn bei uns ein User einen neuen usernamen bekomt (zb bei heirat), behält er seinen alten noch als Alias.

     

    Wenn jetzt ein neuer User angelegt werden soll, wir in unseren Script abgefragt, ob der User im AD existiert.

     

    Jetzt bräuchten wir noch eine Abfrage, ob der Username evtl schon bei jmd. als Alias eingetragen ist.

     

    Wie wäre der Befehl dafür ?

     

     

    Danke schonmal für die Hilfe

  6. Hallo zusammen,

     

    ich schreibe gerade ein Script, um Verezichnisse an zu legen.

     

    In meinem User-Script funktioniert der Check, ob der User schon existiert

    #Prüfen ob User bereits vorhanden ist
    
    if (Get-ADUser -Filter {samAccountName -eq $username}) {
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Username ist bereits vergeben +++"
    
    Write-Host
    
    Get-ADUser -Filter {samAccountName -eq $username} -Properties SamAccountName, Name, Company, department | select SamAccountName, Name, Company, Department | fl
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Script wird neu gestartet +++"
    
    Sleep 5
    
    Start-Process powershell.exe .\User_anlegen_0.4.ps1
    
    break
    
    }
    
    
    
    else {
    
    Write-Host
    
    Write-Host -ForegroundColor Green "+++ Username ist noch frei +++"
    
    Sleep 2
    
    
    
    }
    

    Das ganze wollte ich jetzt auf die Berechtigungsgruppen anwenden.

    #Prüfen ob Verzeichnis bereits vorhanden ist
    
    if (Get-ADGroup -Filter {samAccountName -eq "$name-RW"}) {
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Verzeichnis ist bereits vorhanden +++"
    
    Write-Host
    
    Get-ADGroup -Filter {samAccountName -eq "$name-RW"} -Properties SamAccountName, Info, Company, department | select SamAccountName, Info, Company, Department | fl
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Script wird neu gestartet +++"
    
    Sleep 5
    
    Start-Process powershell.exe .\Verzeichnis_anlegen_0.1.ps1
    
    break
    
    }
    
    
    
    else {
    
    Write-Host
    
    Write-Host -ForegroundColor Green "+++ Verzeichnis ist noch nicht vorhanden +++"
    
    Sleep 2
    
    
    
    }
    

    Problem jetzt ist, dass existierende Verzeichnise nicht gefunden werden. Ich bekomme dann auch immer die Meldung, dass das Verzeichnis nicht existiert, bzw. die Berechtigungsgruppe dafür, obwohl sie im AD definitiv vorhanden ist.

     

    Hat jemand eine Idee, wie ich das Problem lösen kann.

     

     

    Danke schon einmal


    Habs schon selber lösen können. Problem waren die " in der IF Abfrage.

     

    mit einem zwischenschritt geht es

     

    $name-abfrage = "$name-RW"

     

    und dann

     

     

    #Prüfen ob Verzeichnis bereits vorhanden ist
    
    if (Get-ADGroup -Filter {samAccountName -eq $name_abfrage}) {
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Verzeichnis ist bereits vorhanden +++"
    
    Write-Host
    
    Get-ADGroup -Filter {samAccountName -eq $name_abfrage} -Properties SamAccountName, Info, Company, department | select SamAccountName, Info, Company, Department | fl
    
    Write-Host
    
    Write-Host -ForegroundColor Red "+++ Script wird neu gestartet +++"
    
    Sleep 5
    
    Start-Process powershell.exe .\Verzeichnis_anlegen_0.1.ps1
    
    break
    
    }
    
    
    
    else {
    
    Write-Host
    
    Write-Host -ForegroundColor Green "+++ Verzeichnis ist noch nicht vorhanden +++"
    
    Sleep 2
    
    
    
    }
    
  7. Hallo zusammen,

     

    ich versuchte gerade User per Powershell Scrpt zu verschieben.

     

    OIch nutze dazu folgenden Befehl:

    Move-ADObject -Identity "CN=$displayname,OU=UserOU=$standort_alt,DC=xxx,DC=local" -TargetPath "OU=User,OU=$standort_neu,DC=xxx,DC=local"

    Bei uns sieht der Username wie folgt aus

    Mustermann, Max
    

    Alle varibalen sind richtig, nur leider kann kein Object mit der ID des Displayname gefunden werden

     

     

  8. Da bist du im Irrtum - der Speicher bleibt in der Datenbank reserviert, wird dann nach der eingestellten Tumbstone (Default 30 Tage?) freigegeben und steht als Whitespace zur Verfügung, die DB wird dadurch nicht kleiner - wenn das deine Annahme war.

    https://technet.microsoft.com/en-us/library/bb232039%28v=exchg.150%29.aspx?f=255&MSPPError=-2147217396

     

    Ggf. sind übrigens einige Rechtlichen Aspekte zu beachten, aber das muss mit eurem Rechtsbeistand geklärt werden.

    Enthält die Mailbox des Users Firmen -  Daten, die gemäß GDPDU aufbewahrt werden müssen, muss das Postfach Archiviert werden.

    Frist von 10 Jahren +1 Tag beachten.

    (Angebote, Bestellungen, Rechnungen etc.)

     

    Nur so als Einwand ;)

     

    für die archivierung habe wir ein extra email archiv (ema von artec)

     

    sprich das ex konto kann gelöscht werden

  9. Willst du nur den Nutzer im AD deaktivieren, und die Exchange Mailbox nicht anfassen, nutze entsprechende Active Directory Befehle - z.b. Disable-AdAccount.

     

    Der AD User wird vorher in meinen Script deaktiviert.

     

    Ich möchte auch den Exchange-User deaktivieren, damit der Account dann nach 90 Tage glaube ich engültig gelöscht wird und nicht weiter Speicher auf dem Exchange belegt

  10. Hallo zusammen,

     

    ich sitze gerad an einem Script um User von einem Standort zu einem andern zu verschieben.

     

    Da einer unserer Standorte eine gesonderte Mail-Domain hat, muss diese natürlich angepasst werden.

     

    Leider funktioniert mein Befehl nicht

    Set-Mailbox  <Identity> -EmailAddress <Email Address>
    

     

    ...
    Set-Mailbox  $username -EmailAddress $username@$domain2
    

     

     

    Laut fehlermeldung ist der Parameter EmailAdress nicht eindeutig

  11. Hallo zusammen,

     

    in unserem 2012er FileCluster ist eine 2TB Parttition langsam voll.

     

    Daher wollte ich die Daten eines Standort auf eine neue Partition auf dem 2. CLusterserver migrieren.

     

    Das kopieren via Robocopy hat an sich funktioniert, nur lieder wurden die Berechtigungen nicht kopiert.

     

    DIe FIlestruktur sind wie folgt aus

     

    Share\Data1\STANDORT\Bereiche

     

    Es gibt eine Gruppe die über alle Bereiche Rechte hat (für die Standort Admins) und in den Bereichen selber gibt es Unterverzeichnisse mit eigenen Berechtigungsgruppen für die Anwender.

     

    Wie bekomme ich es jetzt mit Robocopy hin, dass alle Berechtigungen korrekt übernommen werden.

     

    Ich habe bereits /COPYALL, /SEC, /COPY:DATSOU ausprobiert aber iwie führte das alles nicht zun Erfolg,

     

     

    Ich hoffe ihr könnt mir weiterhelfen

     

     

     

  12. Wenn Dein Username "Müller" ist, dann kann "-Identity" das nicht verarbeiten. Du brauchst die Angabe als "CN=Müller,OU=...dc=wieauchimmer" oder die ObjectGUID wie 599c3d2e-f72d-4d20-8a88-030d99495f20.

    Siehe auch: help Rename-ADObject -Full

     

    kann man denn den User an sich Über den eindeutigen SamAccountName umbenennen ?

     

    Das ist meiner Meinung nach der einfachste Weg, sofern es geht ^^

    Also das umbennen mit dem DistinguishedName funktioniert jetzt. Nur leider ist das Feld "UserPrincipalName" danach immer leer.

     

    Obowl ich sage

    Set-ADUser -UserPrincipalName "$username_neu"

     

    kann man denn den User an sich Über den eindeutigen SamAccountName umbenennen ?

     

    Das ist meiner Meinung nach der einfachste Weg, sofern es geht ^^

    Also das umbennen mit dem DistinguishedName funktioniert jetzt. Nur leider ist das Feld "UserPrincipalName" danach immer leer.

     

    Obowl ich sage

    Set-ADUser -UserPrincipalName "$username_neu"

     

    FEHLER GEFUNDEN:

     

     

    Set-ADUser -UserPrincipalName "$username_neu@xyz.local"
    
  13. Jepp. Du benennst erst um und versuchst dann den "alten" Account zu ändern. Den gibt es aber nicht mehr :)

     

    oh man, peinlich. stimmt, da muss natürlich $usernmae_neu hin

     

    $username = Muster
    $username_neu = Muster-M
    Rename-ADObject -Identity $username -NewName $username_neu
    

     

    Den AD User "Muster" gibt es, aber trotzdem bekomme ich immer die Meldung, dass "Muster" nicht gefunden werden konnte

  14. Hallo zusammen,

     

    ich versuche gerade User per Script um zu benennen.

     

     

    $username = "Mustermann"
    $nachname_neu = "Mustermann-Meyer"
    $vorname = "Max"
    $username_neu = "Mustermann-Meyer"
    
    Rename-ADObject -Identity $username -NewName $username_neu
    sleep -Seconds 10
    Set-ADUser -Identity $username -surname $nachname_neu -displayname "$nachname_neu, $vorname" -UserPrincipalName $username_neu -SamAccountname $username_neu

     

    Problem: Der User wird nicht gefunden, obwohl er korrekt geschrieben ist

     

     

     

  15. Hallo zusammen,

     

    ich sitzte gerade an einem Script um User zu deaktivieren.

     

    Bei uns ist es so, dass wir im Beschreibungsfeld des User immer bestimmte Infos nach dem Schema "Datum / Namenskürzel / Ticketnummer" eintragen.

     

    Nun hat jeder User einen Eintrag wann er erstellt wurde.

     

    Beim deaktivieren soll natürlich ebenfalls ein Eintrag hinzugefügt werden "Datum / Namenskürzel / Ticketnummer (User deaktiviert)"

     

    In bisherigen Scripts, mit denen das Beschreibungsfeld gefüllt wurde, habe ich immer den Befehl replace verwendet:

    ...
    Set-ADGroup $group.SamAccountName -replace @{description="$Datum / $Namenskürzel / $Ticketnummer"}
    

    Leider wird mit replace der bestehende Eintrag überschrieben. Als Ergebnis möchte ich aber zwei Einträge haben:

     

     

    Datum / Namenskürzel / Ticketnummer
    Datum / Namenskürzel / Ticketnummer (User deaktiviert)
    

     

    Hat jemand eine Idee, wie ich mein Vorhaben umsetzten kann?

     

     

    Danke schon einmal

  16. Hallo zusammen,

     

    ich sitze gerade an einem Script, um User zu daktivieren, inkl. Exchange-Konto.

     

    Wie es scheint wird der Mailaccpunt aber immer komplett gelöscht und nicht nur deaktiviert, so dass man ihn notfalls wiederherstellen könnte.

     

    Wir verwenden Exchange 2013.

     

    Hier ist ein Auszug aus meinem Script:

     

     

    #Exchange-User deaktivieren
    #Verbindung zu NTS606 aufbauen
    if($mail -eq "$username@hhla.de") {$ExSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://NTS606/powershell -Credential $user}
    if($mail -eq "$username@hhla.de") {Import-PSSession $ExSession}
    #Mailbox deaktivieren
    if($mail -eq "$username@xxxxx.de") {Disable-Mailbox -Idendity "$anzeigename"}
    

     

    Ist der Befehl evtl. falsch?
     

  17. Hallo zusammen,

     

    ich bin gerade dabei ein Script zu basteln um die Erstellung eines User zu vereinfachen.

     

    Ein Part dabei ist, die Erstellung eines persönlichen Homeverzeichnisses.

     

    Das Erstellen funktioniert, nur wie man jetzt die Berechtigungen per Powershell setzt weiß ich nicht.

     

     

    #Gruppe zum Mappen der Laufwerke
    Add-ADGroupMember Alle-$standort $username
    #Erstellung des Homverzeichnisses
    New-Item \\XXXXXXl\DFS\User\$username -ItemType directory
    

     

    Folgendes Berechtigungen sollen automatisch für das Userverzeichnis gesetzt werden:

     

    • Ordner durschsuchen / Datei ausführen
    • Ordner auflisten / Daten lesen
    • Attribute lesen
    • Erweiterte Attribute lesen
    • Dateien erstellen / Daten schreiben
    • Ordner erstellen / Daten anhägen
    • Attribute schreiben
    • Erweiterte Attribute schreiben
    • Unterordner löschen
    • Berechtigungen lesen

     

    Ich hoffe ihr könnt mir weiter helfen

  18. habe es jetzt so gelöst

     

     

    #Prüfen ob User bereits vorhanden ist
    if (Get-ADUser -Filter {samAccountName -eq $username}) {
    Write-Host
    Write-Host -ForegroundColor Red "+++ Username ist bereits vergeben +++"
    Write-Host
    Get-ADUser -Filter {samAccountName -eq $username} -Properties SamAccountName, Name, Company, department | select SamAccountName, Name, Company, Department | fl
    Write-Host
    Write-Host -ForegroundColor Red "+++ Script wird neu gestartet +++"
    Sleep 5
    Start-Process powershell.exe .\User_anlegen_0.1.ps1
    break
    }
    
    else {
    Write-Host
    Write-Host -ForegroundColor Green "+++ Username ist noch frei +++"
    Sleep 2
    
    }
    
×
×
  • Neu erstellen...