Как объединить таблицы пользователей с 2 разных проектов?
Есть 2 проекта с идентичными по структуре таблицами. В них добавляются пользователи со своим логином, email и паролем. Причем есть варианты, что один пользователь участвует в обоих проектах. Когда-то под одинаковыми логинами, когда-то под разными. Бывает так, что один логин занят в другом проекте и берется другой. Часть пользователей только в одном из проектов и т.п.
Встала задача объединить все в рамках одного проекта, а значит надо слить пользователей в одну таблицу. Как это сделать наименее травматично для них? Понятно, что можно к логину прибавить префикс проекта, например. Но хочется сделать изящнее, например слить 2 пользователей из разных проектов в одного, если у них общий владелец.
Александр, с чего это? Все-равно придется делать какие-то изменения в проектах чтобы их срастить. И поскольку это отдельные проекты то стандартные механизмы с сессиями и куками уже просто не работают, вернее они могут остаться как механизм авторизации, но аутентификацию придется выносить, что как раз и зона ответственности Identity Server
Иван Шумов, аутентификация пользователя не решает проблему склеивания 2 пользователей, она решает проблему аутентификации. я так думаю, что без какого-то ручного подтверждения пользователем, что вот он тут я и тут я - не обойтись. аутентификация там тоже будет задействована, но она не будет ключевой технологией именно склеивания.
Александр, никто кроме пользователя не может подтвердить что он то он. Поэтому единственным разумным выходом сделать связывание профиля при логине на Identity Server. Это если гарантированно. Если не гарантированно то можно каким-то образом слить базу профилей по первому фактору - почта или телефон если он есть и был подтвержден. Если нет - это все технически невозможная задача.