0

我正在使用 GWT 平台开发应用程序,现在我想添加安全部分。这样做的最佳做法是什么?我对安全性的要求是:

  • 拥有用户权限;
  • 在没有必要权限的情况下向用户隐藏某些地方;
  • 在没有必要权限的情况下向用户隐藏页面上的某些元素;
  • 保护服务器端免受未经授权的请求;
  • 轻松管理所有这些事情(比如在春天使用注释或类似的东西)
4

1 回答 1

1

拥有用户权限;

使用权限属性为您的用户建模,例如

 private int user_type;

在没有必要权限的情况下向用户隐藏某些地方;

使用Gate Keeper的概念

Gate Keeper 是 Singleton,它要求您继承一个名为

boolean canReveal()

使用它,您可以调用服务器并搜索用户权限,然后显示或不显示演示者调用。

如果 Presenter 需要安全性,只需在其代理接口上添加 @UseGateKeeper,例如:

SomePresenter extends Presenter<V,P>{
       @UseGateKeeper(YourGateKeeper.class)
       SomePresenterProxy extends ProxyPlace{}
}

这将阻止没有某些权限的用户访问演示者。

在没有必要权限的情况下向用户隐藏页面上的某些元素;

一个很好的问题,我从未在 GWTP 项目中看到过这种类型的安全性。但是你总是可以使用 Widget.setVisible(false) ;D,但我不知道 gwtp 是否有一个好的做法。

保护服务器端免受未经授权的请求;

GWTP GWTP 可以将您的每个 ActionHandler 与服务器端 ActionValidator 链接起来,该服务器端 ActionValidator 确定当前客户端是否可以执行该操作

您可以使用 ActionValidator 隐藏一些服务器调用。

这个

轻松管理所有这些事情(比如在春天使用注释或类似的东西)

如您所见,许多此类安全概念使用注释和其他东西来轻松管理您的应用程序。

于 2012-12-06T13:48:41.553 回答