Использовать или не использовать пользовательский модуль - PullRequest
1 голос
/ 03 февраля 2010

В настоящее время мы переводим наш веб-сайт на Drupal 6.x из не Drupal-источника. Одна из первых проблем, с которыми мы должны иметь дело, это проблема аутентификации. У нас есть центральная база данных, где мы храним информацию о членах. Мы создадим модуль для аутентификации в этой базе данных, однако вопрос о том, нужно ли создавать пользователей в drupal.

Меня беспокоит, что если мы не добавим пользователя в пользовательские таблицы и не дадим нашему модулю синхронизировать его с другой базой данных, мы не сможем воспользоваться другими модулями, которые могут использовать пользовательский модуль

С другой стороны, мой коллега считает, что это не проблема, мы можем добавить все необходимые атрибуты к глобальному $ user при аутентификации с помощью нашего модуля.

Существует ли стандартный способ решения этой проблемы?

Спасибо!

David

Ответы [ 4 ]

2 голосов
/ 03 февраля 2010

Посмотрите на модуль LDAP_integration, они делают что-то подобное. Когда вход в систему и локальный пользователь не могут быть загружены, пользователь ищет в другом приложении, а когда user & pass равны, пользователь копируется в пользовательскую таблицу Drupal.

1 голос
/ 05 февраля 2010

Я бы также посоветовал взглянуть на модуль LDAP.Я смог использовать его как отправную точку для взаимодействия с пользовательским методом аутентификации WSAPI для внешней базы данных, которую мы имеем в моей компании.

1 голос
/ 04 февраля 2010

Если вы хотите, чтобы какая-либо функциональность Drupal (читай: ядро ​​и модули) была связана с этой учетной записью пользователя, вам нужно будет использовать эту таблицу пользователей.

Это особенно верно для всего, что связано с узлами, поэтому, если вы хотите, чтобы люди могли создавать узлы со ссылочными данными, вам это понадобится. идентификаторы хранятся в таблице узлов, чтобы показать, кто является автором узла. Хранение идентификатора пользователя в таблице узлов с чем-то, что не существует в качестве реляционного ключа где-либо еще, вернет только пустой объект. Например, если человек хочет увидеть автора узла X, он получит пустой пользовательский объект. Оставь это. Нет смысла работать усерднее, чтобы просто убрать его. Кроме того, вы можете хранить как минимум, так и много в пользовательском объекте для каждой учетной записи.

0 голосов
/ 03 февраля 2010

Вам нужно, чтобы оба сайта работали параллельно? Если нет, то вам не нужно синхронизировать пользовательские таблицы. Тогда будет достаточно конверсии.

...