У меня есть приложение, которое использует Spring Безопасность для аутентификации/авторизации на стороне сервера, Spring MVC для конечных точек сервера сервера REST и AngularJS для просмотра.
На стороне сервера я реализовал все фильтры, необходимые для доступа ко всем этим конечным точкам REST, на основе прав пользователя. Мой вопрос: как мне подойти к созданию видимых/скрывающих элементов html на основе прав аутентифицированных USER?
Например, у меня есть в представлении 3 кнопки (кнопка1, кнопка2, кнопка3). Каждая кнопка имеет соответствующий USER RIGHT, который должен сделать их видимыми/скрытыми. Позвольте называть это прав USER_RIGHT1, USER_RIGHT2, USER_RIGHT3.
Если пользователь имеет право USER_RIGHT1, он должен видеть в представлении кнопку 1, если у него есть правильный USER_RIGHT2, он должен видеть в представлении кнопку2 и т.д.
Мой подход состоял в том, чтобы иметь список аутентифицированных прав пользователя в клиенте и сделать что-то в следующем примере:
<div ng-if="rights contains USER_RIGHT1">
<button name="button1".... />
</div>
<div ng-if="rights contains USER_RIGHT2">
<button name="button2".... />
</div>
Я не уверен, должен ли список прав аутентифицированного пользователя быть в клиенте.
Как мне подойти к этой проблеме? Правильно ли я делаю это?