Aus naheliegenden Gründen möchte ich den besten Weg identifizieren, um das Auth_Password von der Erfassung durch ELMAH zu entfernen. Was ist der beste Weg, dies zu tun?So entfernen Sie "Auth_Password" aus den ELMAH-Protokollen
Antwort
Da ELMAH Open Source ist, habe ich die Error.CS Datei so modifiziert. Innerhalb des Fehler cunstructor von Error.CS (etwa Zeile 126), habe ich dies:
_serverVariables.Remove(AUTH_PASSWORD);
//AUTH_PASSWORD = const string = "AUTH_PASSWORD" AND SET ELSEWHERE
Ich habe dies geschafft zu tun, ohne die ELMAH Quelle zu ändern: http://www.kipusoep.nl/2012/01/06/umbraco-elmah-with-sql-ce-4-0-and-authentication-part-2/
ich die gleiche Sache nur begegnet ; mit dem folgenden gelöst:
using Elmah;
using ElmahErrorLogModule = Elmah.ErrorLogModule;
namespace XXXX
{
public class ErrorLogModule : ElmahErrorLogModule
{
protected override void OnErrorSignaled(object sender, ErrorSignalEventArgs args)
{
// Remove password from the server variables being serialized
args.Context.Request.ServerVariables.Remove("AUTH_PASSWORD");
//TODO: remove session id, cookie too?
base.OnErrorSignaled(sender, args);
}
}
}
Und das ErrorLog Modul in web.config aktualisiert, Konfiguration/system.webServer/Module:
<add name="ErrorLog" type="XXXX.ErrorLogModule" preCondition="managedHandler" />
das Problem ohne eine zweite Rundfahrt Dies wird lösen. Kein Problem, wenn das Passwort später von der eingehenden Anfrage verwendet wird, wie die Elmah-Quelle zeigt, dass es eine Kopie braucht.
Ich weiß, dies ist ein bisschen spät als Reaktion auf die oben genannten, aber das Problem scheint in der aktuellen Elmah für ASP korrigiert worden, und nicht für Elmah.Mvc nugget Paket.
Ich konnte @ Dominique Birchs Antwort nicht funktionieren, weil der Kontext schreibgeschützt ist. Stattdessen abgeleitet ich von der ErrorLog (in meinem Fall, MySqlErrorLog) und habe es dort:
public class FilteringMySqlErrorLog : MySqlErrorLog
{
static readonly string[] _stripSearch = new[] { "password", "cardnumber", "ccnumber", "cvv" };
public FilteringMySqlErrorLog(IDictionary config)
: base(config)
{ }
public override string Log(Error error)
{
error.ServerVariables.Remove("AUTH_PASSWORD");
foreach (string key in error.Form.AllKeys.ToList())
{
if (_stripSearch.Any(x => key.IndexOf(x, StringComparison.InvariantCultureIgnoreCase) != -1))
error.Form.Remove(key);
}
return base.Log(error);
}
}
- 1. Entfernen Sie "" aus den Suchergebnissen
- 2. So entfernen Sie den Knotenserver aus der Visual Studio-Lösung
- 3. So entfernen Sie alle Objekte aus den Core-Daten
- 4. So entfernen Sie `limitedSyndication` aus den YouTube Data API-Suchergebnissen
- 5. So entfernen Sie Seitenelemente aus den Suchergebnissen/Stichwörtern?
- 6. Swift: So entfernen Sie den Rahmen aus dem segmentierten Steuerelement
- 7. So entfernen Sie Protokolle aus Linkdialog (ckeditor)
- 8. So entfernen Sie Zeilenlücken aus Oracle-Datenbankspalten
- 9. So entfernen Sie Kontrollzeichen aus UTF8-Zeichenfolge
- 10. So entfernen Sie Datenelemente aus HTML
- 11. So entfernen Sie alle Elemente aus Array
- 12. So entfernen Sie einen XmlNode aus XmlNodeList
- 13. So entfernen Sie Elemente aus firebase RecyclerView
- 14. So entfernen Sie Spalten aus einem Array
- 15. So entfernen Sie einen Benutzer aus Jenkins
- 16. So entfernen Sie Zeilen aus DataGridView?
- 17. So entfernen Sie ein Modul aus CPAN?
- 18. So entfernen Sie Leerzeichen aus einem XmlDocument
- 19. So entfernen Sie GMSPolygon aus GMSMapView
- 20. So entfernen Sie Duplikate aus int [] []
- 21. So entfernen Sie Tooltip aus Summernote
- 22. So entfernen Sie den Abschnitt in R
- 23. So entfernen Sie den Alarmdialog Titelleiste
- 24. So entfernen Sie den Pfeil in UITableView
- 25. So entfernen Sie Zeichenfolgen aus einer kompilierten Binärdatei (.so)
- 26. Entfernen Sie den Hash aus url
- 27. So entfernen Sie Datenvalidierungen?
- 28. So entfernen Sie den Platz zwischen den Kontextmenüelementen in UWP
- 29. So entfernen Sie den Schwerkraftfaktor aus den Beschleunigungsmessermesswerten in Android 3-Achsen-Beschleunigungsmesser
- 30. So entfernen Sie MenuStrip-Untermengränder?
So sehr ich auch lieben würde ich zu billig fühlen würde. –