SlideShare a Scribd company logo
Chương 9

   Cấu hình ứng dụng
    trong ASP.NET
Mục đích
    Machine.Config
    eb.Config
    Cấu trúc của một tập tin cấu hình
    Bảo mật trang Web dùng chứng thực
Web Pages – Web
     Application
     Web Page
      Web Page
         Web Page
          Web Page
            Web Page
                                  WEB APPLICATION
             ---------
             ---------

   Ứng dụng Web bao gồm nhiều trang Web
   Thiết lập các thuộc tính cho ứng dụng sẽ tác động lên tất
    cả các trang
   Thiết lập thuộc tính sẽ kiểm soát ứng dụng trong thời gian
    thực thi  cấu hình ứng dụng ASP.NET
Tập tin cấu hình
   Tất cả cấu hình được lưu trong tập tin web.config, và
    lưu trong thư mục gốc của ứng dụng
   web.config là một tập tin HTML


    <configuration>
           <system.web>
                  <sessionState timeout=”20” />
           </system.web>
    </configuration>

ASP.NET cung cấp tập tin cấu hình để tùy biến web site 
cung cấp sự linh động cho các ứng dụng Web
Đặc trưng của tập tin cấu hình
   Lưu trữ dạng văn bản
   Viết trong XML, quy tắc gán qua tên thẻ và
    thuộc tính
   Không cần khởi động server khi thay đổi tập
    tin
   Các các thư mục khi đè tập tin cấu hình
    trước đó
   Client không thể xem nội dung của nó từ
    trình duyệt
Quy tắc đặt tên thẻ
         Kiểu thẻ                   Quy tắc

Thẻ và thuộc tính    Camel-cased




Giá trị thuộc tính   Pascal-case : ngoại trù giá trị true,
                     false.
Các kiểu tập tin cấu hình
    Machine.config
 Mô tả cấu hình cho tất cả ứng dụng trên Server
                                       Build number
Dựa trên XML                           of .net CLR

 Lưu trữ trong C:WinNTMicrosoft.NETFrameworkv.1.xxxxconfig

 Chỉ một tập tin cho một cài đặt ASP.NET trên một máy

     Web.config
 Thiết lập được áp dụng cho từng ứng dụng web trên server
 Dựa trên XML lưu trữ trong thư mục ứng dụng Web của Web
Server
 Một tập tin cho mỗi thư mục của ứng dụng Web
Các kiểu tập tin cấu hình…




                     One per machine



   Web
Applications         One per
                      application
                     Override settings
                      of machine.config
Cấu trúc của tập tin cấu hình
   Tập tin cấu hình bao hàm tất cả các thẻ bên trong thẻ
    configuration, nếu không đúng định dạng, trình biên dịch
    sẽ ném ra một biệt lệ
   Thuộc tính cấu hình của máy được thiết lập giữa các thẻ
    này
   Bên trong các thẻ configuration, thông tin cấu hình được
    nhóm thành 2 loại:
       Mục khai báo trình quản lý mục cấu hình
       Vùng thiết lập vùng cấu hình
   Mục cấu hình được định nghĩa giữa thẻ
    <configSections> và </configSections>
   Các mục đơn được định nghĩa dùng thẻ <section>.
Kiểu tập tin Web.config
<configuration>
  <configSections>
    <section name="sectionSettings" type="Class" />
    <sectionGroup name="sectionGroup">
    <section name="sectionSettings" type="Class" />
    </sectionGroup>
  </configSections>
  <section name=”sectionSettings” type=<Class>” />
  <sectionGroup>
      <sectionSettings attribute="someValue" />
      <sectionSettings SomeAttribute=”SomeValue”>
          <element attribute=”value”/>
      </sectionSettings>
   </sectionGroup>
</configuration>
Khai báo trình quản lý mục cấu hình
    Định nghĩa một lớp (thường là một lớp dựa
     trên .Net) dùng để diễn giải dữ liệu cấu hình
    Mục cấu hình được đặt trong the
     <configSections>
    Thông thường mục này được đặt trong tập tin
     Machine.Config, và không cần đặt trong mỗi tập
     tin Web.Config, nó sẽ được kế thừa tự động
