乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      asp.net2.0 站點登錄,導(dǎo)航與權(quán)限管理_ASP.NET_小蟲網(wǎng)絡(luò)技術(shù)學(xué)院

       荷露叮咚 2007-05-25

      asp.net2.0 站點登錄,導(dǎo)航與權(quán)限管理

       

      (一)登錄

          asp.net 2.0中,新增了許多新的功能和控件。其中,新增的登陸控件可謂使得WEB應(yīng)用的設(shè)計更加得心應(yīng)手。什么是登陸控件呢?就是我們平常在WEB應(yīng)用中經(jīng)常要用到的用戶注冊,登陸,忘記密碼,登陸后根據(jù)權(quán)限的不同而顯示不同的頁面等功能,現(xiàn)在在asp.net 2.0中都已經(jīng)可以由提供的控件來實現(xiàn)了。

        asp.net 2.0中,為了更方便創(chuàng)建和管理用戶,以及對 Web 應(yīng)用程序中的頁進行密碼保護,引進了新的框架membership。新的框架包含用于處理身份驗證和授權(quán)的新增功能,能夠同時滿足 Web 站點管理員和開發(fā)人員的需要。Web 站點管理員可以利用新的 Web 站點管理工具來創(chuàng)建新的用戶和角色,以及控制對 Web 應(yīng)用程序中頁面的訪問。Web 站點管理工具是一組預(yù)先編寫的 ASP.NET頁,不具備編程技巧的用戶可以使用它們來配置 Web 應(yīng)用程序。利用membership API,編程人員可以很方便地使用拖拉控件的方法,再加以少量的代碼,就可以完全實現(xiàn)對用戶,角色權(quán)限等的管理,還可以自定義做擴充。

      1.建立網(wǎng)站項目

      2.ASP.NET配置      

           安全設(shè)置選項被分為三部分:用戶,角色和規(guī)則。

         登錄的身份驗證可以配置為基于Forms和Windows的。

      3.使用登錄控件

      說明:用戶登錄后,顯示“退出”的提示,通過LoginStatus控件來實現(xiàn)。在控件的屬性中,有LogoutActionLogoutPageUrl兩個屬性,可以來設(shè)定注銷時是僅僅刷新當(dāng)前頁面、轉(zhuǎn)向到某個頁面或者轉(zhuǎn)向到登錄頁面。

      如何設(shè)定LoginPageUrl(登錄的頁面),運行程序時,當(dāng)按這個控件的顯示的Login鏈接時,總是轉(zhuǎn)到根文件夾下的Login.aspx,而實際的登錄文件在/Login/Login.aspx 。如何解決?

      查了下資料,原來登錄的Url是在web.config中設(shè)置的。如果是用Form驗證登錄,缺省的web.config是這樣寫的:
       
      <system.web>
         <authentication mode="Forms" />
      </system.web>
       
      需要修改成如下的樣子:
       
      <system.web>
         <authentication mode="Forms">
         <forms loginUrl="~/member/login.aspx"></forms>
       </authentication>
      </system.web>

      (二)站點導(dǎo)航

      1.三種導(dǎo)航控件

         Menu:使用一菜單顯示站點的結(jié)構(gòu)。

         TreeView:用一個可展開的樹顯示站點的結(jié)構(gòu)

         SiteMapPath:用于顯示終端用戶處于相對于站點結(jié)構(gòu)的具體位置

      2.Web.sitemap  導(dǎo)航XML文件

      <?xml version="1.0" encoding="utf-8" ?>
      <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
        <siteMapNode title="首頁" url="SiteMapTest.aspx" >
          <siteMapNode title="產(chǎn)品" roles="*">
            <siteMapNode title="Windows" url="SiteMapTest.aspx?id=windows" />
            <siteMapNode title="Office" url="SiteMapTest.aspx?id=office" />
            <siteMapNode title="Mobile Devices" url="SiteMapTest.aspx?id=mobile" />
            <siteMapNode title="Business Solutions" url="SiteMapTest.aspx?id=business" />
            <siteMapNode title="Servers" url="SiteMapTest.aspx?id=servers" />
            <siteMapNode title="Developer Tools" url="SiteMapTest.aspx?id=tools" />
            <siteMapNode title="Games and XBox" url="SiteMapTest.aspx?id=games" />
            <siteMapNode title="All Products" url="SiteMapTest.aspx?id=all" />
          </siteMapNode>
          <siteMapNode title="資源" roles="*">
            <siteMapNode title="支持" roles="*">
              <siteMapNode title="修改密碼" url="~/Login/ChangePassword.aspx" />
              <siteMapNode title="Knowledge Base" url="SiteMapTest.aspx?id=knowledge" />
            </siteMapNode>
            <siteMapNode title="Downloads" url="SiteMapTest.aspx?id=downloads" />
            <siteMapNode title="Windows Update" url="SiteMapTest.aspx?id=windowsupdate" />
            <siteMapNode title="Office Update" url="SiteMapTest.aspx?id=officeupdate" />
            <siteMapNode title="Learning Tools">
              <siteMapNode title="Training & Certification" url="SiteMapTest.aspx?id=training" />
              <siteMapNode title="Books" url="SiteMapTest.aspx?id=books" />
              <siteMapNode title="Events & Webcasts" url="SiteMapTest.aspx?id=events" />
              <siteMapNode title="Patterns & Practices" url="SiteMapTest.aspx?id=patterns" />
            </siteMapNode>
            <siteMapNode title="Community" url="SiteMapTest.aspx?id=community" />
            <siteMapNode title="Security" url="SiteMapTest.aspx?id=security" />
          </siteMapNode>
          <siteMapNode title="RSS" roles="*">
            <siteMapNode title="公司關(guān)系" url="SiteMapTest.aspx?id=relations"  />
            <siteMapNode title="RSSSite" url="~/RSS/RSSSite.aspx" />
            <siteMapNode title="Careers" url="SiteMapTest.aspx?id=careers" />
            <siteMapNode title="About this Site" url="SiteMapTest.aspx?id=about" />
          </siteMapNode>
        </siteMapNode>
      </siteMap>

      Web.sitemap文件必須包含根結(jié)點sitemap。一張站點地圖由一系列相聯(lián)系的SiteMapNode對象組成。這些SiteMapNode以一種層次方式聯(lián)系在一起。該層次包含單個根結(jié)點-它是該層中唯一的一個沒有父結(jié)點的結(jié)點,代表首頁。在該父sitemapnode結(jié)點下,可以有若干個子sitemapnode結(jié)點,分別按層次結(jié)構(gòu)代表了網(wǎng)站的各子欄目(留意一下上例中,各個子結(jié)點之間的包含關(guān)系)。

      3. 數(shù)據(jù)源SiteMapDataSource控件

      SiteMapDataSource會自動查找項目中名為Web.sitemap 一個XML文件

      (三)權(quán)限管理

          網(wǎng)站在安全性方面有一個常見的要求:特定的頁面僅允許某些成員或其他經(jīng)過身份驗證的用戶瀏覽。ASP.NET 的角色管理提供了一種方法,可以基于安全角色限制對 Web 文件的訪問。站點地圖安全性調(diào)整提供了一種同樣基于安全角色的方法來隱藏站點地圖中的導(dǎo)航鏈接。

      1. ASP.NET 網(wǎng)站配置

      1)提供程序

          可使用 SQL SERVER 2005(默認(rèn)),2000和Access數(shù)據(jù)庫存儲用戶信息。

      若要使用 SQL SERVER 2000數(shù)據(jù)庫存儲信息:

      a.SQL Server的企業(yè)管理器,創(chuàng)建一個數(shù)據(jù)庫,如為zyh;

      b.aspnet_regsqlC:\Windows\Microsoft.Net\Framework\v2.0.50215\aspnet_regsql.exe)創(chuàng)建數(shù)據(jù)庫。除在創(chuàng)建向?qū)У牡?/span>3步數(shù)據(jù)庫下拉框選擇“zyh”以外,其余各步驟皆使用默認(rèn)設(shè)置。這樣,在Sql Server 2000中會創(chuàng)建一個含有用戶表和存貯過程的完整數(shù)據(jù)庫。

       

      c.在管理工具中打開IIS,找到虛擬目錄newtest,用鼠標(biāo)右鍵點擊,然后左鍵點菜單項【屬性】、【ASP.NET】標(biāo)簽、【編輯配置】按鈕,在【常規(guī)】標(biāo)簽的【連接字符串管理器】中,點名稱【LocalSqlServer】,點【編輯】按鈕,把【連接參數(shù)】修改為相應(yīng)能夠連接到數(shù)據(jù)庫zyh的數(shù)據(jù)庫連接字符串,如“Data Source=.;Initial Catalog=zyh;Persist Security Info=True;User ID=sa;Password=12345,此后,一直點【確定】按鈕,最后到IIS管理工具界面即可。

       

      d.最后返回網(wǎng)站管理工具Web頁面,點擊安全主題,就會出現(xiàn)“使用安全設(shè)置向?qū)О床烤桶嗟嘏渲冒踩浴?#8221;鏈接和其它相關(guān)鏈接。

      2)安全設(shè)置選項被分為三部分:用戶,角色和規(guī)則。

          其中規(guī)則建立了角色對項目中文件夾的訪問權(quán)限。

      3)應(yīng)用程序配置

        可設(shè)置SMTP服務(wù)器 以供用戶通過email找回密碼。

      2. 建立登錄頁面

      3.在Web.config文件中啟用角色管理

      <system.web>
          <siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
            <providers>
              <add name="XmlSiteMapProvider"
                description="Default SiteMap provider."
                type="System.Web.XmlSiteMapProvider "
                siteMapFile="Web.sitemap"
                securityTrimmingEnabled="true" />
            </providers>
          </siteMap>

          <roleManager enabled="true" />
         
          <authentication mode="Forms">
            <forms loginUrl="~/Login/login.aspx"></forms>
          </authentication>
         
          <compilation debug="true">
            <assemblies>
              <add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
            </assemblies>
          </compilation>
        </system.web>
        <system.net>
          <mailSettings>
            <smtp from="wangyihust@163.com">
              <network host="smtp.163.com" password="passwordModify" userName="wangyihust" />
            </smtp>
          </mailSettings>
        </system.net>

      4.在Web.sitemap 文件中 加入角色權(quán)限,以顯示或隱藏相關(guān)頁面

       <siteMapNode title="RSS" roles="*">
            <siteMapNode title="公司關(guān)系" url="SiteMapTest.aspx?id=relations"  />
            <siteMapNode title="RSSSite" url="~/RSS/RSSSite.aspx" />
            <siteMapNode title="Careers" url="SiteMapTest.aspx?id=careers" />
            <siteMapNode title="About this Site" url="SiteMapTest.aspx?id=about" />
          </siteMapNode>

      其中,roles="*"表示所有人都可以看到下面的頁面,但是我們在規(guī)則中可以拒絕某些 角色的用戶看到下面的相關(guān)頁面(通過目錄權(quán)限控制)

       

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多