Làm th? nào đ? b?o đ?m m?t ASP.NET Application b?ng cách s? d?ng Windows b?o m?t

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 315736 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

ASP.NET có th? đư?c dùng cùng v?i Microsoft Internet Information Services (IIS) đ? xác th?c ngư?i dùng Web d?a trên Microsoft c?a h? Windows 2000 ho?c Windows Server 2003 thông tin đăng nh?p tài kho?n ngư?i dùng. ASP.NET th?c hi?n công c? c?ng có th? đư?c c?u h?nh m?o danh ngư?i dùng Web ho?c s? d?ng nh?n d?ng c?a s? riêng c?a nó khi nó truy c?p ngu?n tài nguyên như cơ s? d? li?u ho?c các t?p tin.


Yêu c?u

B?n c?n sau ph?n c?ng, ph?n m?m, và m?ng cơ s? h? t?ng đ? th?c hi?n các th? t?c trong bài vi?t này:
  • Windows 2000 Server Service Pack 2
  • IIS 5,0
  • Windows Server 2003 v?i IIS 6.0
  • Microsoft Internet Explorer 6.0
  • Microsoft Visual Studio.NET
B?n c?ng c?n kinh nghi?m v?i các đi?u sau đây:
  • ASP.NET phát tri?n v?i Visual Basic.NET
  • Qu?n l? IIS
  • Windows 2000 ngư?i dùng tài kho?n qu?n tr?

Làm th? nào đ? phát tri?n các trang Web

Trong th? t?c này, b?n s? t?o ra m?t đơn gi?n ASP.NET Web ?ng d?ng, mà s? đư?c b?o m?t b?ng cách s? d?ng xác th?c c?a Windows.
  1. B?t đ?u Visual Studio.NET, và sau đó t?o ra m?t th? giác m?i Cơ b?n ASP.NET Web ?ng d?ng đ?t tên là "WindowsSite."
  2. Kéo m?t đi?u khi?n nh?n t? h?p công c? lên các WebForm1.aspx Web m?u đơn, và sau đó đ?t thu?c tính ID đ?authUserPrincipalLabel.
  3. Kéo m?t ki?m soát th? hai nh?n hi?u t? h?p công c? lên các WebForm1.aspx Web m?u đơn, và sau đó đ?t thu?c tính ID đ?aspPrincipalLabel.
  4. B?m đúp WebForm1.aspx đ? xem các c?a s? m?, và sau đó thêm sau Nh?p kh?u tuyên b? trên t? khai l?p:
    Imports System.Security
    						
    Thêm m? sau vào th? t?c s? ki?n Page_Load:
    Dim authUserName As String
    Dim aspUserName As String
    authUserName = User.Identity.Name
    aspUserName = Principal.WindowsIdentity.GetCurrent.Name
    authUserPrincipalLabel.Text = "You are: " & authUserName
    aspPrincipalLabel.Text = "This page runs as: " & aspUserName
    					
  5. Xem t?p Web.config c?a d? án, và sau đó xác đ?nh v? trí cácxác th?c nguyên t?. Xác minh r?ng ch? đ? thu?c tính có giá tr? b?ng Windows.
  6. Xây d?ng và lưu d? án.
  7. Ch?y các d? án, và sau đó xác nh?n r?ng trang là hi?n th? v?i các thông báo sau:
    • Trong Windows 2000
      B?n là:
      Trang này ch?y như: DomainOrServer\ASPNET
    • Trong Windows Server 2003
      B?n là:
      Trang này ch?y như: DomainOrServer\NETWORK D?CH V?
    Lưu ? Tên ngư?i dùng c?a b?n không hi?n th? đư?c v? b?n đ? không ch?ng th?c b?i IIS; Chưa xác đ?nh ngư?i truy c?p v?n c?n hi?u l?c.
  8. B? Internet Explorer đ? ngăn ch?n các d? án.

Làm th? nào đ? vô hi?u hóa truy c?p chưa xác đ?nh ngư?i