Vùng thiết lập vùng cấu hình
   Định nghĩa các thiết lập thật sự cho một số tùy
    chọn
   Chứa trình quản lý các mục mà mã cấu hình
    được viết
   Mỗi trình quản lý mục được nhóm trong
    <sectionGroup>, cung cấp một cấu trúc cho
    tập tin cấu hình
   Có khoảng 30 thiết lập cấu hình khác nhau định
    nghĩa trong tập tin Machine.config
Thiết lập cấu hình cho trang
 Cho phép các nhà phát triển kiểm soát một số hành vi mặc định cho
  tất cả các trang ASP.NET trong ứng dụng hay máy

  <configuration>
         <system.web>
           <pages buffer=”true”
                   enableViewState=”false”                 />
         </system.web>
  </configuration>
 Thuộc tính                       Mô tả                          Giá trị mặc
                                                                      định
Buffer        Các hồi báo đến client được gởi trực tiếp hay đầu True
              tiên được cache trên server rồi gởi
enableView    Cho phép ViewState                                True
  State
Thiết lập ứng dụng Application
   Được đặt trong thẻ <appSettings> và </appSettings>.
   Cho phép người dùng thiết lập cấu hình ứng dụng chi tiết
   Thiết lập ứng dụng cho phép lưu trữ và lấy thông tin theo cặp key-
    value
   Nó cũng có thể lưu trữ truy vấn SQL


<configuration>
  <appSettings>
    <add key=”MySQLQuery” value=”Select * FROM MySQLTable”/>
  </appSettings>
</configuration>
...
String GetQuery = Configuration.AppSettings (“MySQLQuery”);
...
Thiết lập biên dịch
    Dùng để chỉ ra các tùy chọn biên dịch cần thiết khi biên dịch các tập tin nguồn
     ứng dụng
    Tham chiếu các thư viện yêu cầu trong suốt quá trình biên dịch có thể được chỉ
     ra ở đây
    Nó cũng có thể chỉ ra ứng dụng đang chạy trong chế độ debug

     Thuộc tính          Tùy                           Mô tả
                          chọn
    Debug                          Chỉ ra kiểu biên dịch


                      true         debug binaries.
                      false        retail binaries.

    defaultLanguage                Danh sách các ngôn ngữ dùng trong quá trình
                                     biên dịch động các tập tin. Ví dụ: "C#; VB".
Cấu hình thiết lập biên dịch
<configuration>
  <system.web>
     <compilation
     debug=“false"
     defaultLanguage=”C#”/>
  </system.web>
</configuration>
Thẻ con của thẻ Compilation
              <assemblies> sub-tag
             <add>                  <clear>
                       <remove>
<configuration>
  <system.web>
    <compilation
    debug=“true” defaultLanguage=“C#”>
      <assemblies>
         <add assembly="System.Data" />
      </assemblies>
    </compilation>
  </system.web>
</configuration>
Thẻ con của thẻ Compilation

          <namespaces> sub-tag

<configuration>
  <system.web>
    <compilation
    debug=“true” defaultLanguage=“C#”>
      <namespaces>
         <add namespace=“System.Web.UI” />
      </namespaces>
    </compilation>
  </system.web>
</configuration>
Thẻ con của thẻ Compilation
                 <compilers> sub-tag
<compilers> dùng để chỉ ra trình biên dịch và ngôn ngữ dùng để tạo ứng
dụng
Thiết lập customErrors
   ASP.NET cung cấp cơ chế linh động để tùy biến các
    trang lỗi và điều hướng trình duyệt client khi lỗi xảy ra
   Trang lỗi có thể được thiết kế để hiển thị hay giải thích
    thông tin lỗi thân thiện hơn với người dùng


Cú pháp:

<customErrors
    defaultRedirect="url"
    mode="On|Off|RemoteOnly">
    <error statusCode="statuscode" redirect="url“/>
</customErrors>
customErrors Ví dụ
<configuration>
  <system.web>
     <customErrors      defaultRedirect= "http://
localhost/Appdir/allErrors.aspx"
     mode="RemoteOnly">
        <error statusCode="404"
        redirect=" http:// localhost/ Appdir/
ErrorNo404.aspx"/>
     </customErrors>
  </system.web>
</configuration>
Authentication
Tiến trình xác định người dùng và mật khấu của người dùng 
Authentication. Thiết lập này co thể được chỉ ra trong tập tin web.config.

