За последние 24 часа нас посетили 22479 программистов и 1282 робота. Сейчас ищут 834 программиста ...

Laravel, SPA и impersonation

Тема в разделе "Laravel", создана пользователем Anaksagor, 22 май 2019.

  1. Anaksagor

    Anaksagor Активный пользователь

    С нами с:
    21 ноя 2017
    Сообщения:
    21
    Симпатии:
    0
    Приветствую всех.
    Есть SPA на Laravel 5.7. Подскажите, пожалуйста, как можно организовать impersonation (когда admin выдаёт себя за другого пользователя, для тестирования, например), если back-end отдаёт front-end'у только json, сессий и куков нет? Front-end в начале заходит на /login, получает токен и затем постоянно в заголовках отдаёт его для идентификации.
     
  2. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Ну так получите токен пользователя и ходите с ним.
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.076
    Симпатии:
    1.237
    Адрес:
    там-сям
    Не знаю зачем вы здесь про SPA пишете. Это принципиально не должно влиять на методику.
    Побыстренькому нашел https://github.com/SCIF/laravel-pretend/blob/master/README_RU.md
    --- Добавлено ---
    https://github.com/404labfr/laravel-impersonate
    --- Добавлено ---
    последний 700 звёзд и 13 контрибуторов, это о чём-то говорит )))
    --- Добавлено ---
    пакет похвалил Murze, который spatie
     
  4. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Почему не должно?
     
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.076
    Симпатии:
    1.237
    Адрес:
    там-сям
    а почему должно?
    инженер Вася временно исполняет обязанности начальника отдела Пети. он уполномочен принимать решения как начальник, хотя не начальник. важно при этом левша он или правша?
    --- Добавлено ---
    с технической т.з. для идентификации используется либо токен либо сессия. но это уровень доставки.
    а на уровне деклараций прав - в роутере или контроллере или в гейте, не должно быть разницы как мы идентификатор доставили.