Я работаю с текущей версией Grails 1.3.7, программирую на устаревшей схеме БД в довольно недавней версии mySQL. Существуют таблицы для user
и roles
, а также третья таблица, которая связывает их в стиле m2m roles_has_user
. В принципе, это нормально и, конечно, очень интересно, но стоит отметить, что таблица roles_has_user
имеет две колонки: username VARCHAR(20)
и rolename VARCHAR(20)
. Мне нужна эта структура таблиц, так как она позволяет другому приложению использовать собственный механизм аутентификации Tomcats для защиты некоторых вызовов веб-службы.
Кажется, это проблема: во-первых, я не могу получить правильное отображение m2m моих классов доменов. Может ли кто-нибудь указать мне где-нибудь объяснение использования чего-то кроме поля ID PK (даже если это сгенерированный / нестандартный идентификатор) в качестве FK в гралях м 2?
Вторая проблема - я немного волнуюсь, что я никогда не собираюсь играть в эту игру с весенней безопасностью, кто-нибудь когда-либо (успешно) пытался это сделать?
Возможен вариант сопоставления взаимосвязи через другую (новую) таблицу, а затем изменение контроллеров CRUD для отражения взаимосвязей в таблице roles_has_user
с использованием обязательных полей String username VARCHAR(20)
и rolename VARCHAR(20)
. Но это звучит неуклюже ...
Спасибо за ваше время и, пожалуйста, сообщите ... если вам нужна дополнительная информация, пожалуйста, просто попросите ее, я постараюсь быть максимально ясным.