Как использовать MethodAuthorizer в Рестлете? - PullRequest
0 голосов
/ 19 августа 2011

В настоящее время я работаю над проектом с Restlet API. Теперь мой маршрутизатор направляет 6 разных URI на 6 разных ресурсов. То, что я хочу сделать, это ограничить только методы DELETE и PUT в 2 моих ресурсах только авторизованными пользователями Я не смог найти ни одного примера или учебника, который я мог бы узнать о MethodAuthorizer. Есть ли простой способ сделать это?

1 Ответ

0 голосов
/ 14 декабря 2011

Я пытался использовать MethodAuthorizer так же, как мы можем использовать RoleAuthorizer (объяснено здесь - см. Пример кода внизу страницы)

Router router = new Router(getContext());
router.attach("/your/path", YourResource.class);    
MethodAuthorizer ma = new MethodAuthorizer();
ma.getAnonymousMethods().add(Method.GET); // your allowed method for all user
ma.getAuthenticatedMethods().add(Method.DELETE); // your allowed method to authenticated user
ma.setNext(route);

rootRouter.attach("/admin", ma);

Но, похоже, это не тот путь :( Однако, если вы посмотрите на рабочий процесс API безопасности, я не должен быть далеко от решения.

...