2012-09-20 12 views
5

Niektórzy sprytni ludzie używają mojej apiocentrycznej aplikacji internetowej do klonowania mojej usługi i sprawiają, że wygląda ona jak własna. Czy istnieje sposób, aby upewnić się, że wszystkie żądania ajax są dla/z mojej witryny?Jak upewnić się, że żądania pochodzą z mojej witryny?

Oczywiście mogę użyć nagłówka strony odsyłającej, ale mogą z łatwością go sfałszować.

+0

Jak oni cloaning go? Jedynym sposobem, jaki mogę wymyślić dla ciebie, aby to zabezpieczyć, jest użycie ssl. –

+0

możliwy duplikat [Jak zabezpieczyć połączenie JSON bez użycia captcha] (http://stackoverflow.com/questions/12444608/how-to-secure-json-call-without-using-a-captcha) – DCoder

Odpowiedz

5

Ustaw plik cookie na kliencie, gdy trafi on na Twoją witrynę, zanim wyśle ​​wszystkie żądania Ajax.

Następnie sprawdź ciasteczko podczas serwowania Ajax.

Lub alternatywnie możesz spowodować, że twój Ajax żąda tylko POST. W ten sposób podlegają one tej samej polityce dotyczącej pochodzenia.

Jednak złamie całą spokojną ideologię.

http://en.wikipedia.org/wiki/Same_origin_policy

+0

bezpieczeństwo> ideologia , chociaż POST w tym celu również mnie budzi. –

+0

+1 za dobrą/poprawną odpowiedź –

+1

Domyślam się, że jQuery 'JSONP' obejmie to ograniczenie 'tego samego pochodzenia' i będzie nadal otrzymywać dane w zwykły sposób. –

Powiązane problemy