Freigeben über


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.

Siehe auch

Referenz

CodeAccessPermission.Assert

Konzepte

Richtlinien für das Schreiben von sicherem Code