Door
Rick Bouman
op 02-12-2011 16:17
gewijzigd op 02-12-2011 16:43
4.206 views
Goedemiddag,
Ik wil graag een PHP pagina maken waar je de rechten kan zien op een Windows map (active directory groepen).
Heb een IIS server met PHP / Fast CGI en een Linux Apache server.
Denk dat het uberhaubt al via de IIS Windows server zal moeten, alleen heb geen idee in welke richting ik moet zoeken?
Als ik eenmaal de groep weet kan ik met LDAP wel de leden ervan zoeken.
Het gaat er om dat er verschillende mappen zijn, waar Active Directory groepen op staan die lees of lees- en schrijfrechten geven.
Ik wil dan graag weten welke groepen er op staan.. en wat de naam van die groepen is.
Daarna kan ik met LDAP de leden van de groep ophalen (dat lukt mij verder wel).
Beste Niels,
Het zijn behoorlijk wat gebruikers. Het is de bedoeling dat je een map kiest, en dat je ziet welke groepen en gebruikers toegang hebben tot deze map.
Eigenlijk wil ik gewoon de "NTFS-rechten" uitlezen en tonen dus..
Ik heb even gezocht, maar ik kan geen PHP functie vinden. Je zou gebruik kunnen maken van de functie: [php]shell_exec[/php].
Heb je in Active Directory niet de mogelijkheid om per groep te kunnen zien aan welke map deze is gekoppeld? Active Directory is een database, en daar kan je dus alles uit plukken.
Ik heb op dit moment niet de beschikking over een Active Directory server, dus ik kan niets voor je testen / uitzoeken.
Toevoeging: Met [php]system[/php] kan je ook nog iets produceren denk ik.
Let wel op dat je dit vanaf een Windows server met PowerShell moet starten en de code natuurlijk wat moet uitbreiden (nette output en array en dergelijke), ben daar nu een heel eind klaar mee. Als ik klaar ben zal ik misschien eens een tutorial maken.
Handig om in de gaten te houden, account wat Apache (service) of IIS (application pool) runt moet READ AND EXECUTE rechten hebben op C:\Windows\system32\cmd.exe en powershell.exe (staat ook ergens wat dieper in system32).
Het kan trouwens vanaf Linux ook met een omweg (SSH, wat een stuk minder snel is), maar dat is niet de ideale situatie.