国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Web程序安全機制

2019-11-14 15:45:40
字體:
來源:轉載
供稿:網友

  asp.net提供了一個多層的安全模型,這個模型能夠非常容易的保護Web應用程序。

  安全策略沒有必要非常復雜,但是需要應用安全策略的地方卻是非常廣泛的。程序員需要保證自己的應用程序不能被騙取,而把私有信息發送出去。

限制訪問的文件類型

  ASP.NET自動提供一個基本的安全策略來阻止對特定文件的訪問請求。ASP.NETIIS注冊這些文件類型,并把它們配置給IIS中的一個類HttpForbiddenHandler,這個類在它的生命周期中只有一個作用,就是拒絕所有向配置到它里面的文件發送請求。

  被限制訪問的文件類型如下:

    1..asax:全局文件,提供了一些在一個中心位置響應應用程序級或模塊級事件的方法。

    2..ascWeb服務文件,提供Web服務。

    3..config:配置文件,提供應用程序的配置。

    4..cs:源代碼文件,由C#編寫。

    5..csPRojC#項目文件,控制C#項目的生成。

    6..vb:源代碼文件,由VB編寫。

    7..vbprojVB項目文件,控制VB項目的生成。

    8..resx:資源文件,主要用于存儲各個版本的資源。

    9..resources:受控資源文件,可以存放位圖、子串和自定義數據等資源。

安全概念

  安全有三種最基本的概念。 

    1. 認證(Authentication):這個過程是要確定一個用戶的身份以及迫使用戶證明他們是誰。通常這些Windows用戶賬戶被存儲在一個文件或后端數據庫中。

    2. 授權(Authorization):一旦一個用戶通過認證,授權的過程就是確定用戶是否有足夠的權限來執行某一行為。通常,Windows設定授權檢測。

    3. 模擬(Impersonation):所有代碼都運行在一個固定的賬戶下,這個賬戶被定義在machine.config文件里。而模擬允許一部分代碼運行在一個不同的身份之下。授權和認證是創建一個安全網站的兩個基石。

安全策略

  IISASP.NET的安全設置可以有幾種互動的方式,在實際操作中,程序員可以把以下兩個中心策略添加到ASP.NET安全機制中:

    1. 允許無身份的用戶,使用ASP.NET表單認證模型來保證網站的安全。
    2. 禁止無身份的用戶,使用IIS認證來強迫每個用戶來使用集成的Windows認證。

  表單認證

    ASP.NET支持尖端驗證算法,這種算法使得用戶無法騙取自己的Cookie或試圖欺騙應用程序以使他們進入。

    為了實現基于表單的安全,需要按照以下三個步驟進行操作:

      1.Web.config文件里設置認證模型。

      2.限制無身份的用戶訪問應用程序中的特定頁或地址。

      3.創建一個登錄頁面。

    Web.config設置 

      可以在Web.config文件里使用<authentication>節來定義網站的安全性。

1  <configuaration>2     <system.web>3         <authentication mode=”Forms”>4             <forms name=”myCookies” loginUrl=”../Login.aspx” protection=”All” timeout=”50” path=”/” />5         </authentication>6     </system.web>7 </configuaration>
View Code

      表單認證的設置屬性:

        1.name:設置Cookie的名字,默認值為ASPXAUTH

        2.loginUrl:設置客戶端登錄頁面地址,如果用戶沒有認證就會跳轉到該地址,默認值為Default.aspx

        3.protection:設置安全Cookie的加密和驗證類型,類型的值可以是AllNoneEncryptionValidation

        4.timeout:設置Cookie失效時間。

        5.path:設置Cookie作用的路徑,默認值是“/”。

    授權規則 

      為了控制登錄網站的權限,需要在Web.config文件中的<authorization>節中設置訪問控制的規則。

1 <configuaration>2    <system.web>3         <authorization>4             <allow users=”*” />5         </authorization>6     </system.web>7 </configuaration>
View Code

    設置限制性規則

      為了禁止任何用戶都能訪問應用程序,需要設置一種更具有限制性的規則。

