Share via


使用權限要求

使用權限要求是使您的程式碼可以支援安全性的主要方法。 您應該將使用權限要求包含在存取受保護資源的應用程式中。 如需詳細資訊,請參閱程式碼存取安全性的基本概念。 要求可讓您執行下列兩個動作:

  • 要求執行您的程式碼所需的最低使用權限。

  • 確認您的程式碼只取得實際需要的使用權限。

以下的程式碼範例示範基本的使用權限要求。

<assembly: FileIOPermissionAttribute(SecurityAction.RequestMinimum, Write := "C:\test.tmp"), _
assembly: PermissionSet(SecurityAction.RequestOptional, Unrestricted := False)>  
[assembly:FileIOPermissionAttribute(SecurityAction.RequestMinimum, Write="C:\\test.tmp")]
[assembly:PermissionSet(SecurityAction.RequestOptional,Unrestricted=false)]

這個範例告知 .NET Framework 安全性系統,除非收到寫入 C:\test.tmp 的使用權限,否則不應執行程式碼。 如果程式碼遇到不授與此使用權限的安全性原則,便會引發 PolicyException,而且程式碼不會執行。 使用這個要求,您可以確認您的程式碼只有在被授與這個使用授權時才會執行,而且您也不必擔心因為使用權限不足所引起的錯誤。

這個範例也告知系統,您不需要任何額外的使用權限。 如果沒有這個設定,您的程式碼將會被授與原則選擇授與的任何使用權限。 雖然額外的使用權限並不會造成任何傷害,但是擁有較少的使用權限卻可杜絕某些無法預見的安全性問題。 擁有您的程式碼不需要的使用權限可能會導致安全性的問題。

另一種可以限制您的程式碼只能取得最低使用權限的方法是列出您想拒絕的特定使用權限。 當您要求讓所有的權限都變成選擇性使用權限並將特定使用權限排除在該要求之外時,使用權限通常就會被拒絕。 如需詳細資訊,請參閱拒絕使用權限

請參閱

概念

安全程式碼撰寫方針