Управление доступом на основе ролей с помощью Pyramid - PullRequest
4 голосов
/ 21 декабря 2011

Я рассматриваю возможность использования Pyramid для создания веб-приложения среднего размера. Мне нужно было бы реализовать RBAC . Какой будет лучший выбор? Можно ли будет использовать компоненты Zope?

1 Ответ

3 голосов
/ 21 декабря 2011

Ну, Pyramid реализует политику авторизации ACL, которая отображает принципалы в разрешения.

  1. Принципы настраиваются вами для обозначения того, что вам нравится, и являются производными от самого запроса (пользователя).
  2. Разрешение - это строка, прикрепленная к отдельному представлению или «операции»..

Возможно, я ошибаюсь, но RBAC, кажется, вполне вписывается в эту идею.Я понимаю, что RBAC имеет тенденцию быть в большей степени глобальной политикой, тогда как списки ACL, как правило, являются контекстными и, следовательно, привязаны к данным.Это на самом деле не проблема и зависит от того, как вы планируете структурировать остальную часть вашего приложения.

Вы также можете довольно просто реализовать свой собственный RBACAuthorizationPolicy.В Pyramid будут передаваться принципалы и разрешение, и оттуда вы можете запросить сопоставления доступа, чтобы определить, возвращать ли значение Allowed или Denied для этого пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...