Registrace  •  FAQ  •  Pravidla fóra  •  Uživatelské blogy  •  PCTuning.cz  •  Hledat  • Přihlášení
 • Funkce report, slouží pro upozornění na porušení pravidel, ne vzkazy moderátorům.

Právě je pá 16. duben 2021, 01:41

Zobrazit příspěvky bez odpovědiZobrazit aktivní témata



Čas je uváděn v UTC + 1 hodina


Odpovědět na téma  [ 17 příspěvků ] 
Autor Zpráva
 Předmět: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 14:58 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
potřeboval bych script, který zajistí výpis do csv z určité distribuční skupiny ve tvaru zobrazované jméno + mail, včetně zanořených skupin

určitě je to triviální, ale přesný příklad jsem nevygooglil a to nejlepší co jsem dokázal, byl holej výpis uživatelů z určité skupiny, to mě je bez mailu k ničemu... nemáte ho náhodou někdo při ruce?

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 16:59 
Čestný člen
Čestný člen

Založen: 22. duben 2005
Bydliště: Brno
Nahoru
Co tohle?
Kód:
Get-ADUser -SearchBase "OU=SomeOU,DC=Company,DC=ORG" -Properties * -Filter * | select samaccountname,mail | export-csv test.csv

Bere to i sub OUs. Samozřejme záleží jaké jméno tam chceš "name" nebo "samaccountname", to si můžeš zmenit podle libosti.

Pokud bys chtěl aby se přidalo i v jakém sub OU ti useři jsou, přidej to do selectu "CanonicalName", vyjede ti to celou cestu k objectu
Kód:
Get-ADUser -SearchBase "OU=SomeOU,DC=Company,DC=ORG" -Properties * -Filter * | select samaccountname,mail, CanonicalName | export-csv test.csv


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 17:12 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
dík, zítra zkusím, ještě abych si to ujasnil -

Get-ADUser -SearchBase "OU=SomeOU,DC=Company,DC=ORG" -Properties * -Filter * | select samaccountname,mail | export-csv test.csv

místo toho tučného "OU=SomeOU,DC=Company,DC=ORG" tam mohu nacpat to konkrétní jméno distribuční skupiny, kterou chci prohledat a vypsat a ono si ji to už najde v AD samo?

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 17:17 
Odborník PCT
Odborník PCT
Obrázek uživatele

Založen: 05. červen 2003
Bydliště: sluníčkář a havloid z pražské lumpenkavárny
Nahoru
ale tohle cílí skript na OU v AD, ne na distribuční skupinu

_________________
ignorelist: mimo jiné všechny kremrole (danny1691, Lokomotiva, CZECHYa, pavel2003, shorty25, ajtak, stepan001, ulver, brambora81, CZ_viper, tielka a pár dalších exotů)


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 17:21 
Čestný člen
Čestný člen

Založen: 22. duben 2005
Bydliště: Brno
Nahoru
Jesus, máš recht, jsem si to nepřečetl porádně :roll:

Já jel hned AD a ne exchange


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 21. říjen 2020, 17:44 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
zombux napsal:
ale tohle cílí skript na OU v AD, ne na distribuční skupinu

to je dobře, ono to poslouží stejně, tu distribuční skupinu máme i v AD, takže ji můžu klidně vypsat odtamtud, pokud stačí jen vybrat konkrétní jméno a ostatní je stejné, nebo ne?

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: čt 22. říjen 2020, 08:10 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
tak ten příkaz z vrchu úplně nezafungoval podle představ, pole "mail" prostě nevypsal, -Properties * -Filter * jako neznámé příkazy tak jsem je vyhodil a stejně nic

ale použil jsem přes exchange management shell tohle:
Kód:
Get-DistributionGroupMember xxxxxxxxxxxx | select displayName,PrimarySMTPAddress |  Export-CSV -Encoding "UTF8" c:\temp\dg.csv

není to dokonalé, protože to neprochází vnořené a PrimarySMTPAddress není vždy mail, pole "mail" (u kontaktů) to ale nechce vypsat, ale alespoň něco

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: čt 22. říjen 2020, 08:41 
Odborník PCT
Odborník PCT
Obrázek uživatele

