Мне нравится смотреть на Windows Live Messenger в этом случае, если я вхожу в настольное приложение, а также в hotmail, я получаю уведомление о том, что я вошел более чем в 1 место - он спрашивает меня, хочу ли я выйти из системы другого места.
Что мне нравится в этом, так это то, что он передает контроль в руки пользователей, но мне не нравится, что злоумышленник может выгнать настоящего пользователя и полностью взломать учетную запись.
Вся эта тема для меня выглядит так, будто ты проклят, если ты это делаешь, и проклят, если ты этого не сделаешь.
Давайте сделаем шаг назад на минуту, кто может быть нападающим? Ну, на самом деле, кто угодно - например, ваш бывший муж или бывшая жена, которые знают ваши имена пользователей и пароли, он / она может легко атаковать ваш аккаунт, потому что он / она знает всю вашу информацию для начала. Вы никогда не можете полностью защитить себя, вы меняете свой пароль, но он / она, вероятно, тоже это знает!
Я прошу вас взглянуть на ваш проект и оценить, действительно ли система «Помни меня» принесет дополнительную выгоду по сравнению с любой угрозой безопасности, которую она представляет.
Теперь прямые ответы на ваши вопросы:
Создайте уникальный ключ для пользователя, вставьте его в свою базу данных и запишите ключ в свой файл cookie. Когда файл cookie отправляется на сервер, вы сравниваете его с ключом в базе данных, если он совпадает. - Бинго, у вас есть доступ, если не запустить скрипт выхода из системы и уничтожить куки.
Для этого каждый раз, когда вы пишете куки-файл, сохраняйте информацию в вашей базе данных против идентификатора пользователя и статуса куки-файла (например, живого или мертвого), затем каждый раз, когда вы читаете куки-файл, проверяйте его статус - если для него установлено значение «живой», просто зарегистрируйте событие и перейдите к нему, но, если для него задано значение «мертвый», вы уничтожите файл cookie и зарегистрируете его уничтожение.
Далее вы можете отобразить эту информацию журнала и предоставить пользователю определенные элементы управления, например, вы можете разрешить пользователю устанавливать cookie-файл как мертвый, а затем в следующий раз, когда вы читаете cookie-файл, вы уничтожаете его.
- Работа с аппаратным обеспечением легче сказать, чем сделать, но это выполнимо. Самый простой способ, который я нашел, это использовать Java-апплет, который запускается локально, затем вы можете обнаружить информацию об оборудовании и отправить ее в ваше приложение для обработки. Для вашего среднего сайта я лично не думаю, что это стоит, но это выполнимо.
Другая альтернатива - обернуть ваше приложение в что-то вроде Adobe AIR , которое может определять информацию об оборудовании, с которой вы будете работать.
Надеюсь, это поможет вам.