1 <configuaration>2     <system.web>3         <authorization>4             <allow users=”?” />5         </authorization>6     </system.web>7 </configuaration>
View Code

    控制進入特定的目錄地址

      應用程序設計通常把文件放在一個單獨的需要認證的文件目錄中,使用ASP.NET配置文件可以很輕松地完成這些設置。可以在Web.config文件<authorization>節中進行嚴格的安全目錄設置,這樣應用程序就會簡單地拒絕所有無身份的用戶。

1 <configuaration>2     <system.web>3         <authorization>4             <deny users=”?” />5       </authorization>6     </system.web>7 </configuaration>
View Code

    限制特定的用戶 

      使用<allow>節可以設置允許訪問應用程序的用戶列表,而使<deny>節可以設置拒絕訪問應用程序的用戶列表。

1 <authorization>2     <deny users=”?”/>3     <deny users=”admi,shine”/>4     <deny users=”light”/>5     <allow users=”*”>6 </authorization>
View Code

    控制進入特定的文件

      通常,通過目錄設置文件訪問權限是最簡潔和最容易的方式,然而,程序員也可以使用<location>標記來限制特定文件的訪問。

 1 <configuration> 2     <system.web> 3         <authorization> 4             <allow users=”*” /> 5         </ authorization > 6     </system.web > 7     <location path=”Page1.aspx”> 8         <system.web> 9             <authorization>10                 <deny users=”?”>11             </authorization >12         </system.web>13     </location>14 </configuration>
View Code

  Windows認證

    采用Windows認證,IIS將要掌管認證過程,如果虛擬目錄采用默認的設置,用戶就會被授權在無身份的IUSER_[ServerName]賬戶之下,但是當使用Windows認證時,必須強迫用戶在他們被允許進入網站的安全內容之前登錄IIS

    用戶登錄的信息可以采用幾種方式來轉化,但是最終的結果是通過使用一個本地Windows賬戶來認證用戶。通常情況下,這使得Windows認證成為最適合互聯網的方案,其中,一組數量有限的已知用戶被注冊在一臺網絡服務器上。

    為了對已知的用戶實行基于Windows的安全策略,需要遵循以下步驟:

      1.Web.config文件里設置認證模型。

      2.采用授權規則拒絕所有無身份的用戶訪問 網站。

      3.在服務器上配置Windows用戶賬戶。

    IIS設置

      為了設置拒絕無身份用戶的進入 ,需設置IIS

    Web.config設置

      一旦采用適當的虛擬目錄安全設置,就應該在Web.config文件里把認證模式配置為Windows認證。在一個VS.NET項目中,默認的認證模式是Windows認證,示例代碼如下:

1 <configuration>2     <system.web>3         <authentication mode=”Windows”/>4     </system.web>5 </configuration>
View Code

      可以使用<allow><deny>元素來說明允許或限制用戶去訪問特定的文件或目錄。也可以通過roles屬性來限制某一類型的用戶,這些用戶具有相同的Windows組提供的賬戶。

1 <authentication>2         <deny users=”?”/> 3         <allow roles=”Administrator,Light”/>4         <deny users=”light”/>5 </authentication>
View Code

      如果使用Windows認證。必須用明確的語法說明用戶的域名或服務器。

      默認的Windows角色:

        1.AccountOperator:負責管理一臺計算機或域內用戶賬戶的用戶。

        2.Administrator:完全和不受限制進入計算機或域的用戶。

        3.BackupOperator:用來備份操作的用戶。

        4.Guest:具有用戶角色但有更多的限制的用戶。

        5.PowerUser:同Administrator相似但帶有一些限制的用戶。

        6.PrintOperator:負責打印機的用戶。

        7.Replicator:在一個域內負責文件復制的用戶。

        8.SystemOperator:同Administrator相似但帶有一些限制的用戶。

        9.User:不能更改系統設置的用戶,但可以使用系統。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双鸭山市| 大姚县| 淳安县| 库车县| 股票| 永修县| 焦作市| 靖江市| 长武县| 朝阳县| 榆树市| 肇东市| 郧西县| 广河县| 遵化市| 高淳县| 舞钢市| 平舆县| 张掖市| 荔波县| 香格里拉县| 茶陵县| 化德县| 柘荣县| 呼玛县| 庄河市| 金山区| 海安县| 灵台县| 庆阳市| 昌江| 巴南区| 海丰县| 富民县| 平凉市| 石首市| 新绛县| 水富县| 涡阳县| 上林县| 延长县|