2013-04-24 26 views
18

Arkadaşım Carsten Lau, etki alanları arası çerezleri nasıl okuyacağınızla ilgili ilginç bir fikir geldi.Çapraz etki alanı tanımlama bilgileri - belki yeni bir fikir

Durum: "B" etki alanında ayarlanan "A" etki alanındaki bir çerezi okumak istiyorsunuz. Fikir: "A" alanındaki istemciden, "B" etki alanındaki bir dinamik kaynağa bir istek talebi gerçekleştirirsiniz - f.e. "B" sunucusunda aslında PHP, Java vb. gibi çerezleri okuyabilen bir programlama dilidir. Bu istek ile oturum kimliği gibi benzersiz bir tanımlayıcı gönderirsiniz. Yani "A" gibi görünebilir alanda bulunan bir siteye bakar istemci üzerinde kod:

<img src="www.domainB.com/?getCookie.php?sessionID=1234"> 

Şimdi komik kısım geliyor, sunucu B sunucu tarafında alanı "B" tarafından belirlenen çerez ve okur sonucu, "A" etki alanı tarafından erişilebilen bir DB'de sağlanan oturum kimliğiyle yazar veya "A" etki alanındaki istemciye çerez bilgilerini içeren bir yanıt verir ve ardından "A" sunucusuna AJAX aracılığıyla gönderir.

Henüz bulamadığımız bir kusur olduğundan eminim. Ben şahsen sunucu "B" çerez bilgilerini okuyamayacağına inanıyorum çünkü istemci-tarayıcılar URL'si "A" alanına işaret ediyor, ama tabii ki "getCookie" -gerektiği yukarıda "B" ye işaret ediyor.

Lütfen bunun hakkında ne düşündüğünüzü, neden işe yarayıp yaramadığını bize bildirin. Küçük bir kavram kanıtı benim büyük sürprizim için başarılıydı.

+2

Çalışması gerekir. Aslında, bu, web sitelerinin farklı etki alanlarındaki kullanıcılar için nasıl oturum açtığını gösterir, çünkü etki alanları oturum verilerini içeren veritabanlarını paylaşır. – Joseph

+1

Teşekkürler. Her yerde internet üzerinde ve burada SO üzerinde "çapraz etki alanı çerezleri = imkansız" okuyabilirken, aslında her iki etki alanına sahipseniz ve "B" alanında küçük bir komut dosyası ekleyebilirseniz, basit kesmek mümkün kılar? Garip ... –

+7

Bunun hakkında garip bir şey yok. Farklı bir alan adı için bir çerez okumıyor veya ayarlamıyorsunuz. Bu, alan adınızdan _is_ imkansız. Diğer alandan “yardım” ederseniz, o zaman bu konuda küçük “alanlar arası” bir şey vardır - diğer alandan gelen bilgi _by choice_; diğer alanın bunu istemediği yerde gerçekleşmesini önlemek için alanlar arası politika uygulanır. – CBroe

cevap

15

Bu, normaldir çünkü 2 etki alanını denetlersiniz. Çoğu web sitesi bu arada çapraz etki alanı tek oturum açma işlemi gerçekleştirir. Ancak, ikinci alanın kontrolünü elinizde bulundurmazsanız, ondan çerezleri okuyamazsınız.

+3

elbette, haklısınız, ancak yine de, etki alanı-tanımlama bilgilerini ayarlamak için aradığınız zamanların çoğunda basit (ve yanlış) "mümkün değil" yanıtları vardır. Her iki alanın da sahibiyseniz, sorun yoktur. –

İlgili konular