Da ich mehrere Websites auf derselben IIS-Instanz hostet, habe ich in den IIS-Einstellungen den HTTP-Antwortheader "X-Frame-Optionen: DENY" definiert, um meine Clients (und deren Clients) vor Clickjacking zu schützen .Überschreiben der IIS-Antwortheader
Ich arbeite derzeit mit WebForms auf einer E-Commerce-Website und ich muss den Antwort-Header 'X-Frame-Optionen' auf einer bestimmten URL (der Rückruf meines Zahlungsanbieters) entfernen.
Ich habe ein HTTP-Modul geschrieben (siehe Code unten) und registriert es in der 'web.config' meiner E-Commerce-Website, der Code funktioniert, aber es scheint, dass IIS die Antwortheader nach der Ausführung von meinem hinzufügt HttpModul.
public class XFrameOptionsControl : IHttpModule
{
public void Dispose()
{
}
public void Init(HttpApplication application)
{
application.PreSendRequestHeaders += new EventHandler(PreSendRequestHeaders);
}
private void PreSendRequestHeaders(object sender, EventArgs e)
{
HttpApplication application = sender as HttpApplication;
HttpContext context = application.Context;
string callbackDocumentName = "callback.html";
if (callbackDocumentName != null)
{
if (!context.Request.RawUrl.ToLower().Contains(callbackDocumentName.ToLower()))
{
context.Response.Headers.Remove("X-Frame-Options");
}
}
}
}
Normalerweise ist die ‚callbackDocumentName‘ aus der ‚web.config‘ abgerufen, aber ich habe es für das Beispiel zu vereinfachen. Ich habe versucht, das Debuggen mit Visual Studio und dem 'context.Response.Headers' enthält die folgenden Überschriften, aber nicht die 'X-Frame-Options':
- Cachecontrol
- Content-Type
- Server
- X-AspNet-Version
Vielen Dank im Voraus!
sein könnte Hilfe geschickt wird: https://blogs.msdn.microsoft.com/varunm/2013/ 04/23/remove-unwanted-http-response-headers/ – ediblecode
Vielen Dank für Ihre schnelle Antwort! Ich habe diesen Artikel bereits berücksichtigt, bevor ich ihn auf Stackoverflow gepostet habe. Leider gibt es für die 'X-Frame-Optionen' kein 'ALLOWALL', also muss ich es wirklich aus den Headern entfernen, ich kann es nicht nur ändern –