Bloquear acceso usando login con ajax en el cliente y php en el servidor

estoy haciendo una app en Javascript y necesito bloquear el acceso a usuarios no loggeados, en php es sencillo usando $_SESSION pero con JS no encuentro manera

Gracias por la ayuda

0
задан 27.12.2016, 15:54
0 ответов

То, к чему ты стремишься, состоит в том, чтобы делать контроль ACL над ресурсом, выставленным backend (php в твоем случае), твой этот frontend в Javascript а следовательно я понимаю, что ты стараешься соглашаться на ВЕБ услугу или REST atraves вызова Аякс, эта проблема не ни платформы ни языка, который ты используешь, а протокола коммуникации, HTTP - протокол без состояния, объект session php может использовать куки-файлы в браузере или плоском файле на сервере, чтобы сохраняться состояние приложения пока ты переходишь с одного сайта на другой на различных страницах, я нуждаюсь в большем количестве деталей, состоящих в том, что framework ты используешь, что ты используешь книжный магазин в клиенте, и если запрос, который ты делаешь с клиента, - в саму унифицированный указатель ресурса, или если ты делаешь запрос о перекрещенном домене, без этого я не могу давать тебе более конкретный ответ, но я оставлю тебе рекомендации.

  1. Проверь, что адрес унифицированного указателя ресурса браузера был тем же самым, который та endpoint, в который ты делаешь вызов Аякс, разум, потому что браузер не позволяет посылать куки-файл в сервер, если адрес endpoint не совпадает с адресом браузера (это запрос о перекрещенном домене). если это так тогда, размещает услугу proxy в первоначальном домене тот же самый, который сделает в свою очередь призыв к серверу, я предназначаю извлекая куки-файл и посылая ее в просьбе.

  2. Если твоя сцена сложнее, и ты нуждаешься несколько клиентов в том, чтобы согласиться на твой сервер и сделать контроль более полного тогда ACL считай использовать одну из следующих схем безопасности.

    • Tokens
    • OAuth 2
    • Персонализированные Headers HTTP

На безопасности есть путаница в предыдущих ответах, которые дали тебе, контроль ACL и упомянутая схема безопасности, это осуществление безопасности в слое приложения (Node, PHP, Java любая платформа), в то время как, чтобы защищать информацию об атаках как Man-in-the-middle (посредник украл твой session), ты должен гарантировать способ транспорта, в этом случае гарантируй протокол HTTP используя SSL, HTTP over SSL или более обычно известно в качестве HTTP.

В заключении выбери схему удостоверения, tokens он самый простой и ты найдешь книжные магазины, которые делали бы работу из-за тебя в любой платформе, но ты не забыл зашифровать коммуникацию используя HTTP.

Я ты надеюсь помочь.

2
ответ дан 03.12.2019, 17:58