成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET虛擬主機之文件系統操作隱患淺析

開發 后端
ASP.NET虛擬主機之文件系統操作隱患是什么呢?具體的體現是什么呢?我們在這篇文章中就向你介紹這方面的情況。

ASP.NET虛擬主機之文件系統操作隱患是在我們編寫代碼之前,有必要了解一下我們需要用到的幾個主要的類。這幾個類都在System.IO名稱空間下,System.IO 名稱空間包含允許在數據流和文件上進行同步和異步讀寫的類。

在整個應用程序的開始部分我們需要了解一下服務器的系統信息,這就需要用到System.Environment類,該類提供有關當前環境和平臺的信息以及操作它們的方法。我們通過System.Environment類可以得到系統的當前目錄和系統目錄,這可以使我們更快的發現幾個關鍵的目錄;我們還可以通過獲取運行當前進程的用戶名來幫助我們了解ASP.NET程序運行所使用的用戶,進一步設置用戶權限以避免這一安全問題。

我們還要使用System.IO名稱空間的其他幾個類是:

System.IO.Directory:提供用于創建、移動和枚舉通過目錄和子目錄的靜態方法的類

System.IO.File:提供用于創建、復制、刪除、移動和打開文件的靜態方法的類

System.IO.FileInfo:提供創建、復制、刪除、移動和打開文件的實例方法的類

System.IO.StreamReader:實現一個 TextReader,使其以一種特定的編碼從字節流中讀取字符。

每個我們所使用的類的屬性和方法的具體用法我們將以代碼注釋的方式在程序中加以說明。

System.IO名稱空間在 .NET FRAMEWORK提供的mscorlib.dll中,在使用VS.Net編程之前需要將此Dll引用到此項目中。

我們所編寫的程序都使用了Codebehind方式,即每一個aspx程序都有一個對應的aspx.cs程序,aspx程序中只是寫與頁面顯示相關的代碼,所有邏輯實現的代碼都放在相應的aspx.cs文件中,這樣就可以更好得做到顯示與邏輯的分離。由于我們的目的不是討論Codebehind技術,所以就不在對此多加討論了。

在這篇文章里,我們只介紹幾個主要的類及其關鍵方法的用法,詳細程序請查看附帶的源代碼。

程序一:顯示服務器的當前信息和全部邏輯驅動器的名稱的程序listdrivers.aspx

主要方法1:我們使用 GetSysInf() 方法來得到服務器的當前環境和平臺的信息

  1. //獲取系統信息的方法,此方法在listdrivers.aspx.cs文件中  
  2. public void GetSysInf () {  
  3. //獲取操作系統類型  
  4. qDrives = Environment.OSVersion.ToString();  
  5. //獲取系統文件夾  
  6. qSystemDir = Environment.SystemDirectory.ToString();  
  7. /*獲取映射到進程上下文的物理內存量,通過這一內存映射量可以了解ASP.NET程序在運行時需要多少系統物理內存,
  8. 有助于更好的規劃我們的整個應用,因為物理內存量是以Byte為單位的,
  9. 所以我們將此數值除以1024,可以得到單位為KB的物理內存量*/ 
  10. qMo = (Environment.WorkingSet/1024).ToString();  
  11. //獲取當前目錄(即該進程從中啟動的目錄)的完全限定路徑  
  12. qCurDir = Environment.CurrentDirectory.ToString();  
  13. //獲取主機的網絡域名  
  14. qDomName = Environment.UserDomainName.ToString();  
  15. //獲取系統啟動后經過的毫秒數  
  16. qTick = Environment.TickCount;   
  17. //計算得到系統啟動后經過的分鐘數  
  18. qTick /= 60000;  
  19. //獲取機器名  
  20. qMachine = Environment.MachineName;  
  21. //獲取運行當前進程的用戶名  
  22. qUser = Environment.UserName;  
  23. /*檢索此計算機上格式為"﹤驅動器號﹥:\"的邏輯驅動器的名稱,返回字符串數組,這是下一步操作的關鍵所在*/ 
  24. achDrives = Directory.GetLogicalDrives();  
  25. //獲取此字符串數組的維數,確定有多少個邏輯驅動器  
  26. nNumOfDrives = achDrives.Length;  
  27. }  

ASP.NET虛擬主機之文件系統操作隱患在系統信息不需要進行操作,我們簡單的用asp:Label將他們顯示出來就行了。邏輯驅動器的個數在不同的服務器上是不定的,所以用不定長數組保存邏輯驅動器的名稱,而且邏輯驅動器的名稱也是我們下一步瀏覽目錄和文件的基礎,故我們采用了數據網格DataGrid來顯示和處理它。

