Pokazywanie postów oznaczonych etykietą microsoft. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą microsoft. Pokaż wszystkie posty
środa, 5 lutego 2014
Im mniej IE tym mniej morderstw
Natrafiłem na ciekawy wykres. Okazuje się, że jest zależność między popularnością IE, a ilością morderstw w USA.
piątek, 11 października 2013
Microsoft Security Fundamentals
Ostatnio zdałem egzamin MTA:Security Fundamentals 98-367
Z dwóch powodów polecam ten egzamin osobom pracującym w firmach, które dbają o bezpieczeństwo (instytucje finansowe, banki, ubezpieczenia, firmy medyczne itp.)
1) przygotowanie się do tego egzaminu pozwali Ci na zaznajomienie się z podstawowymi technikami włamywania się do firm, a w szczególności uświadamia ludzi o socjotechnikach
2) egzamin jest nakierowany na teoretyczną i ogólną wiedzę, a nie na szczegóły implementacji. Osoby, które twierdzą, że Microsoft jest 'beee' i nie znają jego produktów mogą zdać ten egzamin. Co prawda pamiętam jedno pytanie z BitLockera (microsoftowy TruCrypt) i o wersje Windows, w której to rozwiązanie jest używane (źle odpowiedziałem), ale było to jedno pytanie.
Jeżeli byś chciał się przygotować do niego to przydatny będzie Ci oficjalny przewodnik po tym egzaminie
Dodatkowo możesz poczytać inne książki z obszaru bezpieczeństwa Windows - na przykład Google books udostępniło książkę Windows Security Essencials.
Obejrzałem jeszcze filmiki na trainsignal.com oraz cbt nuggets.
Wydaje mi się, że książka przygotowująca do egzaminu w zupełności by wystarczała, ale wiedzy nigdy za wiele.
Z dwóch powodów polecam ten egzamin osobom pracującym w firmach, które dbają o bezpieczeństwo (instytucje finansowe, banki, ubezpieczenia, firmy medyczne itp.)
1) przygotowanie się do tego egzaminu pozwali Ci na zaznajomienie się z podstawowymi technikami włamywania się do firm, a w szczególności uświadamia ludzi o socjotechnikach
2) egzamin jest nakierowany na teoretyczną i ogólną wiedzę, a nie na szczegóły implementacji. Osoby, które twierdzą, że Microsoft jest 'beee' i nie znają jego produktów mogą zdać ten egzamin. Co prawda pamiętam jedno pytanie z BitLockera (microsoftowy TruCrypt) i o wersje Windows, w której to rozwiązanie jest używane (źle odpowiedziałem), ale było to jedno pytanie.
Jeżeli byś chciał się przygotować do niego to przydatny będzie Ci oficjalny przewodnik po tym egzaminie
Dodatkowo możesz poczytać inne książki z obszaru bezpieczeństwa Windows - na przykład Google books udostępniło książkę Windows Security Essencials.
Obejrzałem jeszcze filmiki na trainsignal.com oraz cbt nuggets.
Wydaje mi się, że książka przygotowująca do egzaminu w zupełności by wystarczała, ale wiedzy nigdy za wiele.
wtorek, 19 marca 2013
Z Func do IEqualityComparer
Brakuje mi jednej klasy w BCL, która mogła by stworzyć obiekt implementujący IEqualityComparer z wyrażenia lambda . Ten temat był już wałkowany, ale pomimo tego napiszę czego mi brakuje i jakie jest zastosowanie.
Mamy klasę:
Tworzymy comperer (klasa porównująca dwa obiekty), w którym podajemy funkcję zwracającą informację po jakim będziemy porównywać obiekty. Ta funkcja będzie nam potrzebne do tworzenia hash kodu.
Aby przedstawić KeyEqualityComparer wystarczy wywołać następujący kod:
Dodatkowo możemy stworzyć extension method:
I wtedy możemy operować za pomocą wyrażeniu lambda:
Mamy klasę:
public class Value
{
public int IntValue { get; set; }
public string StringValue { get; set; }
public override string ToString()
{
return IntValue + "_" + StringValue;
}
}
Tworzymy comperer (klasa porównująca dwa obiekty), w którym podajemy funkcję zwracającą informację po jakim będziemy porównywać obiekty. Ta funkcja będzie nam potrzebne do tworzenia hash kodu.
public class KeyEqualityComparer<T> : IEqualityComparer<T>
{
public Func<T, object> _keyToCompar { get; private set; }
public KeyEqualityComparer(Func<T, object> keyToCompar)
{
_keyToCompar = keyToCompar;
}
public bool Equals(T x, T y)
{
return _keyToCompar(x).Equals(_keyToCompar(y));
}
public int GetHashCode(T obj)
{
return _keyToCompar(obj).GetHashCode();
}
}
Aby przedstawić KeyEqualityComparer wystarczy wywołać następujący kod:
var list = new List<Value>
{
new Value {IntValue = 1, StringValue = "One "},
new Value {IntValue = 1, StringValue = "Two"}
};
var distinctList1 = list.Distinct(new KeyEqualityComparer<Value>(x =>x.IntValue));
Dodatkowo możemy stworzyć extension method:
public static IEqualityComparer<T> ToEqualityComparer<T>(this Func<T, object> func)
{
KeyEqualityComparer<T> equalityComparer = new KeyEqualityComparer<T>(func);
return equalityComparer;
}
I wtedy możemy operować za pomocą wyrażeniu lambda:
Func<Value, object> keyToCompare = x => x.IntValue; var distinctList = list.Distinct(keyToCompare.ToEqualityComparer());
wtorek, 12 marca 2013
Generowanie hasła w PowerShell
Wydaje mi się, że jedno z najczęściej wykonywanych zadań administratorów to jest generowanie nowego hasła dla użytkownika :) Ten post przedstawi Ci w jakie sposoby będziesz mógł wygenerować hasło.
Możesz skorzystać z funkcji Get-Random. Ta funkcja będzie losowała znaki ASCII. Poniżej jest kod:
Innym sposobem na wygenerowanie hasła jest użycie genreator GUID. Masz ograniczenie do 32 znaków, ale wydaje mi się że nie ma takiego szaleńca, który by wygenerował hasło dla użytkownika składające się z ponad 32 znaków :)
Jeżeli chciałbyś skorzystać z dedykowanej klasy do generowania hasła z .NET to możesz użyć Membership.GeneratePassword.
Ale pomimo tych wszystkich udogodnień i tak chciałem stworzyć swoją własną funkcję do generowania hasła. Poniżej jest skrypt:
Możesz skorzystać z funkcji Get-Random. Ta funkcja będzie losowała znaki ASCII. Poniżej jest kod:
$length = 8 #długość znaków hasła
$arr =
33..33 + # znak: !
35..46 + # znaki: #$%&'()*+,-.
48..57 + # znaki: 0123456789
64..90 + # znaki: @A-Z
97..122 # znaki: a-z
$result= Get-Random -count $length -input $arr | %{ [char]$_}
[string] -join $result
Innym sposobem na wygenerowanie hasła jest użycie genreator GUID. Masz ograniczenie do 32 znaków, ale wydaje mi się że nie ma takiego szaleńca, który by wygenerował hasło dla użytkownika składające się z ponad 32 znaków :)
$length = 8 $guid = [Guid]::NewGuid().ToString() -replace "-", "" $guid.Substring(0,$length)
Jeżeli chciałbyś skorzystać z dedykowanej klasy do generowania hasła z .NET to możesz użyć Membership.GeneratePassword.
$length = 8
[Reflection.Assembly]::LoadWithPartialName("System.Web") | Out-Null
[System.Web.Security.Membership]::GeneratePassword($length,0)
Ale pomimo tych wszystkich udogodnień i tak chciałem stworzyć swoją własną funkcję do generowania hasła. Poniżej jest skrypt:
function Generate-Password
{
Param(
[int] $length=8,
[int] $numberOfNonAlphanumericCharacters=0
)
$allowedChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
if ($numberOfNonAlphanumericCharacters -gt 0)
{
$allowedChars += "-&@#%!*$?_";
}
$rnd = new-object System.Random
$passwordChars = @()
for ($i = 0; $i -lt $length; $i++)
{
$rndIndex = $rnd.Next(0, $allowedChars.Length)
$passwordChars += @( $allowedChars[$rndIndex] )
}
return [string] -join $passwordChars
}
sobota, 2 marca 2013
Zamykanie Windows 8
Musze się przyznać, że jak pierwszy raz uruchomiłem Windows 8 to nie wiedziałem, gdzie jest przycisk do zamykania komputera. Po pewnym czasie w końcu znalazłem. Jeżeli jesteś użytkownikiem Windows 8, to miałeś może taki problem jak ja??

