2015-12-31
No dobra. Do włączenia remotingu na serwerze lokalnym służy polecenie
Enable-PSRemoting
Niestety to polecenie nie ma parametru -ComputerName, aby włączyć remoting na systemie zdalnym 🙁
Na szkoleniu Powershell dla administratorów Windows pokazuję, że jeśli chcesz włączyć remoting na maszynie zdalnej, to powinieneś wykorzystać zasady grupy i stosując te zasady do serwerów konfigurować je do włączenia lub wyłączenia remotingu. A co jeśli w firmie konfiguracją domeny zajmuje się ktoś inny!? Nie masz z nim kontaktu, a nawet jeśli masz to nie masz mocy przekonania kolegów o tym, że potrzebujesz włączenia remotingu. Hmmm….
Do zdalneo uruchomienia polecenia można się też posłużyć poleceniem Invoke-WMIMethod. Gdyby tak tej komencie przesłać instrukcję:
powershell.exe -command „{Enable-PSRemoting -Force}”
to cel byłby osiągnięty! Tylko jest jeden problem… Invoke-WMIMethod uruchomi polecenie nie dołączając tokenu administratora (nie jako administrator – elevated). Tymczasem Enable-PSRemoting musi być uruchamiane jako administrator!
Trzeba pokombinować. Jest metoda, która pozwala na sytemie zdalnym uruchmić polecenie jako administrator. Możesz utworzyć zadanie w harmonogramie zadań, do uruchomienia na koncie system i natychmiast to zadanie uruchomić. W zadaniu możesz zdefiniować do uruchomienia właśnie powershella włączającego Remoting!
Takie rozwiązanie proponuje książka Windows Powershell Cookboook. Oto i ono po moich małych przeróbkach Enable-PSRemotingRemotely.txt. A tu parę słów komentarza: Czytaj dalej »
2015-12-31
… a w dzienniku zdarzeń w Application and Services Log >> Microsoft >> Windows >> Task Scheduler mam błąd:
Task Scheduler failed to start „\**********” task for user „***\************”. Additional Data: Error Value: 2147943785.
oraz
Task Scheduler failed to start Task Engine „” process due to an error occurring in „LUAIsElevatedToken” . Command=”taskeng.exe” . Additional Data: Error Value: 2147943785.
i jeszcze:
Task Scheduler failed to log on „TaskScheduler:Task:{***********}” . Failure occurred in „LogonUser” . User Action: Ensure the credentials for the task are correctly specified. Additional Data: Error Value: 1385.
o przecież moje konto ma local admina, przekazałem swoje poświadczenia podczas tworzenia zadania w harmonogramie zadań, faktycznie chciałem żeby task startował jako administrator (elevated). Nazwa użytkownika i hasło są poprawne! O co chodzi?
Enigmatyczny błąd 2147943785 oznacza brak uprawnień, ale o jakie uprawnienie chodzi?
LogOn as Batch !!!
Niestety, na serwerze nie mam uprawnień do dodania wykorzystywanego konta do uprawnionych użytkowników w Local Security Policy bo ustawienie spływa z domeny 🙁
Ale jest obejście!
Można uruchomić skrypt jako użytkownik SYSTEM. System może wszystko, działa jako elevated i może się zalogować jako batch.
2015-12-30
Ot, przydatny artykuł:
Główne idee tej checklisty to:
1. Wiedzieć jakie usługi przesyłają sobie poświadczenia
2. Wiedzieć na jakich kontach pracują dane usługi
3. Sprawdzić zdefiniowane SPN poleceniem setspn -l <domena\konto>
4. Wiedzieć jaką postać ma mieć SPN dla danej usługi
5. Sprawdzić zawartość zakładki Delegation we właściwościach konta w AD Users and Computers
2015-12-30
Drobna uwaga na temat tego, co się stanie jeśli właścicielem bazy danych jest sa i dodatkowo masz włączoną opcję serwera cross db ownership chaining
Zaczynamy od założenia 2 baz danych:
CREATE DATABASE DBPUB
GO
USE DBPUB
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
CREATE DATABASE DBPRIV
GO
USE DBPRIV
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
Teraz w bazach danych zakładamy obiekty: tabelę w bazie DBPRIV, a w bazie DBPUB widok korzystający z tabeli z bazy DBPRIV
USE DBPRIV
GO
CREATE TABLE tblPriv
(id int)
USE DBPUB
GO
CREATE VIEW vwPub AS
SELECT id FROM DBPRIV.dbo.tblPriv
GO
Czy taka konstrukcja zadziała? Tak, w końcu w tej chwili jesteś w roli sysadmin, która ma db_owner w każdej bazie danych:
SELECT * FROM vwPub
GO
Ale czy zadziała to również dla innych użytkowników? Zakładamy login PubLogin, który w bazie DBPUB ma uprawnienia db_owner, ale w bazie DBPRIV jest tylko w roli public, bez żadnych dodatkowych uprawnień, więc nie może np. wykonywać select do tabeli: Czytaj dalej »
2015-12-30
Oto jaki błąd przywitał mnie dzisiaj na pewnym serwerze:
An error occurred in the Microsoft .NET Framework while trying to load assembly id 65541. The server may be running out of resources, or the assembly may not be trusted with PERMISSION_SET = EXTERNAL_ACCESS or UNSAFE. Run the query again, or check documentation to see how to solve the assembly trust issues. For more information about this error: System.IO.FileLoadException: Could not load file or assembly 'XXXXXXX, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null’ or one of its dependencies.
Exception from HRESULT: 0x80FC3C2C System.IO.FileLoadException: at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean
Co u licha!? CLR miewa problemy z rezerwowaniem pamięci, zwłasza jeżeli pamięc zostałaby zeswapowana (brak lock pages in memory dla sql) lub w SQL 2008 R2 Max memory jest ustawione zbyt wysoko. Ponieważ serwer był testowy mogłem zrestartować SQL, ale… nie pomogło! Czytaj dalej »
2015-12-30
Kurs powershell dla początkujących – kompletny kurs doczekało się pierwszej aktualizacji. W pierwszej wersji testy dostępne do rozwiązania po każdej lekcji zawierały między innymi pytania pozwalające na uzupełnianie luk. Niestety Udemy zdecydowało się wycofać ten rodzaj testu, bo takie właśnie były wyniki ankiet wypełnianych przez uczestników szkoleń.
W związku z tym wszystkie testy , w których pojawiał się ten rodzaj pytań zostały przebudowane. Obecnie można rozwiązywać testy wyboru oraz prawda/fałsz.
Test dostępny po zakończeniu lekcji pozwala nie tylko sprawdzić stopień opanowania wiedzy, ale pozwala także na uzyskanie dodatkowych informacji poprzez analizę kolejnych przykładów. Jak najbardziej, podczas rozwiązywania testu można na swoim komputerze zasymulować opisywane zagadnienia i w ten sposób sprawdzić poprawność rozwiązania!
Sprawdź kurs Powershell dla administratora już teraz! Tylko teraz z kuponem PS4PL cena spada do 10 $

2015-12-15
Oj… bardzo potrzebowałem dzisiaj prostego rozwiązania do zamiany liczb na polskie teksty. I co znalazłem? Bardzo fajną instrukcję:
https://www.youtube.com/watch?v=FB-yHmCHiv4
Miałem pewne problemy z polskimi literkami, ale koniec końców się udało! Wielkie dzięki. Gdyby komuś nie chciało się przechodzić całej procedury, to tutaj do ściągnięcia gotowy dodatek slownie_excelownia.
Aby zainstalować dodatek
- zapisz go gdziekolwiek na swoim dysku. Upewnij się, że plik ma rozszerzenie xla. Moja przeglądarka podczas zapisywania pliku zmianiała rozszerzenie na xls.
- w excelu kliknij PLIK >> Opcje >> Dodatki >> Dodatki programu Excel Przejdź >> Przeglądaj >>
- Wskaż plik z dodatkiem
- Upewnij się, że pole wyboru obok Slownie_excelownia jest zaznaczone
- Kliknij OK
- Gotowe. Od tej pory możesz wpisywać formułę jak np =słownie(159) lub =słownie(A5)