Založen: 05. červen 2003
Bydliště: sluníčkář a havloid z pražské lumpenkavárny
Nahoru
no, pozor na jednu věc. pole mail (nebo email? teď jsem zapomněl) je takový ten "windows email", který nemusí nutně vždycky korespondovat s Exchange adresou - typicky ano, ale není to pravidlo. PrimarySMTPAddress jde z Exchange takže to správně je. pak můžeš případně ještě vypsat ProxyAddresses (zase mě neber doslova, už je to pár let co jsem se s tímhle sral), to je ale zase objekt a musíš zanořovat nebo parsovat. vtip je taky v tom, že get-user, get-aduser, get-mailbox nebo get-mailboxstatistics mají omezený scope a je třeba je používat podle toho co zrovna chceš vypsat.

_________________
ignorelist: mimo jiné všechny kremrole (danny1691, Lokomotiva, CZECHYa, pavel2003, shorty25, ajtak, stepan001, ulver, brambora81, CZ_viper, tielka a pár dalších exotů)


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: čt 22. říjen 2020, 11:01 
Nováček
Nováček

Založen: 23. srpen 2004
Bydliště: Plzeň
Nahoru
Jelikoz potrebujes rekurzi, tak to uz na one-liner v Exchange Shellu nebude (Get-DistributionGroupMember ho neumi), proto bych spis doporucil jit na to cestou skrz AD (coz jsem pochopil, ze ti nevadi).

Takze Get-ADGroupMember spolecne s parameterem -Recursive a nasledne si z toho vytahnout vystup, ktery potrebujes.

Pro inspiraci treba takhle :

Kód:
Get-ADGroupMember -Identity "DistroGroup" -Recursive | Get-ADUser -Properties DisplayName,Mail,TargetAddress | select -Property DisplayName,Mail,TargetAddress


Jelikoz nevim, jak to mate v ramci Vaseho Exchange udelane (on-prem / Exchange online / hybrid), tak saham jak po atributu mail (tam by, jak uz Zombux rikal, mel *ve vetsine pripadu* byt ten samy udaj, jaky vidi Exchange ... ale bohuzel ne vzdy to je pravidlem), tak zaroven TargetAddress (coz ale muze byt kontraproduktivni, pokud zrovna migrujete do cloudu, apod.) - kazdopadne pro on-prem bude fungovat spolehlive.

