home *** CD-ROM | disk | FTP | other *** search
- Networking (LAN Manager) API Sample
-
-
- This module illustrates how to use a Null session to overcome access
- problems during network related query operations.
-
- One example of the scenario this approach addresses is as follows:
-
- User logs onto workstation A as the local administrator.
-
- Administrator tries to query user information using the NetUserGetInfo()
- API call on server B. This call fails with ERROR_ACCESS_DENIED.
-
- The reason this problem occurs is that the administrator password on
- workstation A does not match the administrator password on server B.
-
- During the network query operation, the default behavior is to establish
- a connection to the remote server using the credentials of the logged-in
- user. In some scenarios, this behavior is not appropriate, and the
- solution is to establish a connection using either known credentials,
- or the Null credentials. Null credentials are suitable for most query
- operations against a remote machine. However, if administrator
- related actions are necessary, it is necessary to supply credentials
- which have administrative privilege on the remote machine. Valid
- credentials consist of a username, password, and optional domain name.
-
- Establishing a connection in this manner requires that no existing
- connections exist to the remote machine tied to the current logon
- session.
-
- Note: Null sessions are those where the user credentials passed in the
- session setup SMB are null. This sample only implements a function to
- establish a Null session, rather than a session with specific credentials.
-
- Processes and Services running in the Local System account security context
- have Null credentials by default, so establishing Null sessions in this
- scenario is not required.
-
- Applications that run only on Windows NT 4.0 and above can use
- WNetAddConnection2() rather than NetUseAdd() to establish a Null session.
-