CA2106: Sichere Bestätigungen
TypeName |
SecureAsserts |
CheckId |
CA2106 |
Kategorie |
Microsoft.Security |
Unterbrechende Änderung |
Breaking |
Ursache
Eine Methode bestätigt eine Berechtigung, und es werden keine Sicherheitsüberprüfungen für den Aufrufer durchgeführt.
Regelbeschreibung
Das Gewähren einer Sicherheitsberechtigung ohne Sicherheitsüberprüfungen durchzuführen, kann ein ausnutzbares Sicherheitsrisiko in Code hinterlassen. Ein Sicherheitsstackwalk wird beendet, wenn eine Sicherheitsberechtigung gewährt wird. Wenn Sie eine Berechtigung ohne jegliche Überprüfung des Aufrufers gewähren, kann der Aufrufer möglicherweise indirekt mithilfe Ihrer Berechtigungen Code ausführen. Assertions ohne Sicherheitsüberprüfungen sind nur zulässig, wenn Sie sicher sind, dass die Assertion nicht auf schädliche Weise verwendet werden kann. Eine Assertion ist harmlos, wenn der Code, den Sie aufrufen, harmlos ist oder Benutzer keine beliebigen Informationen an Code übergeben können, den Sie aufrufen.
Behandeln von Verstößen
Um einen Verstoß gegen diese Regel zu beheben, fügen Sie der Methode oder dem deklarierenden Typ eine Sicherheitsanforderung hinzu.
Wann sollten Warnungen unterdrückt werden?
Unterdrücken Sie eine Warnung dieser Regel nur nach einer sorgfältigen Sicherheitsüberprüfung.