One embodiment of the present invention provides a system that ensures an
allowable client configuration for an application. During operation, the
client sends a request to access the application to a server hosting the
application. In response the request, the server downloads an analysis
application to the client. Next, the client executes the analysis
application, whereby the analysis application gathers configuration data
that specifies a present configuration of the client. The system examines
this configuration data to determine whether the client has a
configuration that allows the application to execute on the client based
on pre-established criteria. If the client has an allowable
configuration, the system allows the client to execute the application.