`
gavinxixi
  • 浏览: 21703 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

DWR安全性疑问描述

阅读更多

背景前提:

针对UserRemote这个远程调用

其中有两个方法:

deleteUserexistsUserID

都是可供远程调用的。

 

问题描述:

假如某个页面只需要用到existsUserID来判断用户是否存在,那么就一定有调用deleteUser来删除用户的能力,这显然是不安全的。

 

举例:

1)        某用户登录后输入url可以到达填写信息的页面

2)       
 
这里会调用existsUserID

因此引用js文件

<script src='<c:url value='/dwr/interface/UserRemote.js'/>'></script>

3)        在地址栏中输入

javascript:UserRemote.deleteUser(75,function(date){alert(date);});

4)        这样意味着一个普通用户也能执行删除别的用户的操作

 

解决方案:

因为dwr不能(或者是我不知道)获取Session,难以做权限判断,而且在业务层也不应该做过多不纯粹的工作,应该交由框架级的拦截器做这个权限工作。

  • 大小: 4.1 KB
0
1
分享到:
评论
2 楼 gavinxixi 2009-10-20  
CoderDream 写道
因为dwr不能(或者是我不知道)获取Session???

太小白了吧!

当然可以!

public String findOrgName(HttpSession session, String orgName) {

}

在js中调用时不用传session。

删除是一个特殊操作,你要求界面传入用户名或密码。

不懂不是你的错,可以去学,但是请不要不懂装懂,乱说。

DWR现在应用很广泛,难道连这些问题都不会考虑到?!


谢谢你的指导,我确实是非常菜鸟的,所以我也没有把话说死,只是提出一个疑问而已,我没有装懂,再次谢谢你的回答。
1 楼 CoderDream 2009-10-19  
因为dwr不能(或者是我不知道)获取Session???

太小白了吧!

当然可以!

public String findOrgName(HttpSession session, String orgName) {

}

在js中调用时不用传session。

删除是一个特殊操作,你要求界面传入用户名或密码。

不懂不是你的错,可以去学,但是请不要不懂装懂,乱说。

DWR现在应用很广泛,难道连这些问题都不会考虑到?!

相关推荐

    dwr dwrdwr

    dwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwr

    dwr.xml配置描述及JSP上的引用_1

    然而,使用DWR时也要注意安全性,因为它允许JavaScript直接调用服务器端的方法,因此应避免暴露敏感的或不安全的操作。 总的来说,DWR通过简化AJAX开发,使得Web应用能够实现更丰富的交互体验。正确配置`dwr.xml`并...

    DWR中文文档DWR

    - **安全机制**:DWR提供了防止XSS(跨站脚本攻击)和CSRF(跨站请求伪造)的安全机制,确保应用安全性。 2. **配置**: - **web.xml**:在Web应用的部署描述符中配置DWR的Servlet,如`dwr-servlet.xml`,设置...

    dwr demo dwr简单使用

    9. **安全考虑**:在实际项目中,使用DWR时需要注意安全性问题。暴露给JavaScript的服务器端方法可能会引发安全风险,因此需要谨慎设置DWR的访问权限,避免敏感数据和操作被不授权的用户调用。 通过这个简单的DWR...

    DWR的学习资料,DWR学习必备

    DWR中文文档.pdf:这是DWR的官方中文文档,详细解释了DWR的各个方面,包括安装、配置、API使用、安全性和最佳实践。对于初学者来说,这是一个宝贵的资源,可以帮助理解并熟练掌握DWR。 DWR开发培训.ppt、DWR.ppt:...

    dwr笔记 dwr自学资料

    3. **安全机制**:DWR提供了一套安全机制,包括基于IP地址和URL的访问控制、签名验证等,以防止跨站脚本攻击(XSS)和其他安全风险。 三、DWR的主要组件 1. **Crawler**:负责在服务器上扫描Java类,生成JavaScript...

    dwr1+dwr2+dwr3 jar包

    另外,它增强了安全性,包括支持CORS(跨源资源共享),以应对现代浏览器的安全需求。DWR3.0还改进了自动刷新机制,允许在不刷新整个页面的情况下更新部分内容。 在实际使用中,你需要根据项目需求选择合适的DWR...

    Dwr3.0 与 Dwr2.0 区别

    无论是在架构设计、性能优化还是安全性增强等方面,DWR 3.0 都展现出了更强的能力。此外,它还提供了更为丰富的 API 和工具集,使得开发者能够更加高效地构建高质量的 AJAX 应用。对于正在考虑使用 DWR 或者计划从旧...

    ajax的dwr包

    总结起来,DWR是一个强大的工具,它简化了Ajax开发,提供了丰富的功能和良好的安全性,使得开发者能够更加专注于业务逻辑的实现,而不是技术细节。如果你正在寻找一种方式来增强你的Web应用的交互性和响应速度,DWR...

    DWR 教程 中文API DWR.xml配置文件说明 DWR学习笔记

    总的来说,这个DWR教程包提供了一套全面的学习资源,适合初学者和有一定经验的开发者,帮助他们掌握DWR的使用,提升Web应用的交互性和效率。通过阅读这些文档和笔记,开发者可以了解到如何利用DWR实现动态、响应式的...

    dwr,jar和dwr-noncla.jar

    Direct Web Remoting (DWR) 是一个开源...而`web.xml`和`dwr.xml`则定义了DWR在Web应用程序中的运行配置,确保安全性和正确性。通过合理配置和使用这些文件,开发者能够构建出具有动态更新特性的富互联网应用(RIA)。

    dwr2.0 dwr3.0 jar包

    在这个版本中,DWR提供了一套全面的API,包括自动转换Java对象到JSON格式,以及处理安全性和并发性问题。此外,DWR 2.0支持自动刷新,这意味着当服务器端的Java类或方法发生变化时,无需重新加载页面,客户端的...

    DWR与界面开发 资料大全

    五、DWR的安全性 1. **白名单配置**:通过dwr.xml配置文件设置允许调用的类和方法,防止XSS攻击。 2. **签名与认证**:DWR可以通过签名来验证请求的来源,提高安全性。 六、DWR与界面开发实战 1. **创建动态表单**...

    DWR2.jar + DWR.xml + DWR2.0.dtd + Web.xml

    在这个文件中,你可以定义哪些Java类和方法可以被浏览器访问,设置安全性限制,以及配置转换器和过滤器等。例如,通过`&lt;allow&gt;`标签,你可以指定允许JavaScript访问的Java类和方法;通过`&lt;convert&gt;`标签,可以为特定...

    DWR框架学习demo

    - DWR提供了安全性机制,如CSP(Content Security Policy)和白名单,以防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF)。 **5. 示例war包和jar包** - **war包**: 通常包含了一个示例Web应用,展示了如何在实际项目中...

    DWR中文教程(外带DWR包)

    5. **安全与优化**:了解如何设置安全性选项,防止跨站脚本攻击(XSS),以及如何通过缓存和批处理优化DWR性能。 6. **DWR的高级特性**:如批量调用、反向AJAX(使服务器能主动更新客户端)、自定义转换器和适配器...

    dwr跨域访问以及dwr的使用+dwr.jar

    Direct Web Remoting (DWR) 是一个开源Java库,它允许Web应用程序在浏览器和服务器之间进行实时、安全的双向通信,有效地打破了JavaScript和Java之间的壁垒。这个技术在2005年推出,主要解决了AJAX(异步JavaScript...

    Dwr例子带注释

    5. **DWR的安全性**: - DWR提供了安全机制,如CSP(Cross Site Scripting Prevention)来防止跨站脚本攻击。 - 通过白名单机制限制JavaScript可以调用的Java类和方法,防止非法访问。 6. **DWR的优势**: - ...

    dwr.jar 以及dwr配置文件

    Direct Web Remoting (DWR) 是一个开源的Java库,它允许在JavaScript和服务器端Java之间进行双向通信,实现Web应用程序的Ajax...通过熟练掌握这两个文件,开发者能够更好地利用DWR来提升Web应用的交互性和用户体验。

Global site tag (gtag.js) - Google Analytics