autor: Paweł Jawień; dotyczy wersji: 8.2 (dostępna w połowie 2015)
Począwszy od wersji 8.2 WEBCON BPS został wzbogacony o nowy rodzaj akcji: akcje Powershell.
Akcja taka umożliwia wykonanie dowolnej komendy powershell systemu Windows, a po aktywacji odpowiednich przystawek do Powershell (np. Exchange, Lync, Azure, Sharepoint), można za pomocą akcji powershell wykonywać wszelkie operacje systemowe możliwe do wykonania z konsoli PowerShell.
Przykłady takich operacji:
- Zakładanie katalogów na dysku
- Tworzenie dla użytkownika skrzynki na serwerze Exchange
- Aktywacja konta Lync dla użytkownika
- Tworzenie konta użytkownika w Office365
- Tworzenie nowych witryn w Sharepoint
- …
Przygotowanie środowiska
Do poprawnego działania akcji konieczne jest przygotowanie serwerów na których będą uruchamiane skrypty PowerSell
Wymagane operacje na serwerach:
- Enable-PSRemoting –force – konfiguruje komputer jako odbiorcę zdalnych komend PowerShell przesyłanych przy użyciu technologii WF-Management. Szczegóły: https://technet.microsoft.com/en-us/library/hh849694.aspx
- Enable-WSManCredSSP -Role Server – włącza autentykację typu: Credential Security Support Provider (CredSSP). Szczegóły: https://technet.microsoft.com/en-us/library/hh849872.aspx
- Set-PSSessionConfiguration -Name Microsoft.PowerShell32 –showSecurityDescriptorUI – zmienia konfigurację sesji na lokalnym komputerze. Szczegóły: https://technet.microsoft.com/en-us/library/hh849726.aspx
Dodatkowe operacje na serwerze z działająca usługą: WEBCON BPS Service umożliwiające działanie akcji PowerShell w środowisku Lync, Office 365, Azure:
Instalacja:
- Cloud Login: https://www.microsoft.com/en-us/download/confirmation.aspx?id=39366
- Lync Powershell Install: https://www.microsoft.com/en-us/download/details.aspx?id=39366
- O365 PoweShell Install: https://www.microsoft.com/en-us/download/confirmation.aspx?id=39366
- Azure AD: http://go.microsoft.com/fwlink/p/?linkid=236297
Kontekst działania akcji – uprawnienia
Akcja PowerShell do poprawnego wykonania potrzebuje odpowiednich uprawnień. Są możliwe dwa tryby konfiguracji:
- Gdy w konfiguracji, niepodane zostaną dedykowane: login i hasło, wówczas akcja działa w kontekście użytkownika, na którym uruchomiona jest usługa WEBCON BPS Service
- W konfiguracji akcji podane zostaną dane użytkownika, wówczas akcja wykonywana jest w kontekście i z uprawnieniami podanego użytkownika.
UWAGA! Ze względów bezpieczeństwa nie zalecamy opcji nr. 1
Konfiguracja akcji
Akcja PowerShell jest dostępna do konfiguracji w sposób analogiczny jak typy akcji dostępnych w WEBCON BPS.
Na zakładce „Akcje” dodajemy nową akcję i w polu: „Rodzaj akcji” należy wybrać: „Uruchomienie skryptu PowerShell”. Następnie po kliknięciu klawisza: „Konfiguracja” w prawym dolnym rogu ekranu, należy przejść do szczegółowej konfiguracji akcji.
W sekcji: "Dane użytkownika" należy podać login i hasło użytkownika w kontekście którego zostaną wykonane akcje PowerShell. Pozostawienie tych pól niewypełnionych, powoduje, że akcje wykonywana będzie w kontekście użytkownika, na którym pracuje serwis BPS. Login i hasło użytkownika mogą być przekazywane do skryptu PowerShell za pomocą zmiennych:
$username
$password
Przykład użycia w skrypcie:
$cred=New-Object System.Management.Automation.PSCredential -ArgumentList @($username,(ConvertTo-SecureString -String $password -AsPlainText -Force))
W sekcji: “Szablony” znaleźć można kilka predefiniowanych skryptów (przykłady) np. pozwalający na utworzenie skrzynki serwera Exchange dla istniejącego użytkownika Active Directory.
Sekcja: „Skrypt PowerShell” umożliwia wpisanie skryptu, który będzie wykonany przez zdefiniowaną akcję. W skrypcie można używać „wąsów” pobieranych z drzewa wyboru zmiennych.
Klawisz: „Testuj wykonanie skryptu na lokalnym serwisie” pozwala na sprawdzenie poprawności działania skyptu.
UWAGA! Skrypt jest faktycznie wykonywany w systemie.