Javascript üzerinden kullanıcı adı ve şifre içeren bir servis linki üzerinden sorgu almam gerekti. Şöyle düşünelim. http://servisdomain.com?username=abs&password=123 şeklinde ve kullanıcı adı şifre sabit değişmiyor. Sonuç olarak üretilen "13213" şeklinde ID değeri alıyorum.

Kullanıcı adı ve şifre javascript sayfa kaynağında görüntülenebileceği için sunucu tarafına bir sayfa oluşturarak kullanıcı adı ve şifreyle sunucu üstünden sorgu gönderip cevabı alabiliyorum. Onu da şöyle düşünelim: Sunucu tarafında da http://localhost/deneme/getid şeklinde istediğimde ID değeri geliyor.

Fakat bu sorguyu http://localhost/deneme/getid adresini bilen herkes yapabilir. Sadece javascript uygulamamdan bu sorguya cevap verilmesini nasıl sağlayabilirim?.

soruldu: 30 Kas '13, 11:43

barteloma's gravatar image

barteloma
330111322
cevap kabul oranı: 0%

Ben soruyu anlayamadım. Şöyle mi siz bir web servise kullanıcı ve adı şifreyi gönderiyorsunuz oda size bir id gönderiyor. Sonra siz yine http://localhost/deneme/getid şeklinde bir yerden id alıyorsunuz. Bu idlerin farkı nedir?

(30 Kas '13, 13:30) molgun molgun's gravatar image

Web servisi, servis adresinde username ve password içerdiğinden servis çağrısını server tarafında php, aspx safası gibi bir sayfaya yaptırıyorum. Javascript tarafında da bu php veya aspx sayfasını çağırıyorum. Yani Proxy görevi görüyor. Javascript tarafı ile servis tarafı arasında bir vekil oluyor. Ancak bu veile dışardan biri de ulaşmasın istiyorum. Sadece javascript üzerinden ben ulaşayım.

(01 Ara '13, 01:31) barteloma barteloma's gravatar image

Sunucu tarafında yazdığınız http://domain.com/deneme/getid kodunu çalıştıran yere gelen Request içerisinde HTTP__REFERER değişkeninin http://domain.com/ şeklinde bir içeriği olup olmadığını kontrol edin. Bu sayede, bir başka sunucudan gelen Request'e ait HTTP_-REFERER içeriği şu şekilde olacaktı: http://xyz.com

Bu demek oluyor ki bu istek dışarıdan geliyor ve cevap vermeye gerek yok. Response oalrak hata veya boş veri gönderebilirsiniz.

permanent link

cevaplandı: 04 Ara '13, 12:02

ucuncubayram's gravatar image

ucuncubayram
1.4k122840
cevap kabul oranı: 11%

Birincisi, ağı dinleyen biri düz http isteklerinde giden kullanıcı adı ve şifreyi algılayabilir. Bu sebeple sunucuya sertifika anahtarı yerleştirilir ve tüm istekler HTTPS'e yönlendirilir.

İkincisi getId dediğiniz şey aslında session cookie doğrulama oluyor. HTTP Get sonucu ile değil de genelde Set-Cookie header bilgisiyle gönderilir.

HTTPS, "handshake" denilen anahtar alış verişinden itibaren kriptolojik veri alış verişini sağlar. Yani eğer ağı dinleyende sertifika anahtarı yoksa veri oldukça güvenlidir. HTTP Get URL'si de bu güvenliğe dahildir. Yani URL parametresinde veya Post isteğiyle şifre göndermek HTTPS ile mümkün.

Kısaca HTTPS ve session cookie doğrulama ile güvenliği sağlayabilirsiniz. İstemcilerin Cookie ve Sunucuların Sertifika bilgileri çalınmadıkça güvenli iletişim gerçekleşir.

permanent link

cevaplandı: 01 Ara '13, 01:01

nurettin's gravatar image

nurettin
2.2k2441
cevap kabul oranı: 14%

değiştirildi: 01 Ara '13, 01:02

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×137
×3

Soruldu: 30 Kas '13, 11:43

Görüntüleme: 845 kez

Son güncelleme: 04 Ara '13, 12:02

powered by BitNami OSQA