Welcome 微信登录

首页 / 软件开发 / JAVA

Rails安全导读【三】

Rails安全导读【三】

Rails安全导读【三】2011-07-18 51cto博客 blackanger译四 重定向和文件另一类安全问题是围饶在web应用里重定向和文件的使用。4.1 重定向web应用里的重定向是一个被低估的craker工具:它不仅可以让用户掉入一个陷进网站,而且还可以创造一个完备的攻击。当用户被允许由一个URL重定向的时候,它由可能就是个漏洞。最明显的攻击是将用户重定向到一个和原始页面一模一样的假页面。这个所 谓的‘钓鱼攻击’通过给用户...
Rails安全导读【四】

Rails安全导读【四】

Rails安全导读【四】2011-07-18 51cto博客 blackanger译5. 企业内联专用网和管理安全— 企业内联网和管理界面是最流行的攻击目标, 因为它们有特殊的访问权限. 虽然它会有一些额外的安全措施,可是现实里并非如此。2007年,在线招聘站点Monster.com遭受了一起定制木马(Tailor-made Trojans)攻击,这是第一只专门从企业内联网偷窃信息的定制木马 。定制木马是非常罕见的,迄今为止,发生率比较低, 但...
Rails安全导读【五】

Rails安全导读【五】

Rails安全导读【五】2011-07-18 51cto博客 blackanger译7. 用户管理— 几乎每个web应用都必须去处理授权和认证。避免你自己重复造轮子,建议你去使用通用的插件。但是请保持它们是最新的。一些额外的 预防措施可以让你的应用更加安全。有一些Rails可用的授权和认证插件。密码加密以后保存好于直接保存纯文本密码。最流行的插件是可以避免session定制的 restful_authentication。 然而早期的版本在某些...
Rails安全导读【完】

Rails安全导读【完】

Rails安全导读【完】2011-07-18 51cto博客 blackanger译8.注入— 注入这类攻击是给一个web应用引入恶意的代码或是参数,以便在其安全的上下文里运行。注入的著名的例子就是跨 站点脚本(XSS)和SQL注入。注入是非常棘手的,因为相同的代码或参数在一个环境是恶意的,但是换个环境却是完全无害的。一个上 下文可以是一个脚本,查询或是程序语言,shell或是Ruby/Rails方法。 下面的章节会涵盖所有重要的注入攻击可能发...
扩展JDK日志框架

扩展JDK日志框架

扩展JDK日志框架2011-07-18 IBM 颜 林自 Java 1.4 开始,JDK 包括了一个崭新的日志框架包 java.util.logging,该日志框架设计精良,和 JDK 紧密结合,控制灵活,使用简 单。日志记录对于软件的维护特别是对于已部署到运行环境之后的软件调试都有着重要的意义。在实际的项目中,往往还需要比该框架所提供 的更为复杂的日志功能。对于这种需求,JDK 日志框架具有足够的可扩展能力,可以自定义不同需求的日志处理、消息格式化、日志...
使用动画转换创建生动的用户体验

使用动画转换创建生动的用户体验

使用动画转换创建生动的用户体验2011-07-20Chet Haase典型的应用程序生存期由一些状态组成:数据输入表单、结果界面、含有各种图像的相簿、含有项目的购物车等等。通常,应用程序执行繁 重的任务使用户在这些不同的界面中切换:新的界面替代原来的表单,突然在屏幕中弹出结果,图形和 GUI 对象时而从屏幕中跳出。一般而言 ,各个当前 UI 屏幕都会在操作完成后关闭,然后新的屏幕将取代它的位置。HTML 应用程序就是一个很好的例子:在某个页面中填写一些数据...
在NetBeans IDE中从现有代码创建项目并设置代码帮助

在NetBeans IDE中从现有代码创建项目并设置代码帮助

在NetBeans IDE中从现有代码创建项目并设置代码帮助2011-07-20要获取更多有关在 NetBeans IDE 中使用 C/C++ 应用程序的信息,请参见 NetBeans 网站上的 C/C++ 应用程序学习课程页。教程需求在继续前,请确保您重新检查了本节中的需求。先决条件本教程假设您已经有一些 C 和 C++ 的编程经验。本教程所需的软件在开始前,您需要安装 NetBeans 6.0。C/C++ 下载选项包括 NetBeans IDE 6.0...
理解作用域和受管Bean

理解作用域和受管Bean