W każdym razie nie o problemach szukania przycisku chciałbym napisać, ale o szybkim zamykaniu systemu.
Na samym początku stwórz skrót ma pulpicie.

Jako program wykonywalny wpisz:

Inne opcje są podane na tej stronie.
Polecam wybranie sobie ikonki.
Zaznacz sobie prawym przyciskiem myszy i wybierz "Przypnij do ekranu startowego" ("Pin to Start").

W menu Start przenieś przycisk tam gdzie chcesz. Oczywiście możesz dodać inne opcje zamykania (np. restartowanie).

Na końcu możesz jeszcze usunąć te skróty, które stworzyłeś na pulpicie - usunięcie ich nie wpływa na funkcjonalność okna Start.

W każdym razie nie o problemach szukania przycisku chciałbym napisać, ale o szybkim zamykaniu systemu.
Na samym początku stwórz skrót ma pulpicie.

shutdown.exe /s /t 00

Polecam wybranie sobie ikonki.
Zaznacz sobie prawym przyciskiem myszy i wybierz "Przypnij do ekranu startowego" ("Pin to Start").

W menu Start przenieś przycisk tam gdzie chcesz. Oczywiście możesz dodać inne opcje zamykania (np. restartowanie).

Na końcu możesz jeszcze usunąć te skróty, które stworzyłeś na pulpicie - usunięcie ich nie wpływa na funkcjonalność okna Start.
czwartek, 13 grudnia 2012
Achievements w Visual Studio
Gry, aby były bardziej atrakcyjniejsze dla gracza, wprowadziło się termin achievementy, czyli osiągnięcia. Za każdą wykonaną specjalną rzecz, odblokowuje się pewne osiągnięcie. Później taki gracz może pochwalić się takim osiągnięciem przed kolegami czy na Facebooku. Osiągnięcia mają już minecraft, WoW czy Team Fortress (razem ze statystyką osiągnięć ). Możesz też zdobywać osiągnięcia na XBox360.
Mimo tego, że kilka lat temu każdy potępiał ten pomysł, dziś dla większości graczy stanowią nieodłączną część zabawy. Do tego stopnia, że niektórzy z nich katują godzinami tytuły, na które nigdy by nawet nie spojrzeli, a wszystko po to, aby być na wyższym poziomie w rankingu.
Takie osiągnięcia są też dla Visual Studio. Powstał specjalny plugin do VS. Tak jak w grach komputerowych, za wykonaną czynność dostajemy osiągnięcie. VS Achievements nie tylko bawi, ale również uczy. Wykonując pewne osiągnięcia, możesz się nauczyć pewnych narzędzi, technologii czy sposobów pisania kodu. Jest tez ranking użytkowników VS.
Achievementy w grach wprowadzono po to, aby w prosty sposób mogły wydłużyć spędzanie czasu wolnego przed grą i zwiększyły więzi między graczem a grą. To samo dzieje się z VS. Dodatek do VS2012 można pobrać tutaj.
Nie mam wielkich osiągnięć, ale raz na jakiś czas będę się starał, aby wykonać jakieś 'głupie' osiągnięcie. Poniżej jest moja statystyka.
Takie osiągnięcia są też dla Visual Studio. Powstał specjalny plugin do VS. Tak jak w grach komputerowych, za wykonaną czynność dostajemy osiągnięcie. VS Achievements nie tylko bawi, ale również uczy. Wykonując pewne osiągnięcia, możesz się nauczyć pewnych narzędzi, technologii czy sposobów pisania kodu. Jest tez ranking użytkowników VS.
Achievementy w grach wprowadzono po to, aby w prosty sposób mogły wydłużyć spędzanie czasu wolnego przed grą i zwiększyły więzi między graczem a grą. To samo dzieje się z VS. Dodatek do VS2012 można pobrać tutaj.
Nie mam wielkich osiągnięć, ale raz na jakiś czas będę się starał, aby wykonać jakieś 'głupie' osiągnięcie. Poniżej jest moja statystyka.
poniedziałek, 26 września 2011
Metro Style - Nowy interfejs dla Windows 8
Konferencja BUILD już się skończyła i to co Microsoft przygotował dla developerów całkowicie mnie zszokowało. Nowy interfejs dla Windows 8.
Microsoft zdał sobie sprawę, że system operacyjny dla różnych urządzeń powinien być jeden. Diametralne zmiany, które ujednolicają obsługę zwyczajnego notebooka, tableta czy telefonu komórkowego, mogą na samym początku wzbudzać strach. Pamiętam, że tak samo było z Ribbonem. Większość osób, krytykowało nowy interface, ale po któtkim czasie korzystania z niego uważali, że wstążka jest genialna :)
Więcej o Metro Style oraz o samym Windows 8 można znaleźć w poniższym filmiku.
Po obejrzeniu takiego filmiku, jedyne co mi się nasuwa to pytanie:
Microsoft zdał sobie sprawę, że system operacyjny dla różnych urządzeń powinien być jeden. Diametralne zmiany, które ujednolicają obsługę zwyczajnego notebooka, tableta czy telefonu komórkowego, mogą na samym początku wzbudzać strach. Pamiętam, że tak samo było z Ribbonem. Większość osób, krytykowało nowy interface, ale po któtkim czasie korzystania z niego uważali, że wstążka jest genialna :)
Więcej o Metro Style oraz o samym Windows 8 można znaleźć w poniższym filmiku.
Po obejrzeniu takiego filmiku, jedyne co mi się nasuwa to pytanie:
Jak nadążyć za technologią??
Subskrybuj:
Posty (Atom)


