Käyttämällä PowerShelliä Arkisto Postilaatikot PST perustuu AD lastLogonTime Exchange 2007 ...

Andy Grogan on 10 marraskuu 2011 · 3 kommenttia

vuonna Exchange 2007 (Admin) , Exchange 2007 (General) , Exchange 2007 Backup , Exchange 2007 skriptejä , PowerShell

Vähän aikaa sitten törmäsin siisti pieni ilmainen työkalu PowerShell kutsutaan aktiivisia käyttäjiä Tracker PowerShell komentosovelmalla niminen yhtiö NetWrix .
Tämä cmdlet pohjimmiltaan tarjotaan mukava, helppokäyttöinen kääre konsernin viime kirjautumistietoja tilien Active Directory (kuten ehkä tiedättekin lastlogon ominaisuutta ei toistettavissa 2003 ympäristöissä, ja voi olla hieman vaikea keskimäärin käyttäen script ).

Olen alun perin alkoi käyttää NetWrix moduuli raportointi aktiivinen tilitiedot sisällä hakemiston ympäristöissä kuitenkin mahdollisuuksia sitä voidaan käyttää osana laajempaa keino karsia, ja sulkea käyttämättömiä tilejä ja postilaatikot oli selvä - niin Tässä artikkelissa olen keksiä mallikomentotiedoston antaa teille joitakin ajatuksia siitä, miten voit automatisoida seuraavat prosessit käyttävät sitä:

  • Löytää tilejä, joita ei ole kirjautunut varten määrätyn ajan
  • Vie postilaatikot kiinni tilivelvollisille PST
  • Poista postilaatikot
  • Poista Active Directory tili
  • Siirrä AD tiettyyn OU

Valitettavasti NetWrix on nyt lopetettu tätä työkalua hyväksi GUI versio, joka mielestäni voidaan ajoittaa komentoriviltä - mutta voit silti ladata version, että olen käyttäen päässä täältä , joka Kehotan, että teet kuten toiminnallisuus on todella siistiä .

Käsikirjoitus itsessään pohjautuu löyhästi artikkelissa, että olen julkaissut täällä elokuussa tämän vuoden (2011) - mutta laajenee, kun sen toiminnallisuutta.

Yksi asia, joka minun on huomautettava, että tämä kirjoitus on vain esimerkki, eikä sitä pitäisi käyttää tuotannossa ilman muutoksia.
Jos aiot käyttää tätä script tuotantoympäristössä - sinun pitäisi tarkastella täytäntöönpanon poikkeuksia vienti ja poistaa prosessi - kuten yleensä on olemassa useita postilaatikoita tuotannon että nimellisarvo ei kirjautunut, mutta palvelevat tarkoitusta.

Lisäksi sinun pitäisi myös harkita ilman tilejä, jos omistaja on pitkän aikavälin puuttuessa.

Sanon on - käyttää omalla vastuulla!

Vaatimukset

Jotta hyödyntää tätä script sinun tulee olla seuraavat esitietovaatimukset asennettu Exchange (tai Management Server):

Lataa

Käsikirjoitus on ladattavissa alla - tai voit kopioida sen tämä sivu PS1 tiedosto johto / Exchange Server:

[ ExportMailboxesToPst-BasedonLogon.ps1 - 3KB ]

 # Vie Postilaatikko on PST, Poista postilaatikko, Active Directory Tili ja Siirrä OU # versio 1.0 # Kirjoittaja: Andy Grogan # HUOMAUTUS: Tämä skripti poistaa postilaatikon tilin tallentaa #  Muuta seuraavat sopivaksi  -User $ServiceAccount -Deny -InheritanceType 'All' -AccessRights 'FullAccess' -Confirm : $false Add-MailboxPermission -Identity $ strMailbox käyttäjän $ ServiceAccount-Deny-InheritanceType "All"-AccessRights "FullAccess"-Vahvista: $ false Lisää-MailboxPermission  -User $ServiceAccount -Deny -Identity $ strMailbox käyttäjän $ ServiceAccount-Deny  = $searcher .findall() if ( $user .count -gt 1) { $count = 0 foreach ( $i in $user ) { write-host $count ": " $i .path $count = $count + 1 } $selection = Read-Host "Please select item: " return $user [ $selection ].path } else { return $user [0].path } } function moveToDisabledOU ( $strDN ){ move-QADObject $ SAMName)) "$ user = $ etsijä. Findall () if ($ user. Count-gt 1) {$ count = 0 foreach ($ i $ user) {write-isäntä $ count": "$ i. Polku $ count = $ count + 1} $ valinta = Lue-Host "Valitse kohde" palauttaa $ user [$ valinta]. polku} else {return $ user [0]. path}} toiminto moveToDisabledOU ($ strDN) {liikkua -QADObject  .samAccountName $account =[ ADSI ] $path $account .psbase.invokeset( "AccountDisabled" , "True" ) $account .setinfo() Set-QADUser -Identity $user .samAccountName -Description "Account Disabled by PST Export Script" moveToDisabledOU $QADPath .DN } } } function export_ToPST ( $strMailID ){ Export-Mailbox -Identity $strMailID -PSTFolderPath $DestinationPSTPath -Confirm : $false } get_InactiveAccounts -Identity $ User. SAMAccountName $ tili = [ADSI] $ polku $ tilille. Psbase.invokeset ("accountdisabled", "True") $-tili. Setinfo () Set-QADUser-Identity $ user. SAMAccountName-kuvaus "Account Disabled by PST Export Script "moveToDisabledOU $ QADPath. DN}}} toiminto export_ToPST ($ strMailID) {Export-Postilaatikko-Identity $ strMailID-PSTFolderPath $ DestinationPSTPath-Vahvista: $ false} get_InactiveAccounts 