Pokud by tohle nestacilo, tak uz je to na parsovani ProxyAddresses atribut z AD (tam jsou uvedeny vsechny adresy (zamerne nechci rikat mailovky), ktere na sobe objekt ma, ale to uz je opet spis na skript nez jednoduchy one-liner ... nebo si dopsat rekurzi pro Get-DistributionGroupMember


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: čt 22. říjen 2020, 11:40 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
jsme zrovna v mezicestě do online, v on-premisu je už jen část, do online exchange shellu nemám přístup, takže si musím vystačit s tímhle exportem z onpremisovýho nebo z AD, ono je to stejně 1:1.
To pole s mailem se skutečně jmenuje "mail", nevím, proč ho ten první příkaz nevytáhnul a ještě byl celý název uživatele ve tvaru výpisu cesty i s OU, místo holého názvu (jméno a příjmení)

ten TargetAddress vypisuje ty nesmyslný jmeno@mail.onmicrosoft...

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: čt 22. říjen 2020, 11:56 
Odborník PCT
Odborník PCT
Obrázek uživatele

Založen: 05. červen 2003
Bydliště: sluníčkář a havloid z pražské lumpenkavárny
Nahoru
no však jasně že vypisuje, když jsou už v cloudu (samozřejmě pak taky záleží jak máš nastavenej routing mezi internetem, O365 a on-prem)

_________________
ignorelist: mimo jiné všechny kremrole (danny1691, Lokomotiva, CZECHYa, pavel2003, shorty25, ajtak, stepan001, ulver, brambora81, CZ_viper, tielka a pár dalších exotů)


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: pá 23. říjen 2020, 01:07 
Nováček
Nováček

Založen: 23. srpen 2004
Bydliště: Plzeň
Nahoru
Pokud zrovna migrujete do O365, tak atribut TargetAddress uz je zavadejici - jak uz jsi sam zjistil, Exchange tam po migraci mailboxu do cloudu upravi u objektu cilovou domenu na tu "online routing" tak, aby korektne fungoval mezi Exchange on-prem a Exchange online mail flow, Free/Busy lookup a dalsi veci. Takze to ti bude k k nicemu.

Za predpokladu, ze jedete v hybridu (coz bych si tipnul), tak info v cloudu bude z drtive vetsiny opravdu 1:1 s AD odkud se objekty syncuji, tim padem to co ti vrati AD, bude spravne.


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: út 16. březen 2021, 13:32 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
ještě jeden "oneliner" bych potřeboval, znám mailovku v alias tvaru, ale potřebuju zjistit, jaké schránce je skutečně přiřazená, dá se to nějak jednoduše a rychle vypsat?

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: út 16. březen 2021, 16:03 
Nováček
Nováček

Založen: 23. srpen 2004
Bydliště: Plzeň
Nahoru
Pokud mas nejaky pristup k Exchange, tak je to jeden prikaz :

Get-Recipient "alias"


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: út 16. březen 2021, 16:38 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
mám, zítra vyzkouším. díky.

Ještě jednu vychytávku bych chtěl - vypsat podle konkrétního uživatele všechny schránky, které má nasdílené/má do nich přístup? konkrétně: vyberu recepční Jmeno.Prijmeni a potřebuju vypsat všechny mailboxy zasedacích místností, které má nasdílené(jsou to jen klasické sdílené mailboxy)

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: út 16. březen 2021, 19:39 
Nováček
Nováček

Založen: 23. srpen 2004
Bydliště: Plzeň
Nahoru
Muzes upresnit "ma nasdilene / ma do nich pristup"?

Tech urovni jak lze zpristupnit mailbox nebo jeho cast (Inbox / kalendar, atd.) uzivateli je povicero (Send on Behalf / Send As / pristup do slozky v mailboxu, atd.) a cili se na ne ruznymi prikazy.

Bezne to treba byva tak, ze pokud mas resource mailbox (typicky zasedacka), tak recepcni tam maji pristup pouze na urovni kalendare, ale do mailboxu jako takoveho vetsinou neni duvod lezt ... ale vse se to odviji od toho, jak to pouzivate (nastaveni calendar processingu, moderace, apod.)

Neco se da najit rovnou v AD na urovni atributu objektu, neco zjistis jen pres Exchange ...


 Profil  
 Předmět: Re: Powershell script - vypsání uživatelů ze skupiny
PříspěvekZaslal v: st 17. březen 2021, 08:37 
Začátečník
Začátečník

Založen: 15. květen 2009
Nahoru
je to přes online 365 ECP -> resources -> meeting room -> mailbox delegation -> full access takže když vyberu třeba recepční a vyjedu si, kde všude má full access, bude to třeba 5 mailboxů/zasedaček

_________________
CPU: Intel core i5 4690k@4,6 GHz | GPU: GTX 970@1440MHz/8000MHz | MB: Asus Sabertooth Z97 MARK 2 | RAM: 2*8GB Kingston DDR3 | HDD: Samsung SSD 840 Evo 250GB | PSU: EVGA Gold 650W | OS: Win 7 Ultimate SP1 64-bit | Fire Strike: P10068


 Profil  
Zobrazit příspěvky za poslední:  Řadit podle  
Odpovědět na téma  [ 17 příspěvků ] 


Čas je uváděn v UTC + 1 hodina


Přejít do sekce:
  

Kdo je přihlášený

Uživatelé procházející si tuto sekci: Žádní registrovaní uživatelé a 1 anonymní


Nemůžete zakládat nová témata v této sekci
Nemůžete odpovídat na příspěvky v této sekci
Nemůžete upravovat své příspěvky v této sekci
Nemůžete mazat své příspěvky v této sekci
Nemůžete připojit přílohy v této sekci

 
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Český překlad - PCT fórum, Zásady ochrany osobních údajů.