Где хранить токен на предъявителя в веб-клиенте ASP.NET Core 2.1 - PullRequest
0 голосов
/ 28 июня 2018

Я пишу трехуровневое приложение. У меня есть ASP.NET Core 2.1 Api, приложение веб-клиента и приложение для Android. Api защищен авторизацией Jwt. У меня проблема с хранением токена, который я получаю от Api к веб-клиенту. Мне нужен безопасный способ для этой цели, и я думаю, будет ли это хорошим способом сохранить его в ClaimsIdentity. Я собираюсь добавить это здесь:

var claims = new List<Claim>
{
    new Claim(ClaimTypes.NameIdentifier, token.userId),
    new Claim(ClaimTypes.Name, token.userName),
    // Here add new Claim(ClaimTypes.Authentication, token.token)
};

var identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
var principal = new ClaimsPrincipal(identity);

await HttpContext.SignInAsync(principal);

Это правильный и безопасный способ?

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Наконец-то я нашел то, что могу использовать.

https://hanssens.com/projects/localstorage

С помощью этого компонента вы можете хранить много данных в памяти. Он также имеет режим шифрования, поэтому он должен быть довольно безопасным. Спасибо за вашу помощь еще раз!

0 голосов
/ 28 июня 2018

Я использую авторизацию JwtBearer с ASP.NET Core 2.1 для соединения с мобильным ....

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

если существует ... сделать запрос, используя его если Null ... запросить новый токен

в сети ... вы можете хранить его в локальном хранилище или в файлах cookie

...