HOW TO: โปรแกรมประยุกต์ ASP.NET ที่ใช้ใบรับรองของไคลเอ็นต์-Side การรักษาความปลอดภัย

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 315588 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

สำหรับการรักษาความปลอดภัยขอเว็บแอพลิเค เช่นอินเทอร์เน็ตไซต์ธนาคาร คุณอาจต้องใช้การแก้ไขปัญหาเพิ่มความปลอดภัยสำหรับการรับรองความถูกต้องของผู้ใช้ไม่ใช่ผู้ใช้ชื่อและรหัสผ่านชุดข้อมูล คุณสามารถใช้ใบรับรองดิจิทัลฝั่งไคลเอ็นต์ในการตรวจสอบข้อมูลเฉพาะตัวของผู้ใช้ นอกจากนี้ คุณสามารถแมปใบรับรองดิจิทัลฝั่งไคลเอ็นต์ไปยังบัญชีของ Windows บนเซิร์ฟเวอร์ถ้าจำเป็น


ความต้องการ

รายการต่อไปนี้แสดงฮาร์ดแวร์ที่แนะนำ ซอฟต์แวร์ โครงสร้างพื้นฐานของเครือข่าย และ service pack ที่คุณต้องการ:
  • เซิร์ฟเวอร์ของ Microsoft Windows 2000 Service Pack 2
  • Microsoft Internet Explorer 6.0
  • Microsoft Visual Studio .NET
  • Microsoft Certificate Services (ถ้าคุณต้องสร้างใบรับรองของคุณเอง)
บทความนี้อนุมานว่า คุณไม่คุ้นเคยกับหัวข้อต่อไปนี้:
  • asp.net พัฒนา โดยใช้ Visual Basic หรือ Visual c#
  • การตั้งค่าคอนฟิกบริการข้อมูลทางอินเทอร์เน็ตของ Microsoft (IIS)

สร้างแอพลิเคชันเว็บ ASP.NET ที่

ในส่วนนี้ คุณต้องสร้างโปรแกรมประยุกต์ ASP.NET อย่างง่าย ในส่วนเป็นไปตาม คุณจะใช้การรับรองความถูกต้องของใบรับรองฝั่งไคลเอ็นต์การรักษาความปลอดภัยโปรแกรมประยุกต์นี้
  1. เริ่มการทำงานของ Visual Studio .NET และสร้างโครงการแอพลิเคชันเว็บ ASP.NET ใหม่ชื่อ SecureSite
  2. ลากตัวป้ายชื่อควบคุมการจากกล่องเครื่องมือลงบนแบบฟอร์มเว็บ WebForm1.aspx และจากนั้น ตั้งค่านั้นหมายเลขคุณสมบัติการgreetingLabel.
  3. ลากเป็นวินาทีป้ายชื่อควบคุมไปยัง WebForm1.aspx และจากนั้น ตั้งค่านั้นหมายเลขคุณสมบัติการcertDataLabel.
  4. เพิ่มรหัสต่อไปนี้ไปPage_Loadกระบวนงานเหตุการณ์:
    'Visual Basic
    Dim username As String
    userName = User.Identity.Name
    greetingLabel.Text = "Welcome " & userName
    Dim cert As HttpClientCertificate = Request.ClientCertificate
    If cert.IsPresent Then
    	'Get the Organization (O) field from the Subject section.
    	certDataLabel.Text = cert.Get("Subject O")
    Else
    	certDataLabel.Text = "No certificate was found."
    End If
    					
    //Visual C#
    string userName;
    userName = User.Identity.Name;
    greetingLabel.Text = "Welcome " + userName;
    HttpClientCertificate cert = Request.ClientCertificate;
    if (cert.IsPresent)
        certDataLabel.Text = cert.Get("SUBJECT O");
    else
        certDataLabel.Text="No certificate was found.";
    					
  5. สร้าง และบันทึกโครงการ และจากนั้น ปิด Visual Studio
  6. เริ่มการทำงานของ Internet Explorer และจากนั้น เรียกดูเพจต่อไปนี้:
    http://localhost/SecureSite/WebForm1.aspx
    ขอให้สังเกตว่า จะแสดงหน้าต้อนรับ "สู่" และ "ไม่มีใบรับรองพบ" ข้อความ ขอให้สังเกตว่า เพจที่ไม่แสดงชื่อผู้ใช้ได้เนื่องจากมีการรับรองความถูกผู้ใช้ได้ไม่ถูกต้อง
  7. ปิด Internet Explorer

