1. A method comprising: receiving, by one or more servers, multiple different instances of a same set of login credentials of a given user from multiple different user devices of the given user during a first time period; setting a same temporal identifier on each of the multiple different user devices to associate each of the multiple different user devices with the given user based on the same set of login credentials and a first temporary key that is valid during the first time period; linking, in a data structure and by the one or more servers, the multiple different user devices based on each of the multiple different user devices having the same temporal identifier; associating, by the one or more servers, interactions between the one or more servers and each of the multiple different user devices with the given user based on the linking; receiving, during a second time period and by the one or more servers, an additional instance of the same set of login credentials from a given user device; determining, in response to receiving the additional instance and by the one or more servers, that the first temporary key has expired; and generating, by the one or more servers and in response to determining that the first temporary key has expired, a different temporal identifier for the given user that does not match the same temporal identifier based on a different temporary key and the same set of login credentials.