Запретить живое соединение с помощью ip в nginx/linux программно с помощью php

У меня есть приложение PHP для проверки доступа пользователей (user/pass) и, если доступ истинный, предоставьте им файл для загрузки, отправив nginx X-Accel-Redirect заголовок пользователю.

Проблема проявляется, когда пользователь может поделиться своими данными для входа в систему (пользователь / пароль) с другими людьми; так что у каждого есть информация для входа в систему, чтобы получить доступ к файлам и загрузить их. Я продолжаю описывать мою проблему на примере.

Например, представьте, что у нас есть два народа, которые делятся своими правами доступа. так что они оба используют один и тот же пользователь / пароль для входа в систему. давайте назовем их " User_1 " а также " User_2 ".

User_1 Войдите в систему и начните скачивать файл. в то же время, User_2 пытаюсь зайти тоже. здесь мое php-приложение заметило про вторую попытку входа в систему. У меня есть их (IP-адрес, user-agent, session_id), и я также могу узнать, какой файл уже загружается User_1,

Когда User_2 пытаясь войти, я удалю User_1 сессия в php / mysql и если User_1 хочет скачать снова, он должен повторно войти в систему. Я даже могу просто приостановить эту учетную запись (Пользователь / Пасс), чтобы никто не мог использовать ее снова! Но проблема в том, что X-Accel-Redirect уже отправлено User_1 для его предыдущего входа в систему и загрузка продолжается, даже если я удаляю сессии php и вынуждаю выйти User_1!

Итак, мне нужен способ прекратить User_1 Живое соединение для скачивания. Таким образом, сделать невозможным более одной загрузки от одного пользователя / прохода одновременно.

Есть идеи?

0 ответов

Другие вопросы по тегам