日期:2014-05-17  浏览次数:20484 次

ASP.NET 代码安全性:不让别人看到CS源代码
ASP.NET,使用C# 语言,想不要别人看到CS源代码,该怎么办???? 
我以前是用Java语言的,用Eclipse工具, Java能编译成Class文件,跟页面文件一块放到Web服务器上,
ASP.NET如何实现源代码的不泄露和安全性呢?

------解决方案--------------------
呵呵,c#部署只需要部署相应的aspx,ascx文件和bin目录下的dll,aspx.cs文件中的代码都会编译到bin目录下的dll中
java是一个java文件编译一个class文件,.net是一个工程下的.cs文件都编译到bin目录下的dll中
------解决方案--------------------
是中间代码没错,但.Net编译的Dll默认也可以通过工具查看源代码的。
如果你用.Net开发,就不要把源代码看得太重。现在不是讲究源代码共享吗。
如果实在是有商业机密,就混淆一下吧。(Baidu:混淆器)

编译后的Dll需要.Net framework支持。ascx跟aspx文件放在IIS根目录或虚拟目录中, .dll放在Bin下面。
------解决方案--------------------
可以使用.net framework中的aspnet_compiler工具,使用方法如下。
比如我们现在编译的应用程序,虚拟目录是aspnet,实际物理路径是E:\aspnet,我们编译后的目标路径是E:\www,那么我们只要执行如下命令就可以了:
 aspnet_compiler -v /Aspnet -p E:\aspnet E:\www 

 

执行完成后,我们发现E盘下生成了www的目录,里边的子目录App_Code和所有.cs文件都不见了,还有master页及其代码.cs文件也不见了。多了一个bin目录(里边是些.compiled和dll文件)和一个PrecompiledApp.config文件。其实这时候.aspx文件也被编译了,只是它作为一个标记文件还存在,实际上没有任何实质性的内容(我们发现这时候每个aspx文件的内容都是“这是预编译工具生成的标记文件,不应被删除!”,其实删了也无所谓)。

aspnet_compiler是个很不错的工具,用来预编译ASP.NET应用程序。打开Visual Studio 2005命令提示就可以执行了。详细的可以aspner_compiler -?看看帮助。


------解决方案--------------------
是中间代码没错,但.Net编译的Dll默认也可以通过工具查看源代码的。 
如果你用.Net开发,就不要把源代码看得太重。现在不是讲究源代码共享吗。 
如果实在是有商业机密,就混淆一下吧。(Baidu:混淆器) 

编译后的Dll需要.Net framework支持。ascx跟aspx文件放在IIS根目录或虚拟目录中, .dll放在Bin下面。

6楼的说的不错/
------解决方案--------------------
呃...
java编译成class文件...
C#编译成dll文件...
网站发布之后.cs文件完全可以去掉