Kod On Fire pasją Cool Code

28 Jul/09 1

Jak zabezpieczyć danych logowania na Ajax

JavaScript i wielu innych klientów, które korzystają z wypoczynku oraz inne usługi internetowe muszą korzystać i hasło umożliwiające dostęp użytkowników końcowych do takich usług.

Istnieje kilka sposobów, aby uzyskać poświadczenia na serwer. Jedną z popularnych metod jest użycie HTTP1.1 Auth, albo zbiór lub podstawowym. Problem z tej metody jest to, że nie ukrywa swoich poświadczeń od świata. Każdy, słuchanie muzyki w ruchu na internetowej jest zasadniczo w stanie uzyskać poświadczenia z nagłówków.

Inną metodą, prawdopodobnie chętniej wykorzystywane przez większość, ma zawierać danych logowania w POST lub GET zwraca się do serwisów internetowych. I że jest tak samo narażony.

http://mywebserver.com/mywebservice/?user=admin&pass=1234
nie powodują bardzo wysokie bezpieczeństwo transportu.

SSL jest naprawdę jedynym sposobem, aby upewnić się, że poświadczenia pozostają ukryte przed resztą świata.

Tokeny na serwer Wygenerowane Podmienianie danych logowania

I podjęli inną taktykę. Prowadzi oczywiście następujące:

  1. Na życzenie klienta losowy token z serwera to wykorzystać w trakcie sesji.
  2. Po otrzymaniu tokena klienta łączy token do końca hasło, a następnie nie hash MD5 na całość.
  3. Gdy potrzebne są poświadczenia przez serwer, klient przechodzi user = 'username' i passhash = [md5 (hasło + token)]
  4. Serwer porównuje to z tym samym procesie na jego koniec. Jeżeli dwie sieka mecz, to hasła używane w tych mieszania musi być taki sam, jak dobrze.

Piękno tej metody jest to, że chociaż jest to w 100% niezawodne metody prawidłowego określenia odpowiednie uprawnienia, nie jest także możliwe, aby odwrócić ten proces i uzyskać hasło powrotem.

Biorąc rzeczy jeden krok dalej

Pierwszym krokiem było dla mnie do korzystania z [md5 (hasło + token)]. Mam teraz aktualizacja jest korzystanie z różnych informacji chciałbym ukryć:
[Md5 (nazwa użytkownika + hasło + + my_ip token)], który ma pewne zbudowany w cross-site scripting zaciemniania wbudowane

Przebiegły i bardzo gorliwy haker może jeszcze przejąć sesję z pewnym wysiłkiem. I można mieć pewność, że nie warto jej natomiast regularnie zmieniając znak na bieżącej sesji.

API JavaScript KnowledgeTree

Jako deweloper na KnowledgeTree Ja obecnie pracuje na zestaw bibliotek JavaScript, które ujawniają funkcjonalność serwera poprzez API. Części rdzenia KnowledgeTree jest to pełnego zabezpieczenia. Metody wymienione powyżej (lub wariant to) jest w trakcie realizacji na KnowledgeTree Japi.

* KnowledgeTree jest OpenSource Document Management System dla małych i średnich podmiotów na poziomie Enterprise.

R., oraz w górę!

Cieszyć się ten artykuł?

Zapisz się na nasz kanał RSS!

Komentarze (1) Trackbacks (1)
  1. Widzę wiele osób przychodzi tutaj szuka skryptu MD5 używam. Istnieje wiele z nich tam, wybrałem się do wykorzystania tego:

    http://kevin.vanzonneveld.net/techblog/article/javascript_equivalent_for_phps_md5/

    Pamiętaj, aby podać utf8 funkcję w tym samym miejscu w celu zapewnienia, md5 działa.


Zostaw komentarz