ASP.NET Web应用程 页面PHP调用别人页面的问题

您所在位置: &
&nbsp&&nbsp
基于ASP.NET架构Web应用的安全性研究及应用.pdf80页
本文档一共被下载:
次 ,您可免费全文在线阅读后下载本文档
文档加载中...广告还剩秒
需要金币:50 &&
你可能关注的文档:
··········
··········
硕士学位论文
基于ASP.NET架构Web应用的安全性研究及应用
姓名:崔海波
申请学位级别:硕士
专业:系统分析与集成
指导教师:王时绘
基于互联网的Web应用发展迅速,尤其是随着微软加入了开源的大军后,基于
直被人们忽略,或者通常被当作网络安全问题。应用程序架构师和开发人员将安全性看
作事后处理的任务,或在时间允许的情况下 通常是在解决性能问题之后 才考虑安全
性要求。面对一系列的安全性事件,Web应用程序的安全性是应该被提到议事日程上来
本文就ASP.NETWeb应用程序安全性及在实际中的应用进行了详细的探讨。研究
了基于ASP.NET架构的应用程序的安全性基本原理以及它所面临的威胁。结合作者所
参与的“企业门户网站信息平台建设”,对ASP.NETA安全行进行分析,并在此基础上,
提出了可行的解决方案。研究工作主要涉及以下方面:
本文对ASP.NET安全技术作了详细阐述,分析了“企业门户网站信息平台建
设”项目的安全问题,提出了解决跨站脚本攻击、H1]曙响应拆分攻击及SQL
注入攻击的方法;
并且在项目中成功实施。在此基础上实现了“企业门户网站信息平台建设”
并完成了安全性改造。
提出了存储敏感数据的方法,实现了使用带有salt的哈希值对敏感数据加密
关键词:ASP.NET;完全;漏洞;SQL注入;跨站脚本;身份验证
正在加载中,请稍后...[转载]VS2010发布ASP.NET&WEB应用程序
E、单击确定。这里需要等待一些时间。
F、打开控制面板,找到管理工具。
G、然后打开&Internet&信息服务(IIS)管理器
H、展开&计算机名-pc(),选择网站,右击添加网站
I、输入网站名称,我这里写的是test
J、到计算机中创建一个目录,该目录用来放你发布的webservice用的。我建在了D盘的根目录下。D:phonetest
K、将建好的路径放到物理路径中。点击确定就行了。
L、浏览&Default&Web&Site网站,将iisstart.htm文件复制,然后到test网站下浏览,再将他粘贴上去。最好修改一下,这样可以和我们默认的做一区别,防止混淆。
M、将Default&Web&Site网站&停止,然后打开test网站。
N、关闭为windows防火墙,或者允许该程序通过。
O、这是你在同网下的电脑里输入你的ip,将会看到你的iisstart.htm页面,这就说明你成了。
3、我们将建好的webservice发布在网上。
A。右键点击项目名称
选择“打包/发布设置”
将打包发布WEB 页面更改如下
B。右键点击项目名称
选择“发布”
最后点击发布
C、将地址栏里的localhost:xxx改为你的计算机ip(不用加端口)。
例如我的:
然后,回车。页面就会不改变的。只要连接到你的计算机的电脑在浏览器
中输入该地址,会和你看到的一样的。
D、记下上面的地址。(当然你的就是你自己的ip信息了。还有我们的域名:就是默认的&&。还需要
记住方法名&HelloWord,和getData。以及参数的类型和参数名。
客户端调用WEBservice会使用到这些信息
/snowdream/archive//deploy-website-by-msdeploy.html
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。1070人阅读
& &&无论在Window应用程序,还是Web应用程序以对用户友好的方式显示运行时的异常都是很有必要,尤其对于可能有很多不确定因素导致异常的Web应用程序;在传统的Web开发中,处理异常的方式——设计专门一个页面作为出现异常后跳转的页面,对于这个功能,ASP.net以及IIS有内建支持。而对于Ajax类型的应用程序来讲,一个页面就是一个程序,如果贸然将用户引导至另一个页面(即另一个程序),显得有些唐突。
& &但是Ajax程序也可以实现以上的异常处理方法(接下来的介绍中会提到);Asp.Net&
Ajax有一套自己的针对异步回调发生异常的处理机制。
&&&&本篇博客将通过一个实例来介绍:Ajax程序:处理异步调用中的异常——使用Asp.Net
Ajax内建的异常处理方法
CatchError.aspx中:
添加控件ScriptManager、UpdatePanel(两者配合实现异步);UpdatePanel中添加一个按钮Button,此Button的Onclick响应Button1_Click事件;
(注:AllowCustomErrorsRedirect属性,默认值为true,表示在异步请求发生异常时是否沿用Web.config中customErrors节中的设定,Web.config中customErrors节中可以指定应用程序级别的错误处理页面(对于Ajax程序,尽量避免这种处理异常的方式(跳转到另一页面的方式));这种方式的简单例子如下:
1_CustomRedirect.aspx中:
页面效果如下:
1_CustomRedirect.aspx.cs中:
Web.Config中:
Error.aspx中:
点击按钮“Button”,跳转到Error.aspx页面,如下:
弹出如下页面,页面信息如下:
2,下面正式进入主题
(1)CachError.aspx.中:
(注:OnAsyncPostBackError=&ScriptManager1_AsyncPostBackError&:ScriptManager的AsyncPostBackError事件的处理函数为ScriptManager1_AsyncPostBackError()。AsyncPostBackError事件将在异步回送引发异常时触发。在该事件的处理函数中,我们可分析异常产生的原因并根据需要过滤敏感信息)
(2)CachError.aspx.cs中,Button1_Click()事件:
CachError.aspx.cs中,ScriptManager1_AsyncPostBackError()事件:
(注:AsyncPostBackErrorMessage属性:表示了异步回送过程中发生的异常将显示出的信息)
(3)IE中运行:点击下面按钮Button:
运行结果如下:
(注:我在FireFox中和360中运行,都没有运行成功,不知道为什么,也没有研究出来,最后我猜测应该是浏览器的原因)
异常处理完了,但是却看似不是很友好,如何做出友好的异常处理显示呢?
使其友好,可如下:
(1)在客户端CachError.aspx.cs中添加如下Javascript代码:
(注:Sys.WebForms.PageRequestManager.getInstance():获得PageRequestManager对象的实例;为其endRequest事件添加了函数function(sender,e){…},在该处理函数中,我们即可访问到异常的详细信息)
(2)运行:点击下面按钮Button:
运行结果如下:
本篇博客通过一个实例介绍了:Ajax程序处理异步调用中的异常(使用Asp.Net
Ajax内建的异常处理方法),
通过本博客您还可以了解:ScriptManager的AsyncPostBackError事件、AsyncPostBackErrorMessage属性;PageRequestManager对象及其endRequest事件。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:146729次
积分:7196
积分:7196
排名:第923名
原创:171篇
评论:2496条
(2)(5)(4)(3)(4)(4)(4)(4)(3)(4)(3)(5)(7)(2)(4)(4)(8)(7)(5)(5)(4)(6)(5)(7)(9)(4)(7)(5)(10)(9)(4)(4)(6)(5)(6)(2)1 string pathstr = "C:\\ActiveSoft\\ActiveMessenger\\AMsger.exe"; 2 UserInfo user = new UserInfo(); 3
user = UserInfoManager.SelectUserById(int.Parse(Session["currentuser"].ToString())); 4
ProcessStartInfo pro = new ProcessStartInfo(); 5
string serverstr = GetIP();//获取IP地址 6
string loginname = user.U 7
string password = user.P 8
string portstr = "5001"; 9
pro.FileName =
//获取或设置要启动的应用程序或文档10
//pro.WorkingDirectory = "C:\\ActiveSoft\\ActiveMessenger";
//获取或设置要启动的进程的初始目录11
pro.Arguments = "Server=" + serverstr + ";LoginName=" + loginname + ";Port=" + portstr + ";Password=" + password + ";EnType=1";12
//pro.CreateNoWindow =
//获取或设置指示是否在新窗口中启动该进程的值13
pro.Verb = "open";
//获取或设置打开 FileName 属性指定的应用程序或文档时要使用的谓词14
pro.WindowStyle = System.Diagnostics.ProcessWindowStyle.N //获取或设置启动进程时使用的窗口状态15
//pro.UseShellExecute =
//获取或设置一个值,该值指示是否使用操作系统外壳程序启动进程16
Process.Start(pro);
到此为止我用VS2008运行程序,功能完全实现客户端正常登录成功没有任何问题。
再通过IIS,没有登录成功,但是在任务管理器里面却出现了这个exe文件的进程。于是从网上找资料(参考了这里的说法),进行了如下修改:
注意:在asp.net2.0中运行以上两种方法写的程序都可以得到想要的结果。但是在asp.net1.1或更早的版本却不能得到想要的结果,打开任务管理器甚至可以看到进程已经存在(编译器也没有报错),但就是看不到执行效果,这是微软为了安全原因禁掉了程序的运行,你需要做以下两步才能正常运行:1、在桌面右键单击&我的电脑&,选择管理,展开&服务和应用程序&节点,选择&服务&项;从右侧的服务列表中找到&IIS Admin&项,右击鼠标,选择&属性&,在属性框中打开&登陆&页,勾选&本地系统帐户&下的&允许与桌面交互&项,点击确定。重新启动这项服务。2、打开目录&C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG&中的machine.config文件,找到&processModel&项,原来这项中有一个属性是userName="machine",将machine改为&system&,保存文件,修改完毕。现在再运行以前的程序可以看到期望的结果。以上程序在IIS5.0中可正常运行。
修改完毕,IIS也实现了功能,也可以登录了。很是轻松啊,于是把网站程序发布到服务器上,再运行却发现没有任何反应,甚至任务管理器也没有出现这个exe文件的进程。
问题到此描述完毕,希望各位高手不吝赐教,如果我的这个实现方式不可以,请告知其它思路,将不胜感谢。
问题解决即可送分。
提问于: 17:27
问题补充:
问题已解决,感兴趣的园友请访问(/question/13371/)。这也是我提出的问题,最后自己给摸索出来了。大侠们似乎不屑于回答这种问题啊。
所有回答(4)
个人小声的说下,你描述的实现基本不可能完成,安全原因被禁止掉了。要是页面上也能直接执行可执行程序,那web的世界就完全乱了。你这要运行的话,那会需要浏览器的安全级别非常非常低,而且也不一定能运行成功...
比较靠谱的解决办法是使用ActiveX来做,用户客户端安装一个ActiveX控件,然后由他来启动你的程序。
园豆:10378
园豆:10378
你可以写个COM+放到服务器上,然后ASP.NET代码调用一下COM+,由COM+替你实现这个功能.
正如卡索所言,楼主的目标是要在客户端通过IE启动应用程序,而不是在服务器上做设置。
关键是你不能确定是否获取客户pc的运行权限。
因此,可以考虑用AMsger.exe直接通过web service或.net Remoting\WCF等进行进程间通讯,不建议用网页形式。
园豆:24835
大哥,asp.net这种东西,到了客户端都是html乐,你写的代码都是在服务器端运行的,你怎么执行客户端的exe呢,
再说,如果可以运行,你知道有多可怕马,那我就写一个运行一下妮的format,你的硬盘是不是就挂了呢
园豆:1615
&&&您需要以后才能回答,未注册用户请先。}

我要回帖

更多关于 PHP调用别人页面 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信