<configuration>
  <system.web>
    <authentication mode="Windows|Forms|Passport|None">

        <forms name="name" loginUrl="url"
           protection="All|None|Encryption "
           timeout="xx" path="/" >
            <credentials passwordFormat="Clear|SHA1|MD5">

                <user name="username" password="password" />

           </credentials>
        </forms>
      <passport redirectUrl="internal"/>
Kiểu Authentication
WINDOWS    Chỉ ra kiểu chứng thực Windows là
           kiểu chứng thực mặc định, dùng cho
           bất cứ dạng chứng thực nào của IIS


FORMS      Chỉ ra chứng thực dựa trên form



           Dùng Passport
PASSPORT
           Không chứng thực dùng bởi người
NONE       dùng anonymous users và ứng dụng
           cung cấp chứng thực riêng
Thuộc tính của thẻ <forms>
Để chứng thực Form, kiểu chứng thực phải được chỉ ra là Forms, các thẻ con có
các đặc tính sau:

Đặc tính     Tùy chọn     Mô tả
Name         None         Tên Cookie dùng cho chứng thực
LoginUrl     None         Trang URL đăng nhập. Client đổi hướng đến tran này
                          nếu không có chứng thực cookie
protectio    Encryption   Cookie được lưu trữ theo dạng mã hóa
n
             Validation   Kiểm tra hợp lệ scheme nội dung của cookie mã
                          hóa đã được cảnh báo trước khi truyền
             ALL          Ứng dụng dùng cả hai kiểm tra hợp lệ và mã hóa
                          cookie
             None         Ứng dụng cấm cả hai kiểm tra hợp lệ và mã hóa cookie
Thuộc tính của thẻ <forms>
Đặc tính   Tùy chọn   Mô tả
timeout               Thời gian theo phút sau khi chứng thực hết hạn, mặc
                      định là 30.
path                  Đường dẫn của cookies ban hành bởi ứng dụng. Mặc
                      định là backslash (/)
Forms Authentication Ví
   dụ
<configuration>
  <system.web>
    <authentication mode="Forms">
      <forms name="MainForm"
loginUrl="LoginPage.aspx"
        protection="None" timeout="60">
       <credentials passwordFormat="Clear">
         <user name="User1" password="user1!"/>
         <user name="User2" password="user2@"/>
         <user name="User3" password="user3#"/>
       </credentials>
      </forms>
    </authentication>
  </system.web>
</configuration>
Authorization
   Sau khi thiết lập chứng thực cho ứng dụng,
    quyền truy xuất cần được gán cho ai được phép
    truy cập ứng dụng Authorization
   Dùng thiết lập Authorization, người dùng được
    xác nhận thật sự truy cập WebSite



<authorization>
      <allow users=“<userList>” />
      <deny users=“<userList>” />
</authorization>
Authorization Ví dụ
<configuration> <system.web>
    <authentication mode="Forms">
      <forms name="MainForm” loginUrl="LoginPage.aspx"
        protection="None" timeout="60">
        <credentials passwordFormat="Clear">
          <user name="User1" password="user1!"/>
          <user name="User2" password="user2@"/>
          <user name="User3" password="user3#"/>
        </credentials>
       </forms>
    </authentication>
    <authorization>
          <allow users=”User2, User3” />
          <deny users=”User1” />
    </authorization>
  </system.web> </configuration>

More Related Content

DOC
Qtu.vn sql - chuong 5
PDF
Lap trinh-joomla-15-theo-mo-hinh-mvc
DOC
Bao cao detai
DOCX
Tài liệu Zend Framework 2 - Cài đặt và cấu hình Zend Framework 2 - Bài 2
PDF
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
PDF
Zend Framework 2 - Thao tác Database trong Zend Framework 2 - Bài 8
PPTX
Wp hoi-thao-phan-quyen
PDF
Sao lưu & phục hồi database SQL Server | zBackup.vn
Qtu.vn sql - chuong 5
Lap trinh-joomla-15-theo-mo-hinh-mvc
Bao cao detai
Tài liệu Zend Framework 2 - Cài đặt và cấu hình Zend Framework 2 - Bài 2
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
Zend Framework 2 - Thao tác Database trong Zend Framework 2 - Bài 8
Wp hoi-thao-phan-quyen
Sao lưu & phục hồi database SQL Server | zBackup.vn

