12

Sto usando un'applicazione di binari per servire una pagina da abc.com. In esso, ho impostato le intestazioni di risposta nel mio controller di applicazioni (ad ogni richiesta attraverso before_filter) in modo che si può accedere tramite un iframe solo da un sito specifico (xyz.com), attraverso il seguente codice:X-Frame-Options ALLOW-FROM da un sito specifico permette da tutti

def set_x_frame_options 
    response.headers["X-Frame-Options"] = "ALLOW-FROM http://www.xyz.com" 
end 

Il problema è, non solo sono in grado di accedere alla pagina da abc.com su xyz ma anche su qualsiasi altro sito web. Voglio limitare l'accesso solo a xyz.com. Quando esamino le intestazioni di risposta nella console di Chrome, posso vedere che X-Frame-Options viene trasmesso correttamente. Questo sta accadendo su tutti i browser. Mi sto perdendo qualcosa?

+0

Forse correlato: https://groups.google.com/a/chromium.org/forum/?fromgroups#!topic/chromium-bugs/ PkrSeB74a38 .. che dire di FF/IE9, ecc.? Cioè, è solo [quella versione di] Chrome che è interessata? –

+0

Vedere anche http://stackoverflow.com/questions/10658435/x-frame-options-allow-from-in-firefox-and-chrome "Il problema è: * sembra che l'invio dei risultati del dominio ALLOW-FROM sia un no -op in generale per gli ultimi Firefox e Google Chrome * [qualsiasi versione fossero in quel momento]. IE8, almeno, sembra essere correttamente implementando ALLOW-FROM. " .. "Tuttavia, la cornice visualizza ancora il contenuto." –

+0

Ho controllato questi due collegamenti prima di pubblicare qui. Per quanto riguarda il primo link, ho pensato che fosse così, ma ho controllato su Firefox e Safari ed entrambi sembrano consentire tutto, quindi non sono sicuro se sia specifico del chrome. –

risposta

2

Per chi cerca una risposta definitiva: non è implementata in WebKit, ma funziona in Firefox come riferito dalla versione 18.0. La seguente sintassi rubino funziona per me in Firefox 20.0 su OSX:

response.headers["X-Frame-Options"] = "Allow-From http://www.website.com" 
+2

In Chrome mi dà: ''Allow-From http://www.website.com' non è una direttiva riconosciuta. L'intestazione verrà ignorata – Meekohi