Trong th? t?c này, b?n s? đ?t c?u h?nh IIS đ? yêu c?u Tích h?p Windows xác th?c cho các trang web WindowsSite.
  1. Gi?m thi?u Visual Studio, và sau đó b?t đ?u d?ch v? Internet Qu?n l? t? nhóm chương tr?nh công c? qu?n tr?.
  2. M? r?ng máy ch? c?a b?n và trang Web m?c đ?nh c?a m?nh, nh?p chu?t ph?i các WindowsSite Trang web, và sau đó nh?p vào Thu?c tính.
  3. Trên các B?o m?t thư m?c th? tab trong các Thu?c tính WindowsSite h?p tho?i h?p, b?m vào các Ch?nh s?a nút trong "chưa xác đ?nh ngư?i truy c?p và xác th?c control" keá tieáp.
  4. Nh?n vào đây đ? xóa các Chưa xác đ?nh ngư?i truy c?p ki?m tra h?p, xác minh r?ng các Tích h?p Windows xác th?c ki?m tra h?p ch?n và b?m Ok.
  5. Nh?p vào Ok đ? đóng nh?ng Thu?c tính WindowsSite h?p tho?i.
  6. Quay l?i Visual Studio, và sau đó ch?y các d? án. Xác nh?n r?ng trang đư?c hi?n th? b?ng thông đi?p sau đây:
    • Trong Windows 2000
      B?n là: Tên ngư?i dùng Windows
      Trang này ch?y như: DomainOrServer\ASPNET
    • Trong Windows Server 2003
      B?n là: Tên ngư?i dùng Windows
      Trang này ch?y như: DomainOrServer\NETWORK D?CH V?
    Lưu ? B?n đ? đư?c xác th?c thông qua tài kho?n Windows c?a b?n. N?u b?n có không đăng nh?p vào Windows, b?n s? có đư?c nh?c nh? cho m?t c?a s? tên ngư?i dùng và m?t kh?u.
  7. B? Internet Explorer đ? ngăn ch?n các d? án.

?y quy?n

Trong ASP.NET, nó có th? cho phép ?y quy?n cho các ?ng d?ng khi b?n th?c hi?n cài đ?t b? sung có s?n trong Web.config t?p tin. B?n có th? cho phép m?t s? ngư?i dùng nh?t đ?nh các nhóm truy c?p ho?c nh?ng b? sung thi?t đ?t. Ví d? sau đây mô t? kh? năng này. Đ? cho phép truy c?p vào t?t c? ngư?i dùng đư?c t?m th?y trong nhóm Windows NT đư?c g?i là "Ngư?i qu?n l?," s? d?ng các m? sau đây:
<configuration>
     <system.web>
       <authorization>
         <allow roles="domainname\Managers" />
         <deny users="*" />
       </authorization>
     </system.web>
   </configuration>
				
Đ? cho phép truy c?p vào ch? là m?t s? ngư?i s? d?ng, s? d?ng m? sau đây:
<configuration>
     <system.web>
       <authorization>
         <allow users="domainname\user1,domainname\user2,domainname\user3" />
         <deny users="*" />
       </authorization>
     </system.web>
   </configuration>
				
Lưu ? B?n có th? tham kh?o nhi?u vai tr? ho?c ngư?i s? d?ng khi b?n s? d?ng m?t ph?y danh sách.


Làm th? nào đ? cho phép m?o danh

Trong th? t?c này, b?n s? đ?nh c?u h?nh ?ng d?ng WindowsSite m?o danh ngư?i dùng Windows nh?ng ngư?i đang truy nh?p nó.
  1. Trong Visual Studio, xem t?p tin Web.config cho các D? án WindowsSite.
  2. Thêm các y?u t? sau đây sau khi cácxác th?c y?u t?:
    <identity impersonate = "true" />
    					
  3. Ti?t ki?m Web.config.
  4. Ch?y các d? án. Xác nh?n r?ng trang đư?c hi?n th? v?i thông báo sau (lưu ? r?ng ASP.NET th?c hi?n công c? s? s? d?ng c?a b?n Windows ch?ng truy nh?p tài nguyên trên danh ngh?a c?a b?n):
    B?n là: Tên ngư?i dùng Windows
    Trang này ch?y như: Tên ngư?i dùng Windows
  5. B? Internet Explorer đ? ngăn ch?n các d? án.

Làm th? nào đ? ch? đ?nh m?t hi?u trư?ng Custom

