Prev Next
The SECURITY_QUALITY_OF_SERVICE data structure contains information
used to support client impersonation. A client can specify this information
when it connects to a server; the information determines whether or not the
server may impersonate the client, and if so, to what extent.
typedef struct _SECURITY_QUALITY_OF_SERVICE { // sqos
DWORD Length;
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
BOOLEAN EffectiveOnly;
} SECURITY_QUALITY_OF_SERVICE;
Members
-
Length
-
Specifies the size, in bytes, of this structure.
-
ImpersonationLevel
-
Specifies what the server may be told about the client, and how the server may
represent, or impersonate, the client. Security impersonation levels govern
the degree to which a server process can act on behalf of a client process.
This member is a SECURITY_IMPERSONATION_LEVEL
enumeration type value.
-
ContextTrackingMode
-
Specifies whether the server is to be given a snapshot of the client’s
security context (called static tracking), or is to be continually updated to
track changes to the client’s security context (called dynamic tracking). The
value SECURITY_STATIC_TRACKING specifies static tracking, and the value
SECURITY_DYNAMIC_TRACKING specifies dynamic tracking. Not all communications
mechanisms support dynamic tracking; those that do not will default to static
tracking.
-
EffectiveOnly
-
Specifies whether or not the server may enable or disable privileges and
groups that the client’s security context may include.
See Also
DdeSetQualityOfService, SECURITY_IMPERSONATION_LEVEL