Я родом из веб-мира и всегда делаю это с помощью промежуточного программного обеспечения, которое я создаю, или из тех, что приносит какая-то инфраструктура, но в настольном программировании у меня нет логики ограничивать доступ к определенной части программы в зависимости от пользовательских разрешений в БД.
Я развиваюсь в Java: javaFX + JPA (EclipseLink) + Mysql.
Для разрешений и контроля доступа я рекомендую тебе высоко использовать spring-security. Что, если уже ты это работал с Веб части, так как тебе не будет трудно осуществлять это. Это лучшее решение для безопасности как для Веб приложений, так и для настольных приложений с javafx.
Я перемещаю тебя какие-то соединения для того, чтобы ты ориентировался:
stancalau.ro / javafx-and-spring /
dzone.com/articles/javafx-spring-day-1-%E2%80%93
И не только это, для твоего слоя данных также ты можешь использовать spring-data-jpa. проверяет этот превосходный руководитель:
http://www.petrikainulainen.net/spring-data-jpa-tutorial/
Спринг очень гибкая и Ваша экосистема позволяет нам осуществлять в различных технологиях java (как javaFX) не только Веб.
Если твой клиент - для Windows, и ты хочешь использовать ее autentificaciГіn операционной системы, я рекомендую тебе Waffle: http://dblock.github.io/waffle/README.html