1. A computer-readable storage medium storing computer software instructions executable by one or more data processing apparatus which, upon such execution, cause the one or more data processing apparatus to perform operations comprising: receiving, at a computer system, user input entered by a user through a user interface of the computer system; determining, based on the user input, that the user has successfully completed an authentication factor for gaining access to the computer system; receiving position data that includes (i) first GPS position data that specifies a position of a mobile computing device associated with the user, and (ii) second GPS position data that specifies a position of the computer system; determining a distance between the position of the mobile computing device specified by the first GPS position data and the position of the computer system specified by the second GPS position data; determining that the distance does not exceed a maximum threshold distance; authenticating, by the computer system, the user for the access to the computer system based at least on determining that: (i) the user has successfully completed the authentication factor, and (ii) the determined distance does not exceed the maximum threshold distance; and in response to authenticating the user, providing the user access to a second user interface of the computer system.