Я создаю новое приложение с Spring и Mysql (но я свободен использовать другие вещи) В этом приложении пользовательские журналы не могут видеть все данные (кроме пользователя 'admin'). Существует дерево группы, пользователи в группе. Пользователь может видеть только пользователей (или другие объекты) своей группы (или группы потомков).Фильтрация данных всего запроса
Я пытаюсь найти идею, чтобы сделать это «элегантно»: Например, если я пишу: productDao.findAll(), он возвращает весь продукт allready, не переписывая весь запрос во всех DAO.
Если этого не существует, я принимаю все идеи: рефакторинг базы данных? изменить mysql для другой базы данных, не использовать JPA, другие .... Или может быть, я ошибаюсь, и это плохая идея, чтобы сделать что-то подобное ...
Где вы планируете держать эти ограничения на то, что различные пользователи могут/не могут видеть? Вещи, на которые нужно обратить внимание, будут использовать разные единицы сохранения для конфиденциальных пользователей или даже использовать параметры базы данных, такие как аутентификация прокси-сервера Oracles, описанная здесь. Https://blogs.oracle.com/olaf/entry/using_oracle_proxy_authenticat – Chris