顯示和處理邏輯驅動器名稱的DataGrid的代碼(代碼在listdrivers.aspx文件):

  1. ﹤asp:DataGrid id="Drivers﹥Grid" runat="server" AutoGenerateColumns="false"﹥  
  2. ﹤Columns  
  3. ﹤asp:BoundColumn HeaderText="ID" DataField="ID" /﹥  
  4. ﹤asp:BoundColumn HeaderText="磁盤名" DataField="Drivers" /﹥  
  5. ﹤asp:HyperLinkColumn  
  6. HeaderText="詳細信息"   
  7. DataNavigateUrlField="Drivers" DataNavigateUrlFormatString="listdir.aspx?dir={0}"   
  8. DataTextField="Detail"   
  9. Target="_new" /﹥  
  10. ﹤/Columns﹥  
  11. ﹤/asp:DataGrid﹥  

前兩個BoundColumn列都是顯示序號和實際邏輯驅動器名稱的,需要說明的是第三列,我們在進入各個邏輯驅動器顯示目錄和文件之前需要將所選擇的邏輯驅動器的名稱傳遞到顯示目錄的文件去,所以需要一個特殊的超級鏈接行HyperLinkColumn,我們將DataNavigateUrlField設置為數據源中要綁定到 HyperLinkColumn 中的超級鏈接的 URL 的字段,在此即邏輯驅動器名稱。然后將DataNavigateUrlFormatString設置為當 URL 數據綁定到數據源中的字段時,此HyperLinkColumn中的超級鏈接的 URL 的顯示格式,即要鏈接到的下一級處理頁面,在此為listdir.aspx?dir={用戶點擊行的邏輯驅動器名稱}

ASP.NET虛擬主機之文件系統操作隱患的相關信息就向你介紹到這里,希望對此你有所了解。

【編輯推薦】

  1. ASP.NET編程中日期與時間的處理淺析
  2. ASP.NET編程之實現彈窗報警提示淺析
  3. ASP.NET調用存儲過程的含義及好處
  4. ASP.NET應用程序資源訪問安全模型淺析
  5. ASP.NET虛擬主機的重大安全隱患
責任編輯:仲衡 來源: iwms
相關推薦

2009-07-27 16:14:29

ASP.NET虛擬主機

2009-07-27 16:30:11

ASP.NET虛擬主機

2009-07-27 16:23:55

ASP.NET虛擬主機

2009-07-27 15:59:34

ASP.NET虛擬主機

2009-07-27 15:44:32

ASP.NET虛擬主機

2009-07-21 15:34:32

ASP.NET 2.0

2009-07-21 10:49:26

ASP.NET虛擬文件

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設計

2009-08-03 13:38:18

ASP.NET編程模型

2009-08-05 18:36:12

ASP.NET Che

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 15:50:13

ASP.NET優點

2009-07-31 12:43:59

ASP.NET MVC

2009-07-21 10:05:10

ASP.NET配置文件

2009-07-31 11:45:42

ASP.NET文件下載

2009-07-20 16:09:39

2009-07-27 17:00:29

ASP.NET主機

2009-07-28 10:26:30

ASP.NET操作Ex

2009-08-03 11:21:47

ASP.NET編程模型

2009-08-10 14:38:29

ASP.NET組件設計
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品免费看 | 91看片网 | av大片在线观看 | 91精品国产乱码久久久 | 久久国产精品一区二区三区 | 日本a v在线播放 | 久久黄网 | 羞羞视频网页 | 国产精品视频专区 | 国产精品一区二区三区四区 | 欧美一级特黄aaa大片在线观看 | 国产精品高清一区二区三区 | 成人在线视频免费观看 | 91免费版在线观看 | 国产精品成人品 | 草草视频在线播放 | а√中文在线8 | 在线播放国产一区二区三区 | 亚洲精品久久久久久久久久久 | 日韩一区二区三区视频 | 亚洲精品视频在线看 | 狠狠草视频 | 91精品国产高清久久久久久久久 | 中文字幕国产精品 | 成人三区四区 | 日本在线一区二区 | 中文字幕成人av | 草久久 | 欧美电影免费观看高清 | 6080yy精品一区二区三区 | 国产成人免费观看 | 视频一区二区中文字幕 | 色天天综合 | 午夜精品久久久久久久久久久久久 | 精品一级 | 国产农村妇女毛片精品久久麻豆 | 天天干夜夜操 | 国产成在线观看免费视频 | 国产一区二区麻豆 | 亚洲国产成人精品在线 | 欧美日本韩国一区二区三区 |