Я работал с несколькими мультитенантными системами.Проблема в том, как сохранить открытую архитектуру
- и
- , чтобы обеспечить решение, которое развивается вместе с вашим бизнесом.
Давайте сначала посмотрим на второй вызов.Многопользовательские системы имеют тенденцию развиваться, когда вам необходимо поддерживать случаи использования, когда к одним и тем же данным (записи) могут обращаться несколько арендаторов с разной емкостью (например, https://bugs.eclipse.org/bugs/show_bug.cgi?id=355458).). Таким образом, в конечном итоге система нуждается в Access Control List.
Чтобы сохранить открытую архитектуру, вы можете кодировать в соответствии со стандартом (например, JPA). Кодирование в EclipseLink или Hibernate делает меня неудобным.
Spring Security ACL предоставляет очень гибкое решение, поддерживаемое сообществом для обоихИспытания. Дайте попробовать. Я справился и был доволен его производительностью. Однако я должен предупредить вас, мне потребовалось некоторое время, чтобы разобраться в этом.