<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.rabbibob.com/index.php?action=history&amp;feed=atom&amp;title=Powershell%3A_Folders_ACL_Parser</id>
	<title>Powershell: Folders ACL Parser - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.rabbibob.com/index.php?action=history&amp;feed=atom&amp;title=Powershell%3A_Folders_ACL_Parser"/>
	<link rel="alternate" type="text/html" href="https://www.rabbibob.com/index.php?title=Powershell:_Folders_ACL_Parser&amp;action=history"/>
	<updated>2026-04-29T00:15:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.5</generator>
	<entry>
		<id>https://www.rabbibob.com/index.php?title=Powershell:_Folders_ACL_Parser&amp;diff=1420&amp;oldid=prev</id>
		<title>Rabbi Bob: Created page with &quot;=Purpose= We utilize AD Security Groups as the ACL mechanism for shared folders and sometimes someone wants a report of who has access to what or it&#039;s good to look at sometime...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.rabbibob.com/index.php?title=Powershell:_Folders_ACL_Parser&amp;diff=1420&amp;oldid=prev"/>
		<updated>2019-11-18T18:29:00Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;=Purpose= We utilize AD Security Groups as the ACL mechanism for shared folders and sometimes someone wants a report of who has access to what or it&amp;#039;s good to look at sometime...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Purpose=&lt;br /&gt;
We utilize AD Security Groups as the ACL mechanism for shared folders and sometimes someone wants a report of who has access to what or it&amp;#039;s good to look at sometimes.  This script reads the top level folders from the designated $PATH and grabs the ACL list, then asks AD for members of the SecGrp.  Output to text.&lt;br /&gt;
&lt;br /&gt;
==To Do==&lt;br /&gt;
* This was a hackjob.&lt;br /&gt;
&lt;br /&gt;
=Code=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$PATH=&amp;quot;E:\SHARES\&amp;quot;&lt;br /&gt;
$DOMAIN=&amp;quot;YOURDOMAIN\&amp;quot; #Ex: YOURDOMAIN\&lt;br /&gt;
#######################&lt;br /&gt;
#$date = get-date -Format d&lt;br /&gt;
$OUTPUT=&amp;quot;ACL.txt&amp;quot;&lt;br /&gt;
write-host $OUTPUT&lt;br /&gt;
Remove-Item $output&lt;br /&gt;
$FOLDERS=Get-ChildItem -path $PATH -Directory&lt;br /&gt;
&lt;br /&gt;
foreach ($FOLDER in $FOLDERS)&lt;br /&gt;
	{&lt;br /&gt;
	$FULLPATH=$PATH + $FOLDER&lt;br /&gt;
&lt;br /&gt;
	write-host $FULLPATH&lt;br /&gt;
	Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
	Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;_____________________________&amp;quot;&lt;br /&gt;
	Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
	Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;$FULLPATH&amp;quot;&lt;br /&gt;
	$ACL_ACCESS=(Get-Acl -Path $FULLPATH).Access.IdentityReference&lt;br /&gt;
	foreach ($ACL in $ACL_ACCESS)&lt;br /&gt;
		{&lt;br /&gt;
		if ($ACL -like &amp;#039;*FILEACCESS_*&amp;#039;)  #looking for specific AD SecGrps prefixes&lt;br /&gt;
			{&lt;br /&gt;
			#write-host &amp;quot;$ACL&amp;quot;&lt;br /&gt;
			$ACL=$ACL -replace &amp;quot;$DOMAIN\&amp;quot;,&amp;quot;&amp;quot;&lt;br /&gt;
			Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;$ACL&amp;quot;&lt;br /&gt;
			#write-host $ACL&lt;br /&gt;
			$ACCESS=Get-ADGroupMember -Identity &amp;quot;$ACL&amp;quot; -Recursive | Select-Object -ExpandProperty Name&lt;br /&gt;
			foreach ($MEMBER in $ACCESS)&lt;br /&gt;
				{&lt;br /&gt;
				Add-Content &amp;quot;$OUTPUT&amp;quot; &amp;quot;$MEMBER&amp;quot;	&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Powershell]]&lt;br /&gt;
[[Category:Weblog-2019-11]]&lt;/div&gt;</summary>
		<author><name>Rabbi Bob</name></author>
	</entry>
</feed>