The FaxObs_AccessCheck (Opnum 34) method is called by the client to check whether the currently logged-on client user account has access permissions to execute specific fax operations on the fax server.
In response, the server MUST validate access of the fax clients currently logged-on user account against the requested access.
error_status_t FaxObs_AccessCheck( [in] handle_t hBinding, [in] DWORD AccessMask, [out] LPDWORD fAccess );
hBinding: The RPC binding handle for this call. The client SHOULD reuse the RPC binding handle used as an input hBinding argument for the FaxObs_ConnectionRefCount (section 3.1.4.2.2) method call used to connect to the fax server.
AccessMask: A DWORD ([MS-DTYP] section 2.2.9) containing a set of bit flags that define the fax access permissions to check for the fax client user account. This parameter MUST be a bitwise OR combination of generic FaxObs access rights and specific FaxObs access rights that are described in the following tables.
|
Generic FaxObs Access Rights |
Description |
|---|---|
|
FAX_WRITE 0x00020001 |
Includes the read-only rights that are granted by the following specific FaxObs access rights in combination with the standard access rights STANDARD_RIGHTS_WRITE: § FAX_JOB_SUBMIT |
|
FAX_READ 0x00020016 |
Includes the read-only rights that are granted by the following specific FaxObs access rights in combination with the standard access rights STANDARD_RIGHTS_READ: § FAX_JOB_QUERY § FAX_CONFIG_QUERY § FAX_PORT_QUERY |
|
FAX_ALL_ACCESS 0x001F007F |
Includes the read-only rights that are granted by the following specific FaxObs access rights in combination with the standard access rights STANDARD_RIGHTS_ALL: § FAX_JOB_SUBMIT § FAX_JOB_QUERY § FAX_CONFIG_QUERY § FAX_CONFIG_SET § FAX_PORT_QUERY § FAX_PORT_SET § FAX_JOB_MANAGE |
The generic FaxObs access rights are bitwise OR combination of specific FaxObs access rights and standard access rights. For more information about the standard access rights, see [MSDN-SAR].
|
Specific FaxObs access rights |
Description |
|---|---|
|
FAX_JOB_SUBMIT 0x00000001 |
The user can submit documents to be faxed. Example method: FaxObs_SendDocument (section 3.1.4.2.7). |
|
FAX_JOB_QUERY 0x00000002 |
The user can query information about submitted fax jobs. Example method: FaxObs_EnumJobs (section 3.1.4.2.9). |
|
FAX_CONFIG_QUERY 0x00000004 |
The user can query the fax server configuration. Example method: FaxObs_GetConfiguration (section 3.1.4.2.24). |
|
FAX_CONFIG_SET 0x00000008 |
The user can change the fax server configuration. Example method: FaxObs_SetConfiguration (section 3.1.4.2.25). |
|
FAX_PORT_QUERY 0x00000010 |
The user can query information about the fax ports (devices) installed on the fax server. Example method: FaxObs_EnumPorts (section 3.1.4.2.15). |
|
FAX_PORT_SET 0x00000020 |
The user can change the configuration of the fax ports (devices) installed on the fax server. Example method: FaxObs_SetPort (section 3.1.4.2.17). |
|
FAX_JOB_MANAGE 0x00000040 |
The user can pause, resume, and cancel submitted fax jobs. Example method: FaxObs_SetJob (section 3.1.4.2.11). |
fAccess: A pointer to a BOOL variable to receive on successful return the access check return value. A TRUE value indicates that access is allowed. A FALSE value indicates that access is denied.
Return Values: This method MUST return 0x00000000 (ERROR_SUCCESS) for success; otherwise, it MUST return one of the following error codes, one of the fax-specific errors that are defined in section 2.2.52, or one of the other standard errors defined in [MS-ERREF] section 2.2.
|
Return value/code |
Description |
|---|---|
|
ERROR_INVALID_PARAMETER 0x00000057 |
The parameter is incorrect. This error code is returned if any of the following conditions are met: § The hBinding parameter is set to a NULL value. <216> § The fAccess parameter is set to a NULL pointer value. <217> |
Exceptions Thrown: No exceptions are thrown except those that are thrown by the underlying RPC protocol, [MS-RPCE].