Я думаю, что вы искали RBAC (управление доступом на основе ролей).Я думаю, что нет четкой разницы между концепцией контроля доступа в настольном приложении и контроля доступа в веб-приложении.Разница только в реализации.Возможно, вы захотите проверить Spring Rich Client Platform, которые интегрированы в Spring Security.За пределами Spring Security я могу вспомнить следующие шаблоны проектирования RBAC:
- Каждый пользователь может быть напрямую связан с одной или несколькими ролями
- Каждая роль имеет одно или несколько разрешений
- Каждый пользователь может принадлежать к одной или нескольким группам
- Каждая группа имеет одну или несколько ролей
Другие шаблоны, которые могут представлять интерес, - это ACL (списки управления доступом)что мы привыкли в системах на базе Windows:
- Каждый объект имеет ACL, который показывает, какому пользователю или какой группе был предоставлен доступ к объекту
- Дочерний объект наследует ACL родителя.