This documentation is archived and is not being maintained.

FileAuthorizationModule.CheckFileAccessForUser Method

Determines whether the user has access to the requested file.

Namespace:  System.Web.Security
Assembly:  System.Web (in System.Web.dll)

[SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode = true)]
public static bool CheckFileAccessForUser(
	string virtualPath,
	IntPtr token,
	string verb
)

Parameters

virtualPath
Type: System.String
The virtual path to the file.
token
Type: System.IntPtr
A Windows access token representing the user.
verb
Type: System.String
The HTTP verb used to make the request.

Return Value

Type: System.Boolean
true if the current Windows user represented by token has access to the file using the specified HTTP verb or if the FileAuthorizationModule module is not defined in the application's configuration file; otherwise, false.

ExceptionCondition
ArgumentNullException

virtualPath is null.

-or-

token is Zero.

-or-

verb is null.

ArgumentException

virtualPath is not in the application directory structure of the Web application.

FileNotFoundException

The file specified by virtualPath does not exist.

The CheckFileAccessForUser method checks to see whether the current user, represented by a Windows access token, is granted access to the requested file in the file-system access-control lists (ACLs). The virtual path is mapped to the physical file-system path before the check is made.

If the HTTP verb used to make the request is GET, POST, or HEAD, the CheckFileAccessForUser method checks for read access to the file. If any other verb is used, the CheckFileAccessForUser method checks for read/write permission to the file.

Security Note   If the FileAuthorizationModule module is not defined in the httpModules configuration section for the application, the FileAuthorizationModule module always returns true.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: