In a virtual network computing (VNC) system wherein multiple users, or
viewers, at different locations share a common desktop computer for the
purpose of sharing control of software applications, the VNCSESSION owner
exercises dynamic Internet protocol (IP)-based control over access of the
viewers to the server associated with the shared desktop. The VNCSESSION
owner is defined as the user who initiates the server and the first
viewer to connect to the desktop. The session owner is given full access
to the desktop, i.e., active access permitting the viewer to exercise
control over the application. For the remaining connected viewers, only
VNCVIEWERS having their IP address present in a VNC security file
containing authorized IP addresses can initiate activity on the desktop,
or exercise control over the application. All other connected viewers may
only review desktop activity initiated by other viewers, but cannot
initiate such activity themselves, i.e., cannot exercise control over the
application. The session owner can dynamically specify, on a per viewer
basis as well as on a per session basis, the level of access, passive or
active, of each subsequent viewer. The status of each viewer, the number
of viewers connected to the desktop from a given IP address, and
active/passive selectors for all connected viewers are presented on a
video display for review by the session owner.