Servlets 如何限制对某些restlet资源的访问

Servlets 如何限制对某些restlet资源的访问,servlets,servlet-filters,restlet,restlet-2.0,Servlets,Servlet Filters,Restlet,Restlet 2.0,我试图找出使用restlet框架限制访问某些资源的最佳方法。 在我的例子中,我有一个POJO对象 public class User { private Integer id; private String password; private boolean enabled; private boolean adminPrivileges; } 所以,我要做的是:如果客户端请求的资源处于 /normal user,请求对用户进行身份验证,并将其启用(即enab

我试图找出使用restlet框架限制访问某些资源的最佳方法。 在我的例子中,我有一个POJO对象

public class User
{
    private Integer id;
    private String password;
    private boolean enabled;
    private boolean adminPrivileges;
}
所以,我要做的是:如果客户端请求的资源处于

  • /normal user
    ,请求对
    用户进行身份验证,并将其启用(即
    enabled=true
  • /admin user
    ,请求对
    用户
    进行身份验证,确认其已启用并具有管理员权限(即
    已启用=true
    管理员权限=true
  • 否则,不需要身份验证
实现这一目标的最佳方式是什么?请注意,我不想限制对某些文件或目录的访问,而只限于特定资源(即
ServerResource
的实例)。
我可以只使用restletapi来实现它吗?或者我必须实现某种servlet
过滤器
?据我所知,restlet使用的
Guard
类只用于限制对特定目录的访问。

是的,restlet使用Guard对资源应用安全性。如果身份验证成功,它们允许检查身份验证(验证者)并加载相应的角色(注册者)

在Reslet应用程序类中定义路由时会配置防护,并且必须在您要保护的资源或路由器前面定义防护

希望对你有帮助。 蒂埃里