| Token (windows Nt Architecture) |
Article Index for Token |
Information AboutToken (windows Nt Architecture) |
|
GENERAL INFORMATION A token is itself an object in the Windows NT architecture, meaning that accesses on it are checked against another token. As such, a token has an associated Security Descriptor , as well as an optional path in the object namespace (the latter is a standard feature of the object manager, but it's never used for tokens). There are two kinds of tokens: ''primary'' and ''impersonation'' tokens. Primary tokens can only be associated to Processes , and they represent a process's security subject. The creation of primary tokens and their association to processes are both privileged operations, requiring two different privileges in the name of Privilege Separation - the typical scenario sees the authentication service creating the token, and a logon service associating it to the user's Operating System Shell . Processes initially inherit a copy of the parent process's primary token. Impersonation tokens can only be associated to Threads , and they represent a ''client'' process's security subject. Impersonation tokens are usually created and associated to the current thread implicitly, by IPC mechanisms such as DCE RPC , DDE and Named Pipe s. Impersonation is a security concept unique to Windows NT, that allows a server application to temporarily "be" the client in terms of access to secure objects. Impersonation has three possible levels: ''identification'', letting the server inspect the client's identity, ''impersonation'', letting the server act on behalf of the client, and ''delegation'', same as impersonation but extended to remote systems to which the server connects (through the preservation of credentials). The client can choose the maximum impersonation level (if any) available to the server as a connection parameter. Delegation and impersonation are privileged operations (impersonation initially wasn't, but historical carelessness in the implementation of client API s failing to restrict the default level to "identification", letting an unprivileged server impersonate an unwilling privileged client, called for it). CONTENTS OF A TOKEN A token is composed of various fields, among which:
OPERATIONS ON A TOKEN {Link without Title} HOW A TOKEN IS USED IN ACCESS CONTROL {Link without Title} |
|
|