Nie ma lepszych narzędzi do wydobycia informacji o środowisku niż prosty skrypt, który można sklecić „na kolanie” Znajdź mi użytkowników, którzy mają nazwę kończąca się na service: Get-AdUser -filter „name -like '*service'” | select name Znajdź mi grupy, które mają w nazwie PRD I kończą się na SYS: Get-ADGroup -filter „name -like '*PRD*SYS'” | select […]
Archiwum za miesiąc 2019-08
PowerShell: Wyszukiwanie w AD użytkownika lub grupy
Powershell: Upload pliku przez FTP
Chociaz FTP nie jest bezpiecznym protokolem to czasami jeszcze gdzie niegdzie sie stosuje. Tym razem chodzilo o wyslanie plikow z serwera Windowsowego na serwer Linux. Idealnie jesli bedzie to zrobione przez PowerShella wlasnie. Oto najwazniejszy kawalek kodu: $localfile = 'c:/temp/filename.txt’ $ftp = „ftp://servername/dir1/dir2/” $user = „username” $pass = „password” $destinationFileName = 'filename.txt’ $webclient = […]
SQL: ALTER DATABASE ALLOW_SNAPSHOT_ISOLATION waiting on ENABLE_VERSIONING
Aplikacja nie chciała się uruchomić zgłaszając (i za to brawa dla programisty), że opcja ALLOW SNAPSHOT ISOLATION musi być włączona. Niby prosta rzecz ALTER DATABASE … SET ALLOW_SNAPSHOT_ISOLATION ON I co? Czekam i czekam… sprawdzam, co blokuje sesję. Wait time to ENABLE_VERSIONING. No dobrze – jeśli to pierwsza baza z tym ustawieniem, to może rzeczywiście coś […]
Python: if w postaci jednej linijki nie działa z pass
W Pythonie wyrażenie if można zapisać w postaci jednolinijkowca: expr1 if cond else expr2 Jednak łatwo wpaść w pułapkę. Takie wyrażenie zadziała: print(price-bonus) if bonus_granted else print(price) ale już takie nie: print(price-bonus) if bonus_granted else price = 200 print(price-bonus) if bonus_granted else pass Ale po kolei: price = 10 bonus = 1 bonus_granted = True A teraz odpowiadając na […]
SQL: co sie dzieje, kiedy zmieniasz PageVerify na CHECKSUM?
Stare bazy migrowane ze starych systemow SQL moga miec ustawiona opcje PageVerify na TORN_DETECTION. Oczywiscie to metoda z zeszlego wieku i aktualnie powinnismy uzywac CHECKSUM. Obie wartosci mowia o tym w jaki sposob kontrolowac, czy zapis strony bazy danych na dysk wykonal sie w 100%, czy tez sa jakies problemy. TORN_PAGE pozwoli dowiedziec sie tylko […]
SQL: Uprawnienie db_owner bez usuwania bazy danych
Sam nie wiem z czego to wynika, ale uzytkownicy proponuja czasami nieco abstrakcyjne rozwiazania zwiazane z ustawieniem uprawnien do bazy danych. W tym przypadku klient chcial aby uzytkownicy bazy danych mogli pracowac na poziomie uprawnien db_owner, ale z jednym malym haczykiem. Uzytkownicy nie powinni moc usunac bazy danych. Dlaczego uwazam, ze zyczenie jest nieco abstrakcyjne? […]
Windows: Cluster: Ukryty zasob sieciowy C:\ClusterStorage
Podczas instalacji Windows Failover Cluster na nodach clustra tworzony jest udostpniony zasob wskazujacy na C:\ClusterStorage Takie „ukryte” zasoby sa czesto wychwytywane przez osoby pilnujace bezpieczenstwa serwerow, tymczasem ten powinien byc od razu wciagniety na white-list. Katalog ten pozwala w clustrze sledzic wykorzystanie Cluster Shared Volume (CSV), co jest dokladniej opisane na stronie Microsoft: https://docs.microsoft.com/en-us/windows-server/failover-clustering/failover-cluster-csvs