typedef enum tagSECURITY_IMPERSONATION_LEVEL { /* sil */
SecurityAnonymous = 1,
SecurityIdentification,
SecurityImpersonation,
SecurityDelegation
} SECURITY_IMPERSONATION_LEVEL ;
The SECURITY_IMPERSONATION_LEVEL enumerated type contains security impersonation level enumerators. Security impersonation levels govern various relations between security clients and servers.
Enumerator | Meaning |
SecurityAnonymous | Indicates the client does not want the server to obtain identification information about the client. |
SecurityIdentification | Allows the server to obtain information about the client, such as security identifiers and privileges, without being able to impersonate the client. This is useful for servers that export their own objects, such as tables and views exported by a database product. Using the retrieved client security information, the server will be able to make access validation decisions for itself without being able to utilize other services as the client. |
SecurityImpersonation | Allows the server to impersonate the client's security context on its local system. Unlike delegation, the server may not impersonate the client in remote system accesses. |
SecurityDelegation | Allows the server to use the client's security context to access other (possibly remote) services. For example, a compile server may be allowed to impersonate the client to access remote source, object, and listing files. |