What's hot (11)

PDF
Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPT
PPT
PDF
Tài liệu Zend Framework 2 : Thêm dữ liệu vào database trong ZF2 - Bài 10
PDF
Tài liệu Hướng Dẫn Sử Dụng Sugarcrm (v 6.3.0) trên Linux (ubuntu)
PDF
Bài 5 Hướng dẫn xây dựng Extension
PDF
TÀI LIỆU HƯỚNG DẪN ĐÓNG GÓI MODULE MAGENTO 1.7
PDF
template magento
PDF
Giáo trình Zend Framework 2.0 - Nhúng template vào ứng dung ZF2 (P3) - Bài 7
DOCX
Sức mạnh của jsf 2, phần 3 xử lý sự kiện, java script và ajax
PDF
Zend Framework 2.0: Upload file và Multi upload files trong ZF2 - Bài 9
PDF
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPT
Tài liệu Zend Framework 2 : Thêm dữ liệu vào database trong ZF2 - Bài 10
Tài liệu Hướng Dẫn Sử Dụng Sugarcrm (v 6.3.0) trên Linux (ubuntu)
Bài 5 Hướng dẫn xây dựng Extension
TÀI LIỆU HƯỚNG DẪN ĐÓNG GÓI MODULE MAGENTO 1.7
template magento
Giáo trình Zend Framework 2.0 - Nhúng template vào ứng dung ZF2 (P3) - Bài 7
Sức mạnh của jsf 2, phần 3 xử lý sự kiện, java script và ajax
Zend Framework 2.0: Upload file và Multi upload files trong ZF2 - Bài 9
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT

Viewers also liked (20)

PDF
Pp no 17_th_2005
PDF
2010년 3월 업종별 리포트 _ 금융 업종
PDF
Announcements, 10/24/10
PPT
Maven – The build paraphernalia
PDF
You've Got A Friend Slides, 7/10/11
PDF
Building A Great Life II Slides, 2/3/13
PDF
Announcements, 2/3/13
PPTX
Fake or true
PDF
Telemedicine market research
PDF
A Life of Mission Slides, 10/24/10
PDF
2010년 4월 온라인 광고&미디어 동향 보고서
PDF
Heart of The Law 1 Slides, 8/16/15
PDF
Our Roots Slides, 6/7/15
PDF
2010년 2월 업종별 리포트 _ 금융 업종
PPT
Facebook marketing: Penrith
PDF
Announcements, 6/2/13
PDF
최신 타이틀로 알아보는 MMORPG 트렌드
PDF
Advent Conspiracy 4 Slides, 12/18/11
Pp no 17_th_2005
2010년 3월 업종별 리포트 _ 금융 업종
Announcements, 10/24/10
Maven – The build paraphernalia
You've Got A Friend Slides, 7/10/11
Building A Great Life II Slides, 2/3/13
Announcements, 2/3/13
Fake or true
Telemedicine market research
A Life of Mission Slides, 10/24/10
2010년 4월 온라인 광고&미디어 동향 보고서
Heart of The Law 1 Slides, 8/16/15
Our Roots Slides, 6/7/15
2010년 2월 업종별 리포트 _ 금융 업종
Facebook marketing: Penrith
Announcements, 6/2/13
최신 타이틀로 알아보는 MMORPG 트렌드
Advent Conspiracy 4 Slides, 12/18/11

Similar to Ung dung web chuong 9 (20)

PDF
Aspnet 3.5_03
PDF
Aspnet 3.5 _04
PDF
Aspnet 3.5 -06
PDF
Asp.net mvc framework qua cac vi du
PDF
Asp control
DOC
Hướng dẫn lập trình với SCSF phần I (smart client software factory)
DOC
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
DOC
400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2
PDF
Bảo mật ứng dụng ASP.NET
PDF
Lập trình web asp.net MVC
PDF
Giao trinh asp.ne_tvoi_csharp
PDF
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
PDF
Giáo trình asp.net với c sharp
PDF
PDF
Bai2 tong quan_mvc_0567
PPT
PPTX
Introdution to magento vietnamese
PPTX
Mvc 3
PDF
Devexpress cho asp.net
PPT
Ung dung web chuong 5
Aspnet 3.5_03
Aspnet 3.5 _04
Aspnet 3.5 -06
Asp.net mvc framework qua cac vi du
Asp control
Hướng dẫn lập trình với SCSF phần I (smart client software factory)
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2
Bảo mật ứng dụng ASP.NET
Lập trình web asp.net MVC
Giao trinh asp.ne_tvoi_csharp
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Giáo trình asp.net với c sharp
Bai2 tong quan_mvc_0567
Introdution to magento vietnamese
Mvc 3
Devexpress cho asp.net
Ung dung web chuong 5

