A system and method for configuration management and enforcement of
software applications in a computer network. The system comprises of one
or more server computers, a configuration rules database and a plurality
of client computers. Each client computer has an agent running on it. The
agent, after being invoked or on a periodic basis, contacts a server
computer to obtain the latest configuration rules from the configuration
rules database. The configuration rules are then used by the agent to
check the validity of the software applications. The agent also sends log
data, back to the server computer, containing details of the status of
the computer, any violations, actions taken, time of violations, etc. The
present invention also provides a method to check and ensure that the
agent is required to be run on all the client computers in order for
these computers to communicate with other computers in the network.