CORS Einstellungen scheinen nicht zu greifen - Was muss ich ändern?
am 17.03.2023 - 14:48 Uhr in
Hallo,
ich versuche mittels eines iFrames in einer Seite (domain1.de) eine Unterseite einer anderen Seite (domain2.de) darzustellen.
domain1.de ist kein Drupal-System - domain2.de läuft aktuell mit Drupal 9.5.x (PHP 8.1.16, DB 8.0.32 MySQL).
bei domain1.de - iframe eingebunden (auch mit "sandbox="allow-same-origin"" funktionierte es nicht)
<iframe width="560" height="315" title="domain2 Einbinden" frameborder="0" allowfullscreen="" src="https://domain2.de/eine-seite" ></iframe>
bei domain2.de - CORS Einstellung in service.yml durchgeführt
# Configure Cross-Site HTTP requests (CORS).
# Read https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
# for more information about the topic in general.
# Note: By default the configuration is disabled.
cors.config:
enabled: true
# Specify allowed headers, like 'x-allowed-header'.
allowedHeaders: ['*']
# Specify allowed request methods, specify ['*'] to allow all possible ones.
allowedMethods: ['*']
# Configure requests allowed from specific origins.
allowedOrigins: ['https://domain1.de']
# Sets the Access-Control-Expose-Headers header.
exposedHeaders: []
# Sets the Access-Control-Max-Age header.
maxAge: false
# Sets the Access-Control-Allow-Credentials header.
supportsCredentials: true
Dass bei "exposedHeaders" scheinbar ein Array anstelle ein Boolean-Wert (true/false) stehen soll seit PHP 8.1, habe ich folgendem Eintrag entnommen: https://drupal.stackexchange.com/questions/312414/cors-policy-no-access-...
bei domain2.de - CORS Einstellung in service.yml - habe auch versucht die "allowedHeaders" und "allowedMethods" wie folgt zu definieren, brachte aber auch keinen Erfolg:
cors.config:
enabled: true
# Specify allowed headers, like 'x-allowed-header'.
allowedHeaders: ['x-csrf-token','authorization','content-type','accept','origin','x-requested-with', 'access-control-allow-origin','x-allowed-header']
# Specify allowed request methods, specify ['*'] to allow all possible ones.
allowedMethods: ['POST', 'GET', 'OPTIONS', 'PATCH', 'DELETE']
# Configure requests allowed from specific origins.
allowedOrigins: ['https://domain1.de']
# Sets the Access-Control-Expose-Headers header.
exposedHeaders: []
# Sets the Access-Control-Max-Age header.
maxAge: false
# Sets the Access-Control-Allow-Credentials header.
supportsCredentials: true
Fehlermeldung im Browser:
Die "X-Frame-Options"-Direktive "SAMEORIGIN" verbietet das Laden von "https://domain2.de/eine-seite" in einem Frame.
Was muss ich anders einstellen? Muss ich noch zusätzlich in der htaccess das explizit einstellen? Wenn ja, wie?
schon mal Danke für eure Hilfe.
Liebe Grüße,
pyretta
- Anmelden oder Registrieren um Kommentare zu schreiben
Es gibt das Modul Security
am 13.04.2023 - 21:10 Uhr
Es gibt das Modul Security Kit, damit kann man CORS Einstellungen leicht anpassen.