การตั้งค่าคอนฟิกเว็บเซิร์ฟเวอร์สำหรับใช้ใบรับรองการรับรองความถูกต้อง

ในส่วนนี้ กำหนดค่าโครงการ SecureSite จะใช้ใบรับรองสำหรับการรับรองความถูกต้อง เมื่อต้องการใช้ใบรับรองฝั่งไคลเอ็นต์ คุณต้องติดตั้งใบรับรองฝั่งเซิร์ฟเวอร์ คุณสามารถใช้ใบรับรองเซิร์ฟเวอร์ที่มีอยู่จากผู้มีสิทธิ์ออกใบรับรองใด ๆ หรือคุณสามารถสร้างใบรับรองฝั่งเซิร์ฟเวอร์กับ Microsoft Certificate Services


เมื่อต้องการสร้างการร้องขอใบรับรองเอ็นต์เซิร์ฟเวอร์

  1. ในการเริ่มการทำงานเมนู ให้ชี้ไปที่โปรแกรมชี้ไปที่เครื่องมือการดูแลระบบแล้ว คลิกโปรแกรมจัดการบริการอินเทอร์เน็ต.
  2. ขยายโหนดสำหรับเซิร์ฟเวอร์ของคุณ และจากนั้น คลิกเว็บไซต์ที่มีค่าเริ่มต้น.
  3. ในการการทำงาน (Action)เมนู คลิกคุณสมบัติ.
  4. ในการความปลอดภัยของไดเรกทอรีแท็บ คลิกใบรับรองเซิร์ฟเวอร์. ทำตามขั้นตอนเหล่านี้ในตัวช่วยสร้าง:
    1. คลิกถัดไปบนหน้าแรกของวิซาร์ด
    2. ในการใบรับรองเซิร์ฟเวอร์หน้า คลิกสร้างใบรับรองใหม่แล้ว คลิกถัดไป.
    3. ในการการร้องขอล่าช้า หรือ Immediateหน้า คลิกเตรียมการร้องขอในขณะนี้ แต่ส่งในภายหลังแล้ว คลิกถัดไป.
    4. ในการชื่อและการตั้งค่าการรักษาความปลอดภัยหน้า ยอมรับการตั้งค่าเริ่มต้น และจากนั้น คลิกถัดไป.
    5. ในการรายละเอียดขององค์กรหน้า ชนิดmsdnสำหรับองค์กร พิมพ์วิธีการใช้วัสดุสำหรับองค์กร แล้วคลิกถัดไป.
    6. ในการชื่อทั่วไปที่ไซต์ของคุณหน้า ชนิดlocalhostแล้ว คลิกถัดไป.
    7. ในการข้อมูลทางภูมิศาสตร์หน้า พิมพ์ประเทศของคุณ ภูมิภาค และรายละเอียดเมือง และคลิกถัดไป.
    8. ในการชื่อแฟ้มการร้องขอใบรับรองหน้า ยอมรับชื่อแฟ้มเริ่มต้น (โดยปกติ c:\certreq.txt), และจากนั้น คลิกถัดไป.
    9. ในการข้อมูลสรุปของแฟ้มที่ร้องขอหน้า ยืนยันว่า รายละเอียดทั้งหมดถูกต้อง แล้วจากนั้น คลิกถัดไป.
    10. คลิกเสร็จสิ้นเมื่อต้องการปิดตัวช่วยสร้าง
  5. เปิดแฟ้มใบรับรองที่ถูกสร้าง และคัดลอกเนื้อหาของแฟ้มใบรับรองทั้งหมดไปยังคลิปบอร์ด