More from Giang Nguyễn (20)

PDF
Php can ban_bai1_laptrinhwebphp.com
PDF
Os xmldomphp
PDF
Os php-7oohabits
PDF
Os php-5.3new1
PDF
Lap trinh web dong voi php my sql
PDF
Kentcources 110109221507-phpapp01
PDF
Php day4
PDF
Hay php architect eav modeling
PDF
Haiphongit.com.tai lieu-php.my sql-thiet-ke-web-dong
PDF
Haiphongit.com.tai lieu-laptrinh ph-pvamysql
PDF
Chuong07 php
PDF
Bai th08 php voi csdl
PDF
Haiphongit.com.tai lieu-learning-php-my sql
PDF
Hd lap pttkht2008
PDF
Joomla administratormanual vi_20060206
PDF
Canbanvethietkevalaptrinhgame
PDF
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
PDF
Eclipse pdt indigo release review
PDF
Bai tap lap trinh web voi joomla csau
Php can ban_bai1_laptrinhwebphp.com
Os xmldomphp
Os php-7oohabits
Os php-5.3new1
Lap trinh web dong voi php my sql
Kentcources 110109221507-phpapp01
Php day4
Hay php architect eav modeling
Haiphongit.com.tai lieu-php.my sql-thiet-ke-web-dong
Haiphongit.com.tai lieu-laptrinh ph-pvamysql
Chuong07 php
Bai th08 php voi csdl
Haiphongit.com.tai lieu-learning-php-my sql
Hd lap pttkht2008
Joomla administratormanual vi_20060206
Canbanvethietkevalaptrinhgame
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
Eclipse pdt indigo release review
Bai tap lap trinh web voi joomla csau

Recently uploaded (20)

PDF
Bản phân loại thực vật môn thực vật dược
PDF
Public economy và vai trò trong phân bổ nguồn lực, cung cấp hàng hóa công, đi...
DOCX
Bài tập trăc nghiệm vận tốc. tốc độ trong chuyển động thẳng
PPTX
Bài 9.4 TUYẾN SINH DỤC NAM VÀ NU CẤU TẠO VÀ CHỨC NĂNG
PPTX
Direct Marketing- chieu thi truyen thong
PPTX
Chương 2 - Mô hình thực thể kết hợp.pptx
DOCX
2024-2025 HSG HÓA 12 CỤM LẦN 3 - Hải Dương - đề.docx
PPTX
17. ĐẠI CƯƠNG GÃY XƯƠNG bệnh học ngoại.pptx
PPTX
Giáo án Lý Luận Chung về Hành chính Nhà nước cập nhật mới....
DOCX
6.CQ_KT_Ke toan tai chinh 2_Pham Thi Phuong Thao.docx
PDF
Dao tao va Phat trien NỘI DUNG ÔN THI CHO SINH VIÊN
PPTX
b44_nhiem_zf_tinhjjjjjjjjjjjjjjjjjj.pptx
PPTX
Chương 1 – Tổng quan về Cơ sở dữ liệu.pptx
PPTX
TIẾT 11. BÀI 32 DINH DƯỠNG VÀ TIÊU HÓA Ở NGƯỜI.pptx
PDF
BÁO CÁO THỰC TẬP KỸ SƯ 2 ĐỀ TÀI TÌM HIỂU QUY TRÌNH CÔNG NGHỆ SẢN XUẤT BÁNH SN...
PPTX
SLIDE BV CHÍNH THỨC LATSKH - note.pptx
PDF
12894-44864-1-CE-1037-1038_Văn bản của bài báo.pdf
PPTX
White and Purple Modern Artificial Intelligence Presentation.pptx
PPTX
14. thoát vị bẹn nghẹt bệnh học ngoại khoa.pptx
DOC
Chương 1 Tính tương đổi của chuyển động.doc
Bản phân loại thực vật môn thực vật dược
Public economy và vai trò trong phân bổ nguồn lực, cung cấp hàng hóa công, đi...
Bài tập trăc nghiệm vận tốc. tốc độ trong chuyển động thẳng
Bài 9.4 TUYẾN SINH DỤC NAM VÀ NU CẤU TẠO VÀ CHỨC NĂNG
Direct Marketing- chieu thi truyen thong
Chương 2 - Mô hình thực thể kết hợp.pptx
2024-2025 HSG HÓA 12 CỤM LẦN 3 - Hải Dương - đề.docx
17. ĐẠI CƯƠNG GÃY XƯƠNG bệnh học ngoại.pptx
Giáo án Lý Luận Chung về Hành chính Nhà nước cập nhật mới....
6.CQ_KT_Ke toan tai chinh 2_Pham Thi Phuong Thao.docx
Dao tao va Phat trien NỘI DUNG ÔN THI CHO SINH VIÊN
b44_nhiem_zf_tinhjjjjjjjjjjjjjjjjjj.pptx
Chương 1 – Tổng quan về Cơ sở dữ liệu.pptx
TIẾT 11. BÀI 32 DINH DƯỠNG VÀ TIÊU HÓA Ở NGƯỜI.pptx
BÁO CÁO THỰC TẬP KỸ SƯ 2 ĐỀ TÀI TÌM HIỂU QUY TRÌNH CÔNG NGHỆ SẢN XUẤT BÁNH SN...
SLIDE BV CHÍNH THỨC LATSKH - note.pptx
12894-44864-1-CE-1037-1038_Văn bản của bài báo.pdf
White and Purple Modern Artificial Intelligence Presentation.pptx
14. thoát vị bẹn nghẹt bệnh học ngoại khoa.pptx
Chương 1 Tính tương đổi của chuyển động.doc