Käyttämällä script

Ennen script voidaan ajoittaa käyttöön, sinun täytyy varmistaa, että olet tehnyt seuraavat toimet:

  • Luo OU omassa Active Directory infrastruktuurin nimeltään "DisabledUsers" - katso alla

ADUC-DUPic

  • Luo käyttäjätili oikean Exchange Oikeudet omassa Exchange-ympäristössä - tilille tarvitsee postilaatikkoon ja ovat seuraavat Exchange käyttöoikeudet:
    • Exchange Server Administrator
    • Paikallinen Administrator johto / Exchange Server
  • Sinun pitäisi luoda hakemistoon Management Server, joka sisältää viedään pst-tiedostoja - minun esimerkki olen luonut kansio nimeltä "X: \ PSTs" - katso alla

pstExprt002

  • Sinun pitäisi muokata komentosarjatiedoston ja muuttaa seuraavat arvot (l ocated yläreunassa käsikirjoituksen, vastaamaan asetukset omassa ympäristössä)
  50 $ GblInactiveDays = 50 
  "X:\Psts" $ DestinationPSTPath = "X: \ PSTs" 
  "Administrator@ethan.local" $ ServiceAccount = "Administrator@ethan.local" 

Arvo $ gblInactiveDays on siemen, jonka ajan tiliä ei ole kirjautunut - minun esimerkki skripti etsiä Active Directory-tunnuksilla, joita ei ole kirjautunut sisään 50 päivää.

Arvo $ DestinationPSTPath on sijainti paikallinen johto palvelin, jossa pst-tiedostoja tallennetaan.

Arvo $ ServiceAccount olisi SMTP-osoitteen käyttäjän tili, jonne olet luonut viedä postin kohteet postilaatikot.

  • Kun olet muokannut käsikirjoituksen tiedosto koskaan ollut näin helppoa, sinun tulee luoda komentojonotiedoston toteuttaa käsikirjoituksen ja voidaan ajoittaa Windows Task Manager.

Voidakseen tehdä tämän sinun tulee luoda. Cmd tiedoston seuraavat komennot sisältyviä:

@ Echo off
@ PowerShell-komento "ja {x: \ <PathToScript> \ ExportMailboxesToPst-BasedonLogon.ps1}"

Katso alla:

pstExprt001

Kun olet tehnyt edellä, sinun tulee ajoittaa sen kautta Windows Task Manager toteuttaa (käyttäen palvelua huomioon, että olet sijasta) aikana, joka on parhaiten sopiva ympäristö.

Script Toiminta

On huomattava, että riippuen postilaatikoiden koko kyseessä - aika kuluu tähän suorittaa koodin voi vaihdella muutamasta minuutista muutamaan tuntiin tai jopa päiviä) - sinun pitäisi ottaa huomioon tämän ajoitettaessa tehtävä Windows ajastimella.

Kun käsikirjoitus on toteutettu se suorittaa seuraavia toimia:

  • Etsikää Active Directory Tilit Postilaatikot, joita ei ole näytetty in $ gblInactiveDays
  • Levitä postilaatikon täydet käyttöoikeudet palveluun tilin jokaiseen postilaatikkoon
  • Vie e-Mail kohteita pst sijaitsee PST polku sijainti
  • Poista Exchange-postilaatikon
  • Poista AD
  • Siirrä AD tilin DisabledUsers OU
  • Leima kuvaus tili monikerin, että se on sijoitettu sinne käsikirjoituksen

pstExprt004

Siksi toteuttamisen jälkeen pst-kansion sinun pitäisi nähdä PST: n tilinpitoa varten, että noudatetaan suodatin - katso alla

pstExprt006

Vuonna DisabledUsers OU Active Directoryn käyttäjät ja tietokoneet sinun pitäisi nähdä luettelon tilejä, jotka on käsitelty - katso alla

pstExprt007

Sisällä Exchange Management Console sinun pitäisi nähdä, että asiaa tili on poistettu - katso alla

Ennen:

pstExprt003

Jälkeen:

pstExprt005

Toivon, että tämä esimerkki antaa hieman inspiraatiota joitakin ihmisiä ja antaa sinulle joitakin viitteitä siitä, miten voit automatisoida prosesseja poistamalla vanhoja tilejä omassa infrastruktuuri.

comments… read them below or add one } {3 kommenttia ... lukea ne alle tai lisää yksi }

Rob 14 marraskuu 2011 klo 19:27

Kiitos hyödyllisiä scripting. Olen käynyt niiden päällä ja että komentosovelmalla ei ole enää saatavilla.

Best,

Ryöstää

Vastaus

Avatar Andy Grogan Andy Grogan 14 marraskuu 2011 klo 19:44

Heippa Rob, kyllä ​​se on oikein - mutta voit silti ladata sen
Kippis

Vastaus

Jenny 15 maaliskuu 2012 at 06:47

Exchange EDB PST muuntaminen on mahdollista Microsoftin sisäänrakennettu apuohjelmia. Jos oikeat käyttöoikeudet eivät ole saatavilla, epäonnistuu. Ammattimaisen kolmannen osapuolen EDB PST Converter työkaluja avulla voidaan poimia tietoja kaikista pääversioita.

http://edbtopstconverter.stellarservertools.com/

Vastaus

Jätä kommentti

CAPTCHA Image
Päivitä kuva
*

Edellinen viesti:

Seuraava viesti: