De-Qua / v4w_website

A Flask-powered framework for the dequa web platform. Currently in development from full site to just API backend.
GNU Affero General Public License v3.0
4 stars 1 forks source link

iFrame handling #42

Closed freerafiki closed 2 years ago

freerafiki commented 4 years ago

Come possiamo gestire gli iFrame in modo che possiamo embeddare la nostra pagina, ma non tutti possono?

freerafiki commented 4 years ago

Solution: Set a response header with X-Frame Options

Ci sono 3 opzioni:

Resources:

bisogna che capisca un po' meglio dove e come va inserito, sembrerebbe che nel routing una volta che siamo sulla creazione della pagina (calcolo strade ecc) possiamo fareresp = Flask.response() e là inserirgli resp.headers['Access-Control-Allow-Origin'] = 'ALLOW-FROM tatata', però non so se va fatto una volta per tutti, su ogni pagina, e soprattutto cosa fare con l'oggetto resp una volta settato l'header. Un giorno con più calma me lo leggo, intanto scrivo qua così non mi dimentico

Lychfindel commented 4 years ago

Ricommento quesa vecchia issue. Qua la documentazione flask per settare x-frame-options: https://flask.palletsprojects.com/en/1.1.x/security/#x-frame-options La mia proposta è di mettere per www.dequa.it il blocco degli iframe, e poi fare un routing apposito solo per gli iframe (tipo www.dequa.it/embed/etc) in cui fare anche un check di api_key per cui avere il controllo di chi può e chi non può includere la mappa sul sito. Ad esempio google utilizza come src per gli iframe questo formato: https://www.google.com/maps/embed/v1/place?key=API_KEY&q=Space+Needle,Seattle+WA

freerafiki commented 2 years ago

rimuovo, risolta nel nuovo frontend