共用方式為


WriteOnly

更新:2007 年 11 月

指定可寫入但無法讀取的屬性。

備註

規則

宣告內容。:您只能在模組層級使用 WriteOnly。這表示 WriteOnly 屬性的宣告內容必須是類別、結構或模組,且不可以是原始程式檔、命名空間或程序。

可將屬性宣告為 WriteOnly,但不可是變數。

使用 WriteOnly 的時機

您有時會想要使用程式碼能夠設定值,但卻找不到它是什麼。例如,敏感資料 (例如社會註冊碼或密碼) 需要加以保護,讓任何未設定它的元件無法進行存取。在這些情況下,可使用 WriteOnly 屬性來設定該值。

安全性注意事項:

定義和使用 WriteOnly 屬性時,請考慮下列其他的保護措施:

  • 覆寫:如果屬性是類別的成員,則容許將它預設成 NotOverridable,且不會將它宣告為 Overridable 或 MustOverride。這會讓衍生類別無法透過覆寫進行不良的存取。

  • 存取層級。:如果將屬性的敏感資料保留在一或多個變數中,請將此資料宣告為 Private (Visual Basic),這樣就沒有其他程式碼可進行存取。

  • 加密:以加密格式 (而非純文字) 儲存所有敏感資料。如果惡意程式碼以某種方法取得該記憶體區域的存取權,則使用此資料會較困難。如果需要序列化敏感資料,則加密也十分有用。

  • 重設:正在結束定義屬性的類別、結構或模組時,請將敏感資料重設為預設值,或重設為其他不具意義的值。釋出記憶體區域以供一般存取時,這會提供額外的保護。

  • 保存性:如果可以避免,請不要保存任何敏感資料 (例如保留在磁碟上)。而且,請不要將任何敏感資料寫入剪貼簿。

WriteOnly 修飾詞可用於以下內容中:

Property 陳述式

請參閱

參考

ReadOnly (Visual Basic)

Private (Visual Basic)

Visual Basic 語言關鍵字