PowerShell: Čo robiť ak AD skripty nefungujú v asp.net na servri?

PowerShell: Čo robiť ak AD skripty nefungujú v asp.net na servri?

Nedávno som potreboval spustiť Active Directory PowerShell skript cez asp.net stránku urobenú za pomoci VB.net. Skript napísaný v PowerShell fungoval bez problémov ak bol spustený lokálne, ale ani za nič nechcel fungovať keď bol volaný priamo na servri cez aspx dokument.Dokonca aj keď bol skript už vložený do “code behind” a aspx dokument bol spustený lokálne na počítači tak všetko fungovalo ako švajčiarske hodinky. Problém nastal keď sa mal dokument spustiť priamo na servri. Dokument sa síce spustil, stránka fungovala ale PowerShell skript nebol spustený. Tak som začal debugovať a zistil som že modul Active Directory nebol spustený. Keď som skript vložený v aspx stránke zredukoval na “get-module -listavailable |Select-Object name“, dostal som všetko možné len Active Directory nie. Po krátkom pátraní som zistil že tento modul nie je defaultne inštalovaný a treba ho pridať na servri. A to veľmi jednoducho:

  1. Najskôr musíme spustiť Server Manager -> Dashboard
  2. Pod “Configure this local server”, klikneme na “Add roles and features”, preklikáme sa až k “Features” a zapneme nasledové:
    • AD DS Tools -> AD DS Snap-Ins and Command-Line Tools
    • AD LDS Snap-Ins and Command-Line Tools
    • asp_IIS_PS
  3. Preklikáme sa až do konca a potvrdíme inštaláciu

Teraz nám už nič nebráni vo volaní AD skriptov z našej aspx stránky.

Leave a Reply

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

This site uses Akismet to reduce spam. Learn how your comment data is processed.