Powershell export met kolom met lidmaatschap security group

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • So_Surreal
  • Registratie: Februari 2015
  • Laatst online: 06:58
Mijn vraag

Ik wil een dagelijkse .CSV output maken met een geschedulde task met Powershell.
Hierin wil ik van een bepaalde OU (waar de users in staan) een output hebben met bepaalde attributes die ik nodig heb in een ander systeem.

Dit gedeelte heb ik al voor elkaar, alleen heb ik ook nog 5 security groups in de Active Directory waar ik de Active Directory users in verdeeld heb.
Nu wil ik graag dat alleen de mensen die lid zijn van 1 van deze 5 groepen in het CSV terecht komen.
Ook wil ik graag dat er een extra kolom in het CSV bestand komt waar dan in te staan van welke van de 5 groepen deze persoon lid is.

Relevante software en hardware die ik gebruik

Powershell en Active Directory

Wat ik al gevonden of geprobeerd heb


Bovengenoemd

Beste antwoord (via So_Surreal op 23-11-2018 12:29)


  • boe2
  • Registratie: November 2002
  • Niet online

boe2

'-')/

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind.' - Pratchett.

Alle reacties


Acties:
  • 0 Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 02:24
En waar loop je op vast met je script? Wat heb je tot nu toe geschreven?

Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • boe2
  • Registratie: November 2002
  • Niet online

boe2

'-')/

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind.' - Pratchett.


Acties:
  • 0 Henk 'm!

  • ExtendedCaesar
  • Registratie: April 2010
  • Laatst online: 12-05 00:01
Get-ADUser %SamAccountName% -Properties * | Select SamAccountName, MemberOf

Bovenstaande geeft je de gebruikersnaam + groepen waar gebuiker lid van is. Met informatie van Boe2 moet je daar vast wel een filter voor kunnen maken :)

Acties:
  • 0 Henk 'm!

  • Dobey
  • Registratie: Mei 2005
  • Laatst online: 09-05 15:37
Je zou een foreach kunnen gebruiken die op basis van de 5 groepen de users uitleest.
Hier kan je ook de group gelijk in printen

Dus iets als:
PowerShell:
1
2
3
4
5
foreach($group in $groups){
$users=(get-adgroupmember $group).name

echo $group + ";" + $users | out-file C:\temp\blaat.csv
}


Mogelijkheden zat :)

[ Voor 7% gewijzigd door RobIII op 23-11-2018 12:04 ]


Acties:
  • 0 Henk 'm!

  • So_Surreal
  • Registratie: Februari 2015
  • Laatst online: 06:58
Killah_Priest schreef op vrijdag 23 november 2018 @ 11:24:
En waar loop je op vast met je script? Wat heb je tot nu toe geschreven?
PowerShell:
1
2
3
4
5
6
7
$OUpath = <Naam van OU>

Get-ADUser -filter * -properties cn, sn, givenName, initials, ipPhone, telephoneNumber, mail, sAMAccountName, title, department, company, distinguishedName |

Select-Object cn, sn, givenName, initials, ipPhone, telephoneNumber, mail, sAMAccountName, title, department, company, distinguishedName |

Export-CSV -Path "C:\Scripts\Active Directory Export.csv" -NoTypeInformation


Dit geeft alleen de attributes die ik opgegeven heb uiteraard.
Ik weet alleen echt niet hoe ik moet zorgen dat alleen mensen die lid van een deze 5 groepen zijn zichtbaar worden in dit overzicht.
Ik heb een ander stukje script geschreven en daarmee kan ik met Get-ADGroupMember -Identity <groepnaam> die uitkomst pipen ( | ) naar Get-ADUser -Properties en die output weer naar CSV exporteren.
Maar ik weet dus niet hoe ik leden van alle 5 de groepen in 1 CSV krijg met daarin een kolom waar in staat van welke van de 5 groepen de persoon lid is.

[ Voor 0% gewijzigd door RobIII op 23-11-2018 12:04 ]

Pagina: 1