Ik ben op dit moment bezig met het troubleshooten van enkele powershell scripts die hier in de organisatie draaien die over user management gaan. Deze scripts maken zeer veel gebruik van active directory commandlets.
In het verleden zijn er enkele problemen geweest met deze scripts wanneer deze gebruik gingen maken van een domain controller in een andere regio en er kortstondig een onderbreking in de verbinding was. Hierop werden de scripts aangepast waarbij de AD cmdlets allemaal werden uitgevoerd met de -server parameter met behulp van
Dit had evenwel een groot neveneffect waar ik recent op gestoten ben. Elke cmdlet die je met een -server draait gaat een logon doen op die domain controller en zo zag ik in de security logs dus veel te vaak meer dan 10 000 logons per minuut komen vanaf het service account dat deze scripts draait. (I know, een review en optimalisatie dringt zich op en staat in de planning)
Vandaar de volgende vraag: iemand die weet hoe een AD cmdlet gaat bepalen welke DC te gebruiken? Is dat de server waartegen de gebruiker geauthenticeerd is? Of gaat deze telkens een nieuwe discovery doen om te bepalen welke DC te gebruiken? We zouden vooral willen dat ze binnen de eigen site blijven.
In het verleden zijn er enkele problemen geweest met deze scripts wanneer deze gebruik gingen maken van een domain controller in een andere regio en er kortstondig een onderbreking in de verbinding was. Hierop werden de scripts aangepast waarbij de AD cmdlets allemaal werden uitgevoerd met de -server parameter met behulp van
code:
1
| $PSDefaultParameterValues = @{"*-AD*:Server"='hostname DC'} |
Dit had evenwel een groot neveneffect waar ik recent op gestoten ben. Elke cmdlet die je met een -server draait gaat een logon doen op die domain controller en zo zag ik in de security logs dus veel te vaak meer dan 10 000 logons per minuut komen vanaf het service account dat deze scripts draait. (I know, een review en optimalisatie dringt zich op en staat in de planning)
Vandaar de volgende vraag: iemand die weet hoe een AD cmdlet gaat bepalen welke DC te gebruiken? Is dat de server waartegen de gebruiker geauthenticeerd is? Of gaat deze telkens een nieuwe discovery doen om te bepalen welke DC te gebruiken? We zouden vooral willen dat ze binnen de eigen site blijven.
No keyboard detected. Press F1 to continue.