Angular,Meteor,Ember:如何使用Client Side-Frameworks = Security实现管理视图?

时间:2015-11-15 08:12:59

标签: angularjs security ember.js meteor admin

我没有使用过这些。但我想知道如何最有效地实现管理员视图/屏幕,主要是从安全角度来看,不泄漏内部。

Serverside:(PHP / Java / Ruby / Python ......)

有条件地输出仅在管理视图中可用的表单元素非常容易且非常安全。

Clientside(Ember / Angular / Meteor ......):

我可以有条件地检查客户端的角色/权限并进行渲染 相应的屏幕。但它总是泄露内部信息(有人可以很好地理解我的应用程序为管理员提供的内部功能,查看源代码)。 (当然我也必须在服务器端进行验证!)

这是如何解决的?

通常的做法是重新编码管理视图并有两个接口,导致代码重复?或者解决这个问题的常见做法是什么?

1 个答案:

答案 0 :(得分:0)

我已在Ember中编写了一个应用程序,其中包含了管理面板,但只有isAdmin设置为true的用户才能访问它。现在看看这个问题,我将创建2个应用程序 - 1个用于临时用户,1个用于管理员。我会选择它,因为较少的代码将被提供给最终用户,并且管理员特定的逻辑和视图对于普通用户来说是完全不可访问的。所以,如果你选择Ember,我给你的建议是创建2个应用程序而不是1个,并通过本地Ember CLI插件共享相同的代码。