WriteOnly (Visual Basic)
Určuje, že vlastnost může být zapsána, ale nečte.
Poznámky
Pravidla
Kontext deklarace Můžete použít WriteOnly
pouze na úrovni modulu. To znamená, že kontext deklarace vlastnosti WriteOnly
musí být třída, struktura nebo modul a nemůže to být zdrojový soubor, obor názvů nebo procedura.
Vlastnost můžete deklarovat jako WriteOnly
, ale ne jako proměnnou.
Kdy použít WriteOnly
Někdy chcete, aby kód, který používá, mohl nastavit hodnotu, ale nezjišťovat, co je. Například citlivá data, například číslo registrace sociální sítě nebo heslo, musí být chráněna před přístupem pomocí jakékoli komponenty, která ho nenastavila. V těchto případech můžete k nastavení hodnoty použít WriteOnly
vlastnost.
Důležité
Při definování a použití WriteOnly
vlastnosti zvažte následující další ochranná opatření:
Přepsání. Pokud je vlastnost členem třídy, povolte ji výchozí na NotOverridable a deklarujte ji
Overridable
neboMustOverride
. Tím zabráníte odvozené třídě, aby nepředvídá přístup prostřednictvím přepsání.Úroveň přístupu Pokud jsou citlivá data vlastnosti uložená v jedné nebo více proměnných, deklarujte je jako soukromé , aby k nim neměl přístup žádný jiný kód.
šifrování Ukládejte všechna citlivá data v šifrované podobě místo v prostém textu. Pokud škodlivý kód nějakým způsobem získá přístup k této oblasti paměti, je obtížnější využít data. Šifrování je také užitečné, pokud je nutné serializovat citlivá data.
Obnovení. Při ukončení třídy, struktury nebo modulu definující vlastnost resetujte citlivá data na výchozí hodnoty nebo na jiné bezvýznamné hodnoty. To poskytuje dodatečnou ochranu, když je tato oblast paměti uvolněna pro obecný přístup.
Trvalost: Pokud se tomu můžete vyhnout, neuchovávejte žádná citlivá data, například na disku. Do schránky také nezapisujte žádná citlivá data.
WriteOnly
Modifikátor lze použít v tomto kontextu: