A system and method to ensure that a remote computer making a VPN
connection complies with network security policies. Server-driven
security checks may be configured to verify compliance with each access
level before access is granted at that level. The security checks may be
selected based at least according to the information received from the
remote computer. After the server determines that the remote computer
complies with the security policy for the requested access level, the
server may pass a token to the remote computer, or may grant VPN access
to the remote computer. If the remote computer does not comply with the
security policy associated with the requested access level but is in
compliance with a security policy corresponding to a lower access level,
the server may grant the remote computer access to the lower access
level.