1. A method for monitoring and protecting against unauthorized access of a computer system comprising: automatic monitoring of an authorized user's patterns of use of the computer system; constructing and storing, in a memory, a unique use profile of the authorized user based on said patterns of use; performing a free form natural language learning session with said authorized user; making inferences about a personality of the authorized user based on the free form natural language learning session; constructing and storing, in said memory, a unique personality profile of said authorized user based on the free form natural language learning session; continuously monitoring a real-time user patterns of use; comparing for deviation the real-time user's patterns of use to an assumed unique use profile, wherein the assumed unique use profile is assigned to an authorization code, key, password, or other identifying feature used by the real-time user to gain access; updating said unique use profile if the comparison deviation is no greater than a predetermined magnitude; interrogating the real-time user with questions from an assumed personality profile, wherein the assumed personality profile is assigned to an authorization code, key, password, or other identifying feature used by the real-time user to gain access if the comparison deviation is greater than the predetermined magnitude; and logging off the real-time user and blocking further access by the real-time user when interrogation responses do not match, to a predetermined level of accuracy, correct interrogation responses stored in said assumed personality profile assigned to an authorization code, key, password, or other identifying feature used by the real-time user to gain access.