WriteOnly (Visual Basic)

Określa, że właściwość może być zapisywana, ale nie odczytywana.

Uwagi

Reguły

Kontekst deklaracji. Można używać WriteOnly tylko na poziomie modułu. Oznacza to, że kontekst deklaracji dla WriteOnly właściwości musi być klasą, strukturą lub modułem i nie może być plikiem źródłowym, przestrzenią nazw lub procedurą.

Właściwość można zadeklarować jako WriteOnly, ale nie zmienną.

Kiedy używać funkcji WriteOnly

Czasami chcesz, aby kod zużywany mógł ustawić wartość, ale nie odnajduje tego, co to jest. Na przykład poufne dane, takie jak numer rejestracji społecznościowej lub hasło, muszą być chronione przed dostępem przez dowolny składnik, który go nie ustawił. W takich przypadkach można użyć WriteOnly właściwości , aby ustawić wartość.

Ważne

Podczas definiowania i używania WriteOnly właściwości należy wziąć pod uwagę następujące dodatkowe środki ochronne:

  • Zastępowanie. Jeśli właściwość jest elementem członkowskim klasy, zezwól jej na wartość domyślną NotOverridable i nie deklaruj jej Overridable ani MustOverride. Zapobiega to dokonaniu niepożądanego dostępu przez klasę pochodną za pośrednictwem przesłonięcia.

  • Poziom dostępu. Jeśli przechowujesz poufne dane właściwości w co najmniej jednej zmiennej, zadeklaruj je jako prywatne , aby żaden inny kod nie mógł uzyskać do nich dostępu.

  • Szyfrowanie. Przechowuj wszystkie poufne dane w postaci zaszyfrowanej, a nie w postaci zwykłego tekstu. Jeśli złośliwy kod w jakiś sposób uzyska dostęp do tego obszaru pamięci, trudniej jest korzystać z danych. Szyfrowanie jest również przydatne, jeśli konieczne jest serializowanie poufnych danych.

  • Resetowanie. Po zakończeniu definiowania właściwości przez klasę, strukturę lub moduł zresetuj poufne dane do wartości domyślnych lub innych wartości bez znaczenia. Zapewnia to dodatkową ochronę w przypadku zwolnienia tego obszaru pamięci w celu uzyskania ogólnego dostępu.

  • Stan trwały. Nie utrwalaj żadnych poufnych danych, na przykład na dysku, jeśli można ich uniknąć. Ponadto nie zapisuj żadnych poufnych danych do Schowka.

Modyfikator WriteOnly może być używany w tym kontekście:

Property, instrukcja

Zobacz też