Ung dung web chuong 9

  • 1. Chương 9 Cấu hình ứng dụng trong ASP.NET
  • 2. Mục đích  Machine.Config  eb.Config  Cấu trúc của một tập tin cấu hình  Bảo mật trang Web dùng chứng thực
  • 3. Web Pages – Web Application Web Page Web Page Web Page Web Page Web Page WEB APPLICATION --------- ---------  Ứng dụng Web bao gồm nhiều trang Web  Thiết lập các thuộc tính cho ứng dụng sẽ tác động lên tất cả các trang  Thiết lập thuộc tính sẽ kiểm soát ứng dụng trong thời gian thực thi  cấu hình ứng dụng ASP.NET
  • 4. Tập tin cấu hình  Tất cả cấu hình được lưu trong tập tin web.config, và lưu trong thư mục gốc của ứng dụng  web.config là một tập tin HTML <configuration> <system.web> <sessionState timeout=”20” /> </system.web> </configuration> ASP.NET cung cấp tập tin cấu hình để tùy biến web site  cung cấp sự linh động cho các ứng dụng Web
  • 5. Đặc trưng của tập tin cấu hình  Lưu trữ dạng văn bản  Viết trong XML, quy tắc gán qua tên thẻ và thuộc tính  Không cần khởi động server khi thay đổi tập tin  Các các thư mục khi đè tập tin cấu hình trước đó  Client không thể xem nội dung của nó từ trình duyệt
  • 6. Quy tắc đặt tên thẻ Kiểu thẻ Quy tắc Thẻ và thuộc tính Camel-cased Giá trị thuộc tính Pascal-case : ngoại trù giá trị true, false.
  • 7. Các kiểu tập tin cấu hình Machine.config  Mô tả cấu hình cho tất cả ứng dụng trên Server Build number Dựa trên XML of .net CLR  Lưu trữ trong C:WinNTMicrosoft.NETFrameworkv.1.xxxxconfig  Chỉ một tập tin cho một cài đặt ASP.NET trên một máy Web.config  Thiết lập được áp dụng cho từng ứng dụng web trên server  Dựa trên XML lưu trữ trong thư mục ứng dụng Web của Web Server  Một tập tin cho mỗi thư mục của ứng dụng Web
  • 8. Các kiểu tập tin cấu hình…  One per machine Web Applications  One per application  Override settings of machine.config
  • 9. Cấu trúc của tập tin cấu hình  Tập tin cấu hình bao hàm tất cả các thẻ bên trong thẻ configuration, nếu không đúng định dạng, trình biên dịch sẽ ném ra một biệt lệ  Thuộc tính cấu hình của máy được thiết lập giữa các thẻ này  Bên trong các thẻ configuration, thông tin cấu hình được nhóm thành 2 loại:  Mục khai báo trình quản lý mục cấu hình  Vùng thiết lập vùng cấu hình  Mục cấu hình được định nghĩa giữa thẻ <configSections> và </configSections>  Các mục đơn được định nghĩa dùng thẻ <section>.
  • 10. Kiểu tập tin Web.config <configuration> <configSections> <section name="sectionSettings" type="Class" /> <sectionGroup name="sectionGroup"> <section name="sectionSettings" type="Class" /> </sectionGroup> </configSections> <section name=”sectionSettings” type=<Class>” /> <sectionGroup> <sectionSettings attribute="someValue" /> <sectionSettings SomeAttribute=”SomeValue”> <element attribute=”value”/> </sectionSettings> </sectionGroup> </configuration>
  • 11. Khai báo trình quản lý mục cấu hình  Định nghĩa một lớp (thường là một lớp dựa trên .Net) dùng để diễn giải dữ liệu cấu hình  Mục cấu hình được đặt trong the <configSections>  Thông thường mục này được đặt trong tập tin Machine.Config, và không cần đặt trong mỗi tập tin Web.Config, nó sẽ được kế thừa tự động
  • 12. Vùng thiết lập vùng cấu hình  Định nghĩa các thiết lập thật sự cho một số tùy chọn  Chứa trình quản lý các mục mà mã cấu hình được viết  Mỗi trình quản lý mục được nhóm trong <sectionGroup>, cung cấp một cấu trúc cho tập tin cấu hình  Có khoảng 30 thiết lập cấu hình khác nhau định nghĩa trong tập tin Machine.config
  • 13. Thiết lập cấu hình cho trang Cho phép các nhà phát triển kiểm soát một số hành vi mặc định cho tất cả các trang ASP.NET trong ứng dụng hay máy <configuration> <system.web> <pages buffer=”true” enableViewState=”false” /> </system.web> </configuration> Thuộc tính Mô tả Giá trị mặc định Buffer Các hồi báo đến client được gởi trực tiếp hay đầu True tiên được cache trên server rồi gởi enableView Cho phép ViewState True State
  • 14. Thiết lập ứng dụng Application  Được đặt trong thẻ <appSettings> và </appSettings>.  Cho phép người dùng thiết lập cấu hình ứng dụng chi tiết  Thiết lập ứng dụng cho phép lưu trữ và lấy thông tin theo cặp key- value  Nó cũng có thể lưu trữ truy vấn SQL <configuration> <appSettings> <add key=”MySQLQuery” value=”Select * FROM MySQLTable”/> </appSettings> </configuration> ... String GetQuery = Configuration.AppSettings (“MySQLQuery”); ...
  • 15. Thiết lập biên dịch  Dùng để chỉ ra các tùy chọn biên dịch cần thiết khi biên dịch các tập tin nguồn ứng dụng  Tham chiếu các thư viện yêu cầu trong suốt quá trình biên dịch có thể được chỉ ra ở đây  Nó cũng có thể chỉ ra ứng dụng đang chạy trong chế độ debug Thuộc tính Tùy Mô tả chọn Debug Chỉ ra kiểu biên dịch true debug binaries. false retail binaries. defaultLanguage Danh sách các ngôn ngữ dùng trong quá trình biên dịch động các tập tin. Ví dụ: "C#; VB".
  • 16. Cấu hình thiết lập biên dịch <configuration> <system.web> <compilation debug=“false" defaultLanguage=”C#”/> </system.web> </configuration>
  • 17. Thẻ con của thẻ Compilation <assemblies> sub-tag <add> <clear> <remove> <configuration> <system.web> <compilation debug=“true” defaultLanguage=“C#”> <assemblies> <add assembly="System.Data" /> </assemblies> </compilation> </system.web> </configuration>
  • 18. Thẻ con của thẻ Compilation <namespaces> sub-tag <configuration> <system.web> <compilation debug=“true” defaultLanguage=“C#”> <namespaces> <add namespace=“System.Web.UI” /> </namespaces> </compilation> </system.web> </configuration>
  • 19. Thẻ con của thẻ Compilation <compilers> sub-tag <compilers> dùng để chỉ ra trình biên dịch và ngôn ngữ dùng để tạo ứng dụng
  • 20. Thiết lập customErrors  ASP.NET cung cấp cơ chế linh động để tùy biến các trang lỗi và điều hướng trình duyệt client khi lỗi xảy ra  Trang lỗi có thể được thiết kế để hiển thị hay giải thích thông tin lỗi thân thiện hơn với người dùng Cú pháp: <customErrors defaultRedirect="url" mode="On|Off|RemoteOnly"> <error statusCode="statuscode" redirect="url“/> </customErrors>
  • 21. customErrors Ví dụ <configuration> <system.web> <customErrors defaultRedirect= "http:// localhost/Appdir/allErrors.aspx" mode="RemoteOnly"> <error statusCode="404" redirect=" http:// localhost/ Appdir/ ErrorNo404.aspx"/> </customErrors> </system.web> </configuration>
  • 22. Authentication Tiến trình xác định người dùng và mật khấu của người dùng  Authentication. Thiết lập này co thể được chỉ ra trong tập tin web.config. <configuration> <system.web> <authentication mode="Windows|Forms|Passport|None"> <forms name="name" loginUrl="url" protection="All|None|Encryption " timeout="xx" path="/" > <credentials passwordFormat="Clear|SHA1|MD5"> <user name="username" password="password" /> </credentials> </forms> <passport redirectUrl="internal"/>
  • 23. Kiểu Authentication WINDOWS Chỉ ra kiểu chứng thực Windows là kiểu chứng thực mặc định, dùng cho bất cứ dạng chứng thực nào của IIS FORMS Chỉ ra chứng thực dựa trên form Dùng Passport PASSPORT Không chứng thực dùng bởi người NONE dùng anonymous users và ứng dụng cung cấp chứng thực riêng
  • 24. Thuộc tính của thẻ <forms> Để chứng thực Form, kiểu chứng thực phải được chỉ ra là Forms, các thẻ con có các đặc tính sau: Đặc tính Tùy chọn Mô tả Name None Tên Cookie dùng cho chứng thực LoginUrl None Trang URL đăng nhập. Client đổi hướng đến tran này nếu không có chứng thực cookie protectio Encryption Cookie được lưu trữ theo dạng mã hóa n Validation Kiểm tra hợp lệ scheme nội dung của cookie mã hóa đã được cảnh báo trước khi truyền ALL Ứng dụng dùng cả hai kiểm tra hợp lệ và mã hóa cookie None Ứng dụng cấm cả hai kiểm tra hợp lệ và mã hóa cookie
  • 25. Thuộc tính của thẻ <forms> Đặc tính Tùy chọn Mô tả timeout Thời gian theo phút sau khi chứng thực hết hạn, mặc định là 30. path Đường dẫn của cookies ban hành bởi ứng dụng. Mặc định là backslash (/)
  • 26. Forms Authentication Ví dụ <configuration> <system.web> <authentication mode="Forms"> <forms name="MainForm" loginUrl="LoginPage.aspx" protection="None" timeout="60"> <credentials passwordFormat="Clear"> <user name="User1" password="user1!"/> <user name="User2" password="user2@"/> <user name="User3" password="user3#"/> </credentials> </forms> </authentication> </system.web> </configuration>
  • 27. Authorization  Sau khi thiết lập chứng thực cho ứng dụng, quyền truy xuất cần được gán cho ai được phép truy cập ứng dụng Authorization  Dùng thiết lập Authorization, người dùng được xác nhận thật sự truy cập WebSite <authorization> <allow users=“<userList>” /> <deny users=“<userList>” /> </authorization>
  • 28. Authorization Ví dụ <configuration> <system.web> <authentication mode="Forms"> <forms name="MainForm” loginUrl="LoginPage.aspx" protection="None" timeout="60"> <credentials passwordFormat="Clear"> <user name="User1" password="user1!"/> <user name="User2" password="user2@"/> <user name="User3" password="user3#"/> </credentials> </forms> </authentication> <authorization> <allow users=”User2, User3” /> <deny users=”User1” /> </authorization> </system.web> </configuration>