как защитить себя в соответствии с реакцией. - PullRequest
0 голосов
/ 29 мая 2018

Я пытаюсь защитить приложение spa.js spa с помощью adal login и аутентифицироваться с помощью .net core wepApi.

Я могу получить JWT из лазури, вызываемой реагировать SPA (используя модуль реагировать-adal)и получить основную информацию о пользователе.

Теперь радость начинается Поскольку большинство примеров MSFT основаны на их подходе mvc, у них есть пароль для подписи токена в файле webconfig, который недоступен дляприложение внешнего интерфейса.

Как тогда я мог бы подписать токен JWT с помощью пароля, не передавая его в приложение SPA, как это можно прочитать в веб-консоли?

Одна из моих идей - инициироватьвойдите в SPA, затем используйте конечную точку webapi в качестве ссылки для перенаправления (и укажите идентификатор соединения в поле состояния), а затем с помощью ajax я мог бы выполнить перенаправление в SPA, но все еще нет подписи на JWT.

1 Ответ

0 голосов
/ 01 января 2019

мое частичное решение на данный момент:

  1. имеет react-adal, используемый для проверки, если пользователь вошел в систему
  2. , когда токена нет, тогда react-adal аутентифицируется, но перенаправление происходит на специальной странице, когда я беру токен и сохраняю его в базе данных.Хитрость здесь в том, что нужно изменить hash на query-string, чтобы захватить серверную часть токена (поскольку все после # не перенаправляется на веб-сервер), поэтому простой javascrip, который заменяет # на ?и перенаправляет на другую конечную точку.
  3. , затем перенаправляет на основное приложение

Поскольку URL-адрес используется только для перенаправлений (после входа в систему через adal) - это типичный сценарий man-in-the-middle,но дает возможность генерировать собственный токен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...