Zugriffsberechtigungen in .NET: Sicherheitslücken schließen

Sowohl C# als auch VB.Net enthalten optionale Schlüsselwörter, die mit den fünf Zugriffsebenen korrespondieren. Die folgende Liste bietet einen Überblick über diese Schlüsselwörter, wie sie in C# verwendet werden:

  • public: keine Zugriffsbeschränkungen.
  • protected: Zugriff auf enthaltende/abgeleitete Klassen begrenzt.
  • internal: Zugriff auf das aktuelle Projekt begrenzt.
  • protected internal: Zugriff auf enthaltende/abgeleitete Klassen und das aktuelle Projekt begrenzt.
  • private: Zugriff auf den enthaltenden Typ begrenzt.

Die entsprechende Liste für VB.NET sieht so aus:

  • Public: keine Zugriffsbeschränkungen.
  • Protected: Zugriff auf enthaltende/abgeleitete Klassen begrenzt.
  • Private: Zugriff auf den enthaltenden Typ begrenzt.
  • Friend: Zugriff auf das aktuelle Projekt begrenzt.
  • Protected Friend: Zugriff auf enthaltende/abgeleitete Klassen und das aktuelle Projekt begrenzt.

Diese Zugriffsmodifizierer werden vor die zugeordneten Typen gesetzt. Das folgende VB.NET-Listing bietet ein rudimentäres Beispiel für die Nutzung von Zugriffsebenen.

Der Namespace erhält keine Zugriffsebene (er erhält nie eine), die Klasse jedoch schon. Die Klasse AssemblyOnly wird als Friend definiert. Jeglicher Code innerhalb des Assemblers darf sie also verwenden. Die test genannte Funktion ist als Public eingestellt und damit für alle innerhalb des Assemblers verfügbar, da die enthaltende Klasse ja als Friend gekennzeichnet ist.

Das testField ist als Private angelegt. Es kann also nur innerhalb seiner Klasse darauf zugegriffen werden. Der Zugriff auf das testField wird durch Eigenschaften kontrolliert, die wiederum als Public definiert sind. Es können also alle im Assembler darauf zugreifen, da die enthaltende Klasse als Friend definiert ist. Die Methode ChildClassMayExtend ist als Protected gekennzeichent. Damit ist sie also in abgeleiteten Klassen mit diesen abgeleiteten Klassen zugänglich.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Supercomputer-Ranking: Vier europäische Systeme in den Top Ten

Einziger Neueinsteiger ist das Alps-System in der Schweiz. Die weiteren Top-Ten-Systeme aus Europa stehen in…

1 Tag ago

Angriffe mit Banking-Malware auf Android-Nutzer nehmen weltweit zu

Im vergangenen Jahr steigt ihre Zahl um 32 Prozent. Die Zahl der betroffenen PC-Nutzer sinkt…

1 Tag ago

Künstliche Intelligenz fasst Telefonate zusammen

Die App satellite wird künftig Telefongespräche in Echtzeit datenschutzkonform mit Hilfe von KI zusammenfassen.

2 Tagen ago

MDM-Spezialist Semarchy stellt Data-Intelligence-Lösung vor

Als Erweiterung von Master-Data-Management ermöglicht es die Lösung, den Werdegang von Daten verstehen und sie…

2 Tagen ago

Apple stopft 15 Sicherheitslöcher in iOS und iPadOS

Sie erlauben unter anderem das Einschleusen von Schadcode. In älteren iPhones und iPads mit OS-Version…

2 Tagen ago

Hochleistungs-NAS-Speicher für KI-Daten

Neuer Speicher für KI von Huawei mit integrierter Ransomware-Erkennungs-Engine und deutlich geringerem Energiekonsum.

2 Tagen ago