Сегодня 27 апреля, суббота ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7272
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Леонид Каганов
Леонид Каганов
Голосов: 2
Адрес блога: http://lleo.livejournal.com/
Добавлен: 2007-12-13 21:28:18 блограйдером Luber
 

по вашим просьбам поправил Биноник и некоторые глюки движка

2016-08-17 20:52:44 (читать в оригинале)

это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2016/08/17.html

Имею сказать следующее: я КРАЙНЕ не рекомендую использовать для авторизации в движке Фейсбук. В крайнем случае пропишите в личной карточке родной логин-пароль на моем сайте. Почему? Дело в том, что Фейсбук — уникальное по мерзости и подлости учреждение, он постоянно придумывает всё новые и новые гадости, чтобы создать проблемы людям, которые осмелились что-то посещать на других сайтах.

Когда внешний сайт (например, мой) отправляет пользователя залогиниться через Фейсбук, сайт понятия не имеет, что это за человек, и никакие логины-пароли Фейсбука тоже на сайт не попадают по вполне понятным причинам безопасности. Авторизационная страница Фейсбука (и не только Фейсбука, так устроен любой трехсторонний авторизационный протокол) открывается в новом изолированном окне, там у пользователя происходит авторизационный секс со своим любимым Фейсбуком, а на сайт по итогу Фейсбук присылает некие идентификаторы — какие сам сочтет нужным. Обычно это линк на аккаунт, имя, фамилия, иногда email. Но email может быть не указан. А пользователей с именем Alex Smirnov я знаю семерых. Поэтому в качестве точного идентификатора сайту взять нечего, кроме линка на аккаунт. Мы полагаем, что уж линк-то на аккаунт ни одна соцсеть в своем уме менять не станет:

facebook.com/lleokaganov

Хрен там! Через год Фейсбук вдруг решает, что имена в линке — это лишнее и ненужное, а проще делать ссылку с номером аккаунта:

facebook.com/app_scoped_user_id/100001073866092

И начинает присылать после авторизации вот эти адовы номера. Что происходит на внешних сайтах? Мой сайт видит, что авторизовался некто невиданный прежде /app_scoped_user_id/100001073866092, и ему заводится новая учетная запись, которая не имеет никакого отношения к учетке /lleokaganov. Потому что догадаться, что там Фейсбук изменил, сайт не может никак. В результате всё, что было привязано к прошлой карточке (комменты, личная переписка, может даже подзамочный доступ) — всё теряется.

Но и это еще не всё!

Через год, когда все поматерились, перелогинились и привыкли к новой записи, Фейсбук решает, что он мало потрепал нервы, и надо гадить снова. И тогда он снова меняет строку представления, но не всю, а несколько цифр в серединке. В результате, скажем, товарищ Андрей, купив новый ноутбук, обнаруживает, что на его старом ноутбуке и на новом ноутбуке логины от Фейсбука становятся разные:

И это пиздец, который не лечится вообще никак, потому что Фейсбук гадит специально.

Проблема в моем движке в том, что движок уже создал вам новую учетку под измененное представление Фейсбука. И перенести изменившийся адрес Фейсбука в старую учетку невозможно без танцев с бубном, потому что две одинаковые учетки делать нельзя. Поэтому если же у вас случилось такое, что логин по Фейсбуку перестал вас узнавать на моем сайте, но вы человек мудрый, и когда-то вписывали родной логин-пароль для этого сайта (или хотя бы email, через который можно восстановить старую учетку), то алгоритм следующий:

1. Залогиниться Фейсбуком, чтобы попасть в ненужную новосозданную учетку. И там удалить из привязки соцсеть Фейсбук (красная иконка рядом со ссылкой. И больше пока не логиниться Фейсбуком!

2. Войти в свою старую учетку по логину-паролю и тоже удалить там сеть фейсбук. После чего Нажать «добавить соцсеть» и добавить Фейсбук. После этого новое представление Фейсбука пропишется в старой учетке, и после логина вы будете попадать снова в нее. Пока Фейсбук опять что-нибудь не подгадит.



это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2016/08/17.html

Тэги: ада, ахтунг, больше, программирование

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по сумме баллов (758) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.