理解作用域和受管Bean2011-07-20您在本教程中所创建的 Web 应用程序采用 application 范围内的一个对象来统计投票数,采用 session 范围内的一个对象来确保用户在每个会话中只能投票一次。该应用程序采用一个 request 范围内的对象来显示用户提交投票的时间。该时间存储在 request 范围,因为应用程序在响应被发送到客户端浏览器以后不再需要这个值。本教程需要采用以下技术及资源JavaServer Faces 组件/Java...
NetBeans国际化功能(一)

NetBeans国际化功能(一)

NetBeans国际化功能(一)2011-07-20上次界面的问题终于解决了(感谢令狐虫兄的提点!),只要我关闭自动国际化功能就可以了,应该说是我没有配置好才对,如果建立工程的时候选择JavaDesktopApplication就不会出现那样的问题了(我选择的是JavaApplication)。后来想想既然是国际化的问题,何不研究研究它呢?于是就有了这篇文章(我的文笔不是很好,可能表达的不是很清楚)。下面讲讲我是如何使用NetBeans的自动国际化功能的:...
NetBeans国际化功能(二)

NetBeans国际化功能(二)

NetBeans国际化功能(二)2011-07-20Java编程语言是第一个被设计成为全面支持国际化的语言,从一开始,他就具备进行有效的国际化所必须的一个特性:使用Unicode来处理所有字符串。支持Unicode使得在Java编程语言下,编写程序来操作多种语言的字符串变得非常的方便。如今NetBeans的出现再次帮我们减轻了国际化的工作量真是太棒了!好了回归正题,接着上次的国际化话题,上次只是演示了NetBeans中一些国际化功能,这次讲讲其它的功能,首...
基于Spring DM的WEB应用开发

基于Spring DM的WEB应用开发

基于Spring DM的WEB应用开发2011-07-20Spring DM 1.1.x的最大特性便是它可以支持在其中部署WEB应用,我使用后感觉这是个很酷的特性,我甚至觉得用这种方式开发基于OSGi WEB应用比使用Spring DM Server更好,至少目前你可以获得更好的便携性(可以在多个Spring DM支持的OSGi平台上运行),并且Spring DM Server并没有提供更多的企业应用支持。不过对于刚使用Spring DM进行WEB应用开发...
JavaBeans:游离实体

JavaBeans:游离实体

JavaBeans:游离实体2011-07-20当transaction scope persistence context或extended persistence context结束之后,实体的实例就会不受托管而处于游离状态。游离实体的一个值得注意的特征是,它可以被序列化并通过网络发送给远程客户端。客户端可以修改这些经过序列化的对象实例,并将它们发送回服务器,服务器再将客户端的修改重新合并到数据库中。这与EJB 2.1的实体模型有很大的不同。在EJB ...
Swing生成一个半透明的窗口

Swing生成一个半透明的窗口

Swing生成一个半透明的窗口2011-07-20要生成一个半透明的成形窗口,而又要避免使用本地的编码,唯有灵活地应用screenshot(屏幕快照).半透明窗口是大众对Swing最为渴求的特性之一. 也可以称之为定形窗口,这种窗口有一部分是透明的,可以透过它看到桌面背景和其它的程序.如果不通过JNI(Java Native Interface 本地接口)Java是无法为我们生成一个半透明的窗口的(即使我们可以那样做,还得本地操作平台好支持半透明窗口才行)...
端到端Web服务教程:移动Dilbert应用程序

端到端Web服务教程:移动Dilbert应用程序

端到端Web服务教程:移动Dilbert应用程序2011-07-20本教程将介绍如何使用 NetBeans IDE 创建使用 web 服务的移动客户机应用程序。我们将创建这样一个应用程序,它可通过实时在线 Web 服务提取每日 Dilbert 连环漫画,并将图形转换为空间节省格式,然后在移动设备上显示漫画。在本教程中,我们首先将在移动应用程序中创建一个 Web 服务客户机,用于连接在线 DailyDilbert 服务。然后,我们将演示如何使用 Visual...
Commons Collections学习笔记(三)

Commons Collections学习笔记(三)

Commons Collections学习笔记(三)2011-07-20 博客园 Phinecos这个Map类是基于红黑树构建的,每个树节点有两个域,一个存放节点的Key,一个存放节点的Value,相当于是两棵红黑树,一棵是关于key的 红黑树,一棵是关于Value的红黑树。关于红黑树的详细介绍,参考《C#与数据结构--树论--红黑树(Red Black Tree)》这篇文章。public final class DoubleOrderedMap exte...
<< 501 502 503 504 505 506 507 508 509 510 >>