Я пытаюсь понять «Войти с LinkedIn». Кажется, я только хватаю часть картины.Правильный способ использования «Войти с LinkedIn» для идентификации пользователей на моем веб-сайте?
Как я понимаю, пользователь подписывается с LinkedIn на моем веб-сайте, а LinkedIn возвращает уникальный идентификатор пользователя на мой сайт.
Каким-то образом я использую этот идентификатор на своем веб-сайте, чтобы идентифицировать пользователя.
Но я не понимаю - как только конечный пользователь увидит идентификатор, что должно предотвратить их использование напрямую с этого момента и никогда не войдет в систему через LinkedIn? Должен ли возвращенный идентификатор пользователя храниться в секрете или он может отображаться публично, например, в URL-адресе?
Кроме того, что должно помешать кому-либо найти чужой идентификатор пользователя, а затем использовать его для доступа к моему сайту?
Похоже, что мне не хватает всего понимания того, как должен использоваться идентификатор пользователя, возвращенный из LinkedIn, и какие проблемы существуют в отношении безопасности.
Может кто-нибудь объяснить, пожалуйста?
Благодаря
Извините, я все еще не понимаю. Поэтому, если я хочу использовать LinkedIn для входа на мой новый сайт, я следую инструкциям и добавляю функциональность «Войти с LinkedIn». После того, как пользователь зайдет, моя веб-страница затем сохранит свой идентификатор пользователя. Я включаю этот идентификатор пользователя с каждым запросом на свой сервер. В конце моего веб-сайта я проверяю этот идентификатор пользователя на каждый входящий запрос. Запросы, у которых нет идентификатора пользователя, не подписаны и, следовательно, отклоняются. Запросы, к которым у DO есть прикрепленный идентификатор пользователя, я могу доверять как подписанный, и я использую этот идентификатор пользователя в своих запросах БД, чтобы ограничить доступ. Верный? –
В основном все, что вы сказали, точны, за исключением деталей того, как вы «включаете этот идентификатор в каждый входящий запрос». Вы можете доверять тому, что идентификатор из linkedin является правильным, но после этого вы также должны быть уверены, что идентификатор, хранящийся на вашем сайте, по-прежнему остается тем же, что вы получили от linkedin. Используйте что-то серверное, которое пользователь не может редактировать, чтобы сохранить этот идентификатор (например, сеансы PHP), и вам хорошо идти! Это нормально, если пользователь ЗНАЕТ их идентификатор linkedin (или кто-то другой, действительно - они могут, вероятно, получить эту информацию прямо из ссылки в любом случае), но им НЕ МОЖЕТ быть изменен. – rawb
Итак, нужно ли хранить секретный идентификатор пользователя, который предоставляется LinkedIn после подписания? Например, было бы плохой идеей создать URL-адрес на основе идентификатора пользователя, например, www.example.org/(linkedinuserid). Позволит ли кто-нибудь войти в наше приложение с помощью linkedinuserid? –