170 похожих чатов

Всем ку делаю авторизацю в с базой данных и куки Подскажите

пожалуйста
// Генерируем токен
tokenString, err := token.SignedString([]byte("my_secret_key"))
if err != nil {
return "", err
}
И далее получаем из куки данные и проверяем подлинность токена
token, err := jwt.Parse(cookie.Value, func(token *jwt.Token) (interface{}, error) {
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
return nil, fmt.Errorf("invalid signing method")
}

return []byte("my_secret_key"), nil
})
А что мне в базу писать ? Я вот сначала сделал как нашел и просто генерировал токен одинаковый и в бд и в куки
Мне сказали это не правильно и сказали нужно проверять подлинность токена
И я запутался, что мне положить в базу my_secret_key ? а его самого генерировать каждый раз например ко времени прибавлять +1 час чтобы такой уникальный ключ создать ? или рандомное число ? не пойму

6 ответов

13 просмотров

пришел токен — проверили его, если ок — пустили не надо ничего сохранять

Vladimir- Автор вопроса
Максим Федоров
пришел токен — проверили его, если ок — пустили н...

Ну вот получится у меня тоже ааа4444 И его же и записать в БД? И сравнить с тем что в куках? А что есть ключ которым проверяют токен?

Vladimir
Ну вот получится у меня тоже ааа4444 И его же и за...

1. Логин ввел емейл и пароль, нашли по емейлу БД, проверили пароль по хэшу: - ок, выдали токены (на основе секретного ключа) - не ок, отдали ошибку 2. С токеном пришел за ресурсом взяли токен, проверили секретным ключем, с которым генерировали токен, проверили exp дату истечения: - если ок, то пропустили собирать/загружать контент и отдали реультат - не ок, ошибка все, в простом случае в простой имплементации

Vladimir- Автор вопроса
Максим Федоров
1. Логин ввел емейл и пароль, нашли по емейлу БД...

А что есть секретный ключ? Это константа и или его каждому пользователю генерировать нужно и тоже сохранять в БД? Рядом с токеном?

Vladimir- Автор вопроса

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет. Я верно понимаю, что в определении класса Монад m — зафиксирован (к тому же поскольку это моноид в категории эндофункторов). Т.е. используя байнд я не могу перемещать...
Arseny
5
еще вопрос, допустим мы создадим char массив из 10 элементов и присвоим ему через сканф 10 символов. и выведем все символы. Хотел спросить последний элемент /0 будет включать...
Anthem
11
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Карта сайта