เมื่อต้องการส่งการร้องขอใบรับรองเอ็นต์เซิร์ฟเวอร์

  1. เริ่มการทำงานของ Internet Explorer และจากนั้น เรียกดูเพจต่อไปนี้:
    http://localhost/CertSrv
    หมายเหตุ:: ต้องติดตั้ง Certificate Services Microsoft
  2. ทำตามขั้นตอนเหล่านี้ในตัวช่วยสร้าง:
    1. คลิกการร้องขอใบรับรองแล้ว คลิกถัดไป.
    2. ในการเลือกชนิดของการร้องขอหน้า คลิกการร้องขอขั้นสูงแล้ว คลิกถัดไป.
    3. ในการการร้องขอใบรับรองขั้นสูงหน้า คลิกส่งการร้องขอใบรับรองที่ใช้แฟ้ม PKCS #10 base64 ที่เข้ารหัสแล้ว คลิกถัดไป.
    4. ในการส่งการร้องขอที่บันทึกไว้หน้า คลิกในนั้นการร้องขอใบรับรองการเข้ารหัส Base64 (PKCS #10 หรือ#7)กล่อง แล้วกด CTRL + V คีย์ชุดการวางการร้องขอใบรับรองที่คุณคัดลอกไปยังคลิปบอร์ดไว้ก่อนหน้านี้ คลิกส่ง.
  3. ปิด Internet Explorer

เมื่อต้องการออกใบรับรองเอ็นต์เซิร์ฟเวอร์

  1. ในการเริ่มการทำงานเมนู ให้ชี้ไปที่โปรแกรมชี้ไปที่เครื่องมือการดูแลระบบแล้ว คลิกผู้ให้บริการออกใบรับรอง.
  2. ขยายโหนดสำหรับหน่วยงานจัดเก็บใบรับรองของคุณ และจากนั้น เลือกการร้องขอที่ค้างอยู่.
  3. เลือกการร้องขอใบรับรองที่คุณส่ง ในการการทำงาน (Action)เมนู ให้ชี้ไปที่งานทั้งหมดแล้ว คลิกปัญหา.
  4. ยืนยันว่า ใบรับรองที่ปรากฏในโฟลเดอร์ใบรับรองที่ออก และจากนั้น คลิกสองครั้งที่ใบรับรองเพื่อดูข้อมูลดังกล่าว
  5. ในการรายละเอียดแท็บ คลิกการคัดลอกไปยังแฟ้ม. บันทึกใบรับรองเป็นฐาน-64 ใบรับรอง x.509 แบบเพื่อ C:\Servercert.cer ที่เข้ารหัส
  6. ปิดการคุณสมบัติกล่องโต้ตอบสำหรับใบรับรอง
  7. ปิดการใช้เครื่องมือของผู้ให้บริการออกใบรับรอง

เมื่อต้องการติดตั้งใบรับรองเอ็นต์เซิร์ฟเวอร์

  1. ในการเริ่มการทำงานเมนู ให้ชี้ไปที่โปรแกรมชี้ไปที่เครื่องมือการดูแลระบบแล้ว คลิกโปรแกรมจัดการบริการอินเทอร์เน็ต.
  2. Expand the node for your server, and then clickเว็บไซต์ที่มีค่าเริ่มต้น.
  3. ในการการทำงาน (Action)เมนู คลิกคุณสมบัติ.
  4. ในการความปลอดภัยของไดเรกทอรีแท็บ คลิกใบรับรองเซิร์ฟเวอร์. Follow these steps in the wizard:
    1. คลิกถัดไปon the first page of the wizard.
    2. คลิกProcess the Pending Requestto install the certificate, and then clickถัดไป.
    3. Browse to the C:\Servercert.cer certificate file that you saved previously. คลิกถัดไปtwice, then clickเสร็จสิ้น.
  5. คลิกตกลงเมื่อต้องการปิดการคุณสมบัติกล่องโต้ตอบ

To Configure SecureSite Site for SSL and Client-Side Certificates

  1. In Internet Services Manager, select the SecureSite subweb, and view its properties.
  2. Follow these steps in the wizard:
    1. ในการความปลอดภัยของไดเรกทอรีแท็บ คลิกแก้ไขในการการสื่อสารที่ปลอดภัยส่วน
    2. เลือกการต้องให้แชนเนลที่ปลอดภัย (SSL)กล่องกาเครื่องหมาย ซึ่งช่วยให้มั่นใจว่า มีการเข้ารหัสการสื่อสารกับเว็บย่อยนี้
    3. เลือกการต้องมีใบรับรองของไคลเอ็นต์กล่องกาเครื่องหมาย ซึ่งช่วยให้มั่นใจว่า ไซต์ที่สามารถดูเฉพาะได้ โดยผู้ใช้ที่มีการติดตั้งใบรับรองฝั่งไคลเอ็นต์
    4. เลือกการการเปิดใช้งานการแมปใบรับรองของไคลเอ็นต์กล่องกาเครื่องหมาย ใช้การแมปใบรับรองของไคลเอนต์กับบัญชีผู้ใช้ของ Windows
    5. คลิกแก้ไข. ขอให้สังเกตว่า คุณสามารถแมปแต่ละใบรับรองไปยังบัญชีผู้ใช้ Windows แต่ละ หรือคุณสามารถแมปใบรับรองจำนวนมากใน Windows บัญชีเดียวกัน
    6. ในการหลายการ 1แท็บ คลิกaddเมื่อต้องการเพิ่มกฎการแมป ชื่อกฎนี้กฎสำหรับการแมปแล้ว คลิกถัดไป.
    7. คลิกใหม่เมื่อต้องการสร้างกฎใหม่ซึ่งฟิลด์ย่อย O (องค์กร) ของส่วนหัวเรื่องของใบรับรองมีเงื่อนไข "MSDN" คลิกตกลงเมื่อต้องการใช้การแม็ปผู้ใช้ ใบรับรองประกอบด้วยแอตทริบิวต์ขององค์กรของ "MSDN" ในสภาพแวดล้อมการผลิต กฎแมป stricter และมักจะ validates ผู้ออกใบรับรองรวมทั้งชื่อเรื่อง คลิกถัดไป.
    8. ในการการแมปหน้า การเลือกยอมรับใบรับรองนี้สำหรับการรับรองความถูกต้องเข้าสู่ระบบ. คลิกเรียกดูเมื่อต้องการเลือกบัญชีผู้ใช้ของ Windows ที่คุณต้องการแมป MSDN ให้ผู้ใช้ ตัวอย่างนี้ ใช้บัญชี Administrator (ในโปรแกรมประยุกต์ที่แท้จริง คุณสร้างบัญชีเฉพาะของ Windows ด้วยสิทธิ์แบบจำกัด) ตรวจสอบให้แน่ใจว่า คุณพิมพ์รหัสผ่านที่ถูกต้อง
    9. คลิกเสร็จสิ้นแล้ว ยืนยันรหัสผ่าน
  3. คลิกตกลงเมื่อต้องการปิดการแมปบัญชีกล่องโต้ตอบ
  4. คลิกตกลงเมื่อต้องการปิดการการรักษาความปลอดภัยการติดต่อสื่อสารกล่องโต้ตอบ ถ้าคุณได้รับการพร้อมท์ให้ใช้การตั้งค่าไปยังลูกแฟ้มและโฟลเดอร์ คลิกเลือกทั้งหมดแล้ว คลิกตกลง.
  5. คลิกตกลงเมื่อต้องการปิดการคุณสมบัติ SecureSiteกล่องโต้ตอบ

เมื่อต้องการตรวจสอบใช้ใบรับรองการรับรองความถูกต้อง

  1. เริ่มการทำงานของ Internet Explorer และจากนั้น เรียกดูเพจต่อไปนี้:
    https://localhost/SecureSite/WebForm1.aspx
    ขอให้สังเกตว่า คุณใช้โพรโทคอปลอดภัยล https
  2. ยืนยันว่า คุณได้รับข้อความว่า เพจนี้ต้องใช้ใบรับรองไคลเอ็นต์
  3. ปิด Internet Explorer

การติดตั้งใบรับรองของไคลเอ็นต์

ในส่วนนี้ ติดตั้งใบรับรองฝั่งไคลเอ็นต์ คุณสามารถใช้ใบรับรองจากผู้มีสิทธิ์ออกใบรับรองใด ๆ หรือคุณสามารถใช้งานบริการ Certificate Microsoft ในการสร้างใบรับรองของคุณเอง


การร้องขอใบรับรองเอ็นต์ไคลเอนต์

  1. เริ่มการทำงานของ Internet Explorer และจากนั้น เรียกดูเพจต่อไปนี้:
    http://localhost/CertSrv
  2. ทำตามขั้นตอนเหล่านี้ในตัวช่วยสร้าง:
    1. คลิกการร้องขอใบรับรองแล้ว คลิกถัดไป.
    2. ในการเลือกชนิดของการร้องขอหน้า คลิกเว็บเบราว์เซอร์ Certificateแล้ว คลิกถัดไป.
    3. พิมพ์ข้อมูลที่จำเป็น ตรวจสอบให้แน่ใจว่า คุณพิมพ์msdnในการบริษัทกล่องข้อความ
    4. คลิกส่งเมื่อต้องการดำเนินการร้องขอ
  3. ปิด Internet Explorer

เมื่อต้องการออกใบรับรองเอ็นต์ไคลเอนต์

  1. Start the Certificate Authority tool from theเครื่องมือการดูแลระบบprogram group.
  2. ขยายโหนดสำหรับหน่วยงานจัดเก็บใบรับรองของคุณ และจากนั้น เลือกการร้องขอที่ค้างอยู่.
  3. เลือกการร้องขอใบรับรองที่คุณส่ง ในการการทำงาน (Action)เมนู ให้ชี้ไปที่งานทั้งหมดแล้ว คลิกปัญหา.
  4. ยืนยันว่า ใบรับรองที่ปรากฏในโฟลเดอร์ใบรับรองที่ออก และจากนั้น คลิกสองครั้งที่ใบรับรองเพื่อดูข้อมูลดังกล่าว
  5. ในการรายละเอียดแท็บ คลิกการคัดลอกไปยังแฟ้ม. Save the certificate as a Base-64 encoded X.509 certificate to C:\Clientcert.cer.
  6. ปิดการคุณสมบัติกล่องโต้ตอบสำหรับใบรับรอง
  7. ปิดการใช้เครื่องมือของผู้ให้บริการออกใบรับรอง

เมื่อต้องการติดตั้งใบรับรองเอ็นต์ไคลเอนต์

  1. Open Windows Explorer, and double-click Clientcert.cer to view the certificate file.
  2. Follow these steps in the Certificate Import Wizard:
    1. On the first page of the wizard, clickInstall Certificateแล้ว คลิกถัดไป.
    2. เลือกการAutomatically select the certificate store based on the type of certificateกล่องกาเครื่องหมาย และจากนั้น คลิกถัดไป.
    3. คลิกเสร็จสิ้นto complete the wizard.
  3. Dismiss the confirmation message box, and then clickตกลงto close the certificate.

ตรวจสอบทำว่า งาน

In this section, you verify that client applications with certificates that specify "MSDN" as the company can view the SecureSite site. Users are mapped to the account that you specified in the mapping rule.
  1. เริ่มการทำงานของ Internet Explorer และจากนั้น เรียกดูเพจต่อไปนี้:
    https://localhost/SecureSite/WebForm1.aspx
  2. Confirm that:
    • The Web page appears.
    • The appropriate Windows account is used.
    • The organization "MSDN" is read from the certificate.

ข้อมูลอ้างอิง

For additional information about how to use Secure Sockets Layer (SSL) to secure a Web site, click the article number below to view the article in the Microsoft Knowledge Base:
298805HOW TO: Enable SSL for All Customers Who Interact with Your Web Site in Internet Information Services

คุณสมบัติ

หมายเลขบทความ (Article ID): 315588 - รีวิวครั้งสุดท้าย: 13 มกราคม 2554 - Revision: 5.0
ใช้กับ
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
Keywords: 
kbhowtomaster kbsecurity kbmt KB315588 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:315588

ให้ข้อเสนอแนะ

 

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