Вы путаете два понятия, авторизация и аутентификация.
Аутентификация - передача логина/пароля, процесс получения авторизации.
Авторизация - собственно и есть сессия.
А теперь поправьте меня если я ошибаюсь. Вам нужно чтобы на сайте "А" проходила аутентификация, а авторизация была доступна как на сайте "А" так и на сайте "Б"?
Если я правильно понял задачу, то:
Напомню что сессионные идентификаторы хранятся в кукисах, а это означает что нужно получить куку (и сессию) на обоих доменах, а это в свою очередь означает что и аутентификацию нужно пройти на обоих доменах. Поэтому план действий следующий:
После ввода логина/пароля и прохождения валидации на стороне сервера, выдается javascript прокладка, которая делает POST запрос с шифрованными (например алгоритмом rc4 (ru.wikipedia.org/wiki/RC4)) данными пользователя (баланс, логин, email и прочие данные) на API домена "Б". API в свою очередь пережевывает данные, и если всё ок то запускает сессию и отправляет юзера обратно на домен "А", где происходит завершающая стадия аутентификации, то есть тоже запускается сессия.
Таким образом ты получишь авторизацию на двух разных доменах.
Как видно (выше), в одной коллекции у нас есть велосипед, с атрибутами скорости, цвета и веса, и меч с атрибутом материала и веса.
Очень удобно хранить данные
Вся информация в свободном доступе. Я лишь сделаю акцент на том, что NoSQL решения не требуют заготовленной структуры базы данных. Таким образом, одна коллекция может иметь записи которые имеют абсолютно разные атрибуты. Другими словами, в коллекции (аля таблице) могут быть записи, о велосипеде и его характеристиках и о пришельцах с марса, об ихнем цвете кожи, росте и тд итп. А это именно то что нужно автору.
@0neS Это я понял. Автор как раз и спрашивал, писать подобные костыли или есть более изящное решение?
> Если таких отличий слишком много, то можно вынести все в отдельную таблицу для атрибутов с полями имя_атрибута, значение_атрибута, id_модели, id_категории и выводить их в зависимости от модели/категории.
Да. чтото типа того надо обдумывать.
Если я правильно понял поставленную задачу, то - "велосипеды" это метафора. Там будут не только велосипеды. а даже розовые кружечки zaxaroid'a с пикабу грубо говоря. Проблема в том, как я понял, что будут товары разных мастей которые имеют разные характеристики на корню. Вот автор и спрашивает как это все правильнее организовать.
Поэтому я посоветовал автору глянуть в сторону NoSql решений.