Trong th? t?c này, b?n s? đ?nh c?u h?nh ?ng d?ng WindowsSite s? d?ng m?t hi?u trư?ng an ninh tùy ch?nh:
  1. B?t đ?u tính năng qu?n l? máy tính t? các Hành chính công c? nhóm chương tr?nh. T?o tài kho?n ngư?i dùng m?i Windows 2000 đ?t tên là "WindowsSite," v?i m?t kh?u "m?t kh?u" (lưu ? cho dù máy ch? c?a b?n đi?u khi?n vùng, và sau đó s? d?ng ho?t đ?ng thư m?c ngư?i dùng và máy tính công c?).
  2. Nh?n vào đây đ? xóa các Ngư?i dùng ph?i thay đ?i m?t kh?u t?i đăng nh?p ti?p theo h?p ki?m.Lưu ? Hi?u trư?ng tu? ch?nh mà b?n ch?n ph?i có quy?n truy c?p đó đư?c nêu trong bài vi?t cơ s? ki?n th?c sau:
    317012 Thông báo: Quá tr?nh và yêu c?u danh tính trong ASP.NET
  3. Khi tài kho?n WindowsSite đ? đư?c t?o ra, đóng các hành chính công c? b?n s? d?ng đ? t?o ra nó.
  4. Trong Visual Studio, xem t?p tin Web.config cho các D? án WindowsSite.
  5. Ch?nh s?a các danh tính y?u t? đ? đ?c như sau:
    identity impersonate = "true"
           userName = "DomainOrServerName\WindowsSite"
           password = "password"/>
    
    nơi DomainOrServerName là m?t trong hai tên c?a Windows 2000 ho?c Windows Server c?a b?n 2003 mi?n (trong m?t môi trư?ng tên mi?n) ho?c máy tính c?a b?n (trong m?t nhóm làm vi?c environment).
  6. Ti?t ki?m Web.config.
  7. Ch?y các d? án. Xác nh?n r?ng trang đư?c hi?n th? v?i thông báo sau:
    B?n là: Tên ngư?i dùng Windows
    Trang này ch?y như: DomainOrServerName\WindowsSite
    Lưu ? Aspnet_wp.exe s? s? d?ng các c?a s? credentials mà b?n đư?c ch? đ?nh truy nh?p tài nguyên trên danh ngh?a c?a b?n.
  8. B? Internet Explorer đ? ngăn ch?n các d? án.
Lưu ? Danh tính c?a quá tr?nh impersonates m?t ngư?i s? d?ng c? th? trên m?t ch? đ? ph?i có các Ho?t đ?ng như m?t ph?n c?a h? đi?u hành đ?c quy?n.
  • Trên Windows 2000, b?i m?c đ?nh, quá tr?nh Aspnet_wp.exe ch?y dư?i tài kho?n máy tính đư?c đ?t tên theo ASPNET.
  • Trên Windows Server 2003, theo m?c đ?nh, quá tr?nh Aspnet_wp.exe ch?y dư?i m?t trương m?c máy tính đư?c đ?t tên NetworkService. Tuy nhiên, tài kho?n này không có quy?n đúng đ? m?o danh m?t ngư?i s? d?ng c? th?. B?n nh?n đư?c m?t thông báo l?i n?u b?n c? g?ng m?o danh m?t ngư?i s? d?ng c? th?.
Đ? làm vi?c xung quanh v?n đ? này, s? d?ng m?t trong các cách sau phương pháp:
  • Grant các Ho?t đ?ng như m?t ph?n c?a h? đi?u hànhđ?c quy?n tài kho?n ASPNET (ít nh?t là đ?c quy?n tài kho?n).

    Lưu ? M?c dù b?n có th? s? d?ng phương pháp này đ? làm vi?c xung quanh v?n đ?, Microsoft không khuyên b?n nên phương pháp này.
  • Thay đ?i các tài kho?n trong quá tr?nh Aspnet_wp.exe ch?y dư?i h? th?ng chi?m trong ph?n c?u h?nh <processmodel> c?a t?p Machine.config.</processmodel>
Đ? bi?t thêm chi ti?t v? quá tr?nh ASPNET, truy c?p vào các Microsoft Developer Network (MSDN) Web site sau:
http://msdn2.Microsoft.com/en-US/Library/aa291339 (VS.71) .aspx

Gi?i đáp th?c m?c

Windows b?o m?t trong m?t ASP.NET trang web có th? đư?c nâng cao hơn n?a (và ph?c t?p) b?ng cách s? d?ng NTFS t?p tin c?p phép. N?u tài kho?n Windows c?a b?n không có g? không có quy?n đ?c m?t ASP.NET Web trang, IIS s? nh?c b?n cho thay th? Windows thông tin đăng nh?p. Tương t?, n?u m?t ASP.NET trang c? g?ng truy c?p vào m?t t?p tin mà hi?u trư?ng an ninh s? d?ng b?i ASP.NET th?c hi?n công c? không có quy?n truy c?p vào, b?n s? đư?c nh?c nh?p ?y nhi?m thay th?. NTFS quy?n là m?t cách hi?u qu? đ? ki?m soát quy?n truy c?p vào ph?n ph? c?a m?t trang Web Trang web.

THAM KH?O

Đ? bi?t thêm v? vi?c s? d?ng xác th?c c?a Windows trong m?t ASP.NET trang Web, xem ASP.NET Web ?ng d?ng "B?o m?t" ch? đ? trong các .NET Framework tài li?u hư?ng d?n.

Ngoài ra, xem "xác th?c trong ASP.NET:.NET an ninh hư?ng d?n"bài báo t?i MSDN Web site sau:
http://msdn2.Microsoft.com/en-US/Library/ms978378.aspx

Thu?c tính

ID c?a bài: 315736 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
T? khóa: 
kbconfig kbhowtomaster kbinfo kbsecurity kbweb kbmt KB315736 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:315736

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com