Здравствуйте.
Пишу API для интеграции с сервисом.
Схема взаимодействия такая:
1. Iframe-клиент на моем сайте отправляет запросы на их сервер.
2. Их сервер стучится по API ко мне для проведения всех операций.
Из документации:
"Каждому пользователю должно соответствовать 2 токена. Первый для запроса аутентификации, получения данных пользователя и получения 2-го токена. Второй для остальных операций. Токены должны быть уникальными для каждого пользователя и иметь ограниченный срок жизни (60 минут)."
Подскажите, пожалуйста, верным ли решением будет хранить токены для каждого юзера в таблице БД? С инфой о времени их создания, чтоб обновлять по истечении 60 минут
То есть, беру из базы токен для юзера, отправляю при инициализации в iframe, затем их сервер стучится ко мне по Апи, я проверяю первый токен, если всё ок - выдаю второй, если срок истек - обновляю его. Та же история со вторым.
И подскажите, пожалуйста, каким образом лучше всего генерировать эти токены посредством php?
Я совсем не спец в безопасности. Лишь как мысль.
Если все хранить в токене зашифрованным? Зашифровали своим ключем токен "userId;expiretime", когда пришлют его на проверку - расшифруете и проверите срок и т.д.
Daria Motorina, хз если честно, мне для одного проекта нужен был вк и ок, оба лиговских адаптера не работают - поправил/скинул pr - не приняли - не устроивает оформление, а то что адаптеры не работают их пофиг)) в принципе api/sdk предлагаемые сервисами всегда актуальнее, но единой интеграции понятное дело нет. я в итоге сделал так - вк можно связать с твиттером, инстаграмом, другие - через гугл/фейсбук т.к. для 80% попсы хватит этих трех.
Daria Motorina, форки проектов как раз поэтому возникают) сообщества поумнее делают позволяют создавать подпроекты вроде того - https://yiiframework.com/extensions, я использую пару проектов лиги - omnipay, csv, boo. у omnipay и boo примерно та же картина - не опенсорс, а кое-то садо-мазо...