การพิสูจน์ตัวตนเว็บโดยใช้ PKI Certs


14

ฉันเข้าใจ PKI ค่อนข้างดีจากมุมมองแนวคิด - เช่นกุญแจส่วนตัว / กุญแจสาธารณะ - คณิตศาสตร์ที่อยู่เบื้องหลังการใช้แฮชและการเข้ารหัสเพื่อลงนามใบรับรองการลงนามในธุรกรรมหรือเอกสารดิจิทัลเป็นต้นฉันยังทำงานในโครงการที่ openssl ไลบรารี C ถูกใช้กับ certs สำหรับการรักษาความปลอดภัยการสื่อสารและการพิสูจน์ตัวตน ฉันคุ้นเคยอย่างมากกับเครื่องมือบรรทัดคำสั่ง openssl

อย่างไรก็ตามฉันมีประสบการณ์น้อยมากเกี่ยวกับโครงการที่เปิดใช้งาน PKI บนเว็บดังนั้นฉันจึงพยายามออกแบบและกำหนดรหัสโครงการส่วนบุคคลเพื่อทำความเข้าใจกับสิ่งนี้ให้ดีขึ้น

ความต้องการ

นี่คือเว็บไซต์สำหรับธนาคาร ผู้ใช้บริการธนาคารทางอินเทอร์เน็ตทั้งหมดได้รับอนุญาตให้ใช้ใบรับรองใด ๆ ที่ออกโดย CA ที่รู้จักไม่กี่ (verisign, Thawte, entrust เป็นต้น) ธนาคารจะไม่รับผิดชอบต่อการจัดหาใบรับรองสำหรับผู้ใช้ ใบรับรองเหล่านี้จะใช้สำหรับการรับรองความถูกต้องไปยังเว็บไซต์ของธนาคาร แพลตฟอร์ม / ระบบปฏิบัติการ ฯลฯ ยังคงไม่ได้รับการแก้ไข

ออกแบบ

ฉันสงสัยว่าอะไรคือวิธีที่ดีที่สุดในการตรวจสอบสิทธิ์

  1. ฉันเห็นว่า Apache มีวิธีเปิดใช้งาน 2 วิธี ssl - ในกรณีนี้ฉันคิดว่าการนำทางไปยังเว็บไซต์จะขอใบรับรองจากผู้ใช้โดยอัตโนมัติ แต่ฉันไม่แน่ใจว่านี่เพียงพอหรือไม่เพราะดูเหมือนว่าทุกอย่างจะถูกตรวจสอบหรือไม่ว่าใบรับรองนั้นได้รับการลงนามโดย CA ที่เชื่อถือได้หรือไม่และอาจอยู่ในรายการสีขาวของหัวเรื่องของใบรับรอง ฯลฯ แต่นี่ไม่เพียงพอ สำหรับกรณีธนาคารเนื่องจากคุณต้องเชื่อมโยง bankuserid กับใบรับรอง

  2. IIS ดูเหมือนจะมีวิธีที่ฉันสามารถมีใบรับรองที่เก็บไว้สำหรับผู้ใช้แต่ละรายใน Active Directory นี่คือสิ่งที่ฉันเข้าใจจากการอ่านบทความ MSDN ไม่กี่ คุณเปิด SSL แบบ 2 ทางใน IIS จากนั้นเมื่อผู้ใช้พยายามนำทางไปยังเว็บไซต์ IIS จะส่งคำขอไปยังเบราว์เซอร์พร้อมกับรายการ CA ที่อนุมัติแล้วและเบราว์เซอร์จะอนุญาตให้ผู้ใช้เลือกใบรับรองที่เหมาะสมจากใบรับรองของเขา เพื่อแบ็กเอนด์ ฉันสมมติว่า IIS จะทำ 2 สิ่ง

    • ตรวจสอบให้แน่ใจว่าผู้ใช้มีรหัสส่วนตัวที่สอดคล้องกับใบรับรอง (โดยอยู่ภายใต้การเจรจาปะหน้า)
    • ตามการแมปใบรับรองผู้ใช้โฆษณา IIS จะรายงานชื่อผู้ใช้ไปยังแอปพลิเคชัน
  3. ทำการตรวจสอบความถูกต้องโดยการเรียกฟังก์ชั่น crypto แทนที่จะขึ้นอยู่กับเว็บเซิร์ฟเวอร์ที่จะทำ

    • แสดงหน้าจอผู้ใช้ที่เขาอัปโหลดใบรับรองและแอปพลิเคชันช่วยให้มั่นใจว่าผู้ใช้มีรหัสส่วนตัวที่สอดคล้องกับใบรับรอง (โดยขอให้ส่วนหน้าลงนามสตริงบางส่วนโดยใช้ใบรับรอง)
    • แอปพลิเคชั่นนี้มีฐานข้อมูลบางส่วนที่เก็บไว้ซึ่งทำให้ผู้ใช้แต่ละคนสามารถแมปกับหมายเลขผู้ใช้ของเขาได้ นี่อาจเป็น
    • ใบรับรองทั้งหมดที่สอดคล้องกับหมายเลขผู้ใช้แต่ละคน
    • CA และหมายเลขซีเรียลใบรับรองที่สอดคล้องกับ id ผู้ใช้แต่ละราย

ฉันสงสัยว่าวิธีใดที่ใช้กันทั่วไป? อะไรคือการปฏิบัติที่ดีที่สุด? ถ้าฉันจะไปกับ # 3 วิธีที่ดีที่สุดในการทำเช่นนี้คืออะไร?

สิ่งที่สามารถใช้งานกับแอพสมาร์ทโฟนได้อย่างง่ายดายจะเป็นโบนัสเพิ่มเติม

ปรับปรุง

ให้ฉันชี้แจงคำสั่งของฉัน "รหัสส่วนการตรวจสอบตัวเอง" เพราะคำตอบบางอย่างดูเหมือนจะบ่งบอกว่ามันถูกเข้าใจผิด - ฉันไม่ดีเพราะไม่ชัดเจน

นี่ไม่ได้หมายความว่าฉันจะเขียน crypto เอง มันหมายถึงว่าฉันจะเรียกรูทีน crypto อย่างชัดเจนแทนที่จะขึ้นอยู่กับ IIS หรือเว็บเซิร์ฟเวอร์อื่น ๆ โดยปริยาย


ที่เกี่ยวข้อง: security.stackexchange.com/questions/34897/…
Adi

@adnan - ฉันได้เขียนเกี่ยวกับ "SSL ร่วมกับ Apache" ในคำถามของฉันและทำไมมันไม่ทำงานสำหรับฉัน
user93353

1
ทำไมต้องลงคะแนน? หากบุคคลนั้นสามารถแสดงความคิดเห็นว่ามีอะไรผิดปกติกับคำถาม - ฉันสามารถลองปรับปรุงได้
user93353

ใช่ฉันเห็นมัน. ฉันไม่ได้พูดแบบนี้ซ้ำฉันแค่บอกว่ามันเกี่ยวข้อง ข้อมูลเพิ่มเติมสำหรับผู้อ่านคำถามของคุณ
Adi

@Adnan - OK - ฉันแค่เป็นห่วงคนอาจดูลิงค์และลงคะแนนเพื่อปิดคำถามของฉันเป็นซ้ำ :-)
user93353

คำตอบ:


9

ในขณะที่ฉันต้องการที่จะตอบปัญหาโดยปัญหาฉันคิดว่าฉันจะตีหัวข้อนี้ตามหัวข้อ:

/ การตรวจสอบการอนุมัติ

ตกลงสิ่งแรกก่อน สำหรับตัวอย่างของคุณคุณต้องการทั้งคู่:

  • การพิสูจน์ตัวตน - พิสูจน์ว่าผู้ใช้คือคนที่เขาบอกว่าเขาเป็น คุณได้เลือก PKI โดยมีการพิสูจน์นัยของไพรเวตคีย์เป็นการพิสูจน์ตัวตนของคุณ
  • การอนุญาต - การเชื่อมต่อของผู้ใช้กับสิ่งที่เขาได้รับอนุญาตให้ทำ นี่คือจุดเชื่อมต่อระหว่างการเข้าสู่ระบบและการเข้าถึงบัญชีที่อนุญาต การแมปใบรับรองกับบัญชีและความสามารถในการเข้าถึงบัญชีคือการอนุญาต

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

SSL, การพิสูจน์ตัวตนของไคลเอ็นต์ / เซิร์ฟเวอร์, หลักฐานการใช้คีย์ส่วนตัว

โปรโตคอล SSL จะรวมการตรวจสอบความถูกต้องของเซิร์ฟเวอร์เสมอด้วยการตั้งค่าเพิ่มเติมสำหรับการอนุญาตด้านไคลเอ็นต์ คุณอยู่ในอันดับที่ 1 ใน Apache ที่ให้การตั้งค่าที่เพิ่มการรับรองความถูกต้องไคลเอ็นต์โดย PKI และคุณสามารถจัดเตรียมด้วยรายการ CA ที่เชื่อถือได้ ระหว่างการตั้งค่าเซสชัน SSL ที่ต้องใช้การรับรองความถูกต้องไคลเอ็นต์ผ่าน PKI คุณจะได้รับหลักฐานการใช้ไพรเวตคีย์

ตัวเลือก # 1 หรือตัวเลือก # 2 จะให้สิ่งนี้ - ทั้ง Apache และ IIS สามารถกำหนดค่าได้ด้วยวิธีนี้ การปฏิบัติที่ดีที่สุดที่ชาญฉลาดฉันจะใช้เวลาอย่างใดอย่างหนึ่งมากกว่ากลิ้งโซลูชั่นของคุณเอง # 3 เข้ามาใกล้กับกฎ "อย่าเขียน crypto ของคุณอย่างน่ากลัว" สมมติว่าคุณสามารถผูกธุรกรรมของคุณเข้ากับเซสชัน SSL ที่ผ่านการตรวจสอบความถูกต้องแล้วก็ไม่มีเหตุผลที่คุณจะต้องจัดการเอง

นอกจากนี้ - ในตัวเลือก # 1 หรือตัวเลือก # 2 มีวิธีรับใบรับรองทั้งหมดและจากที่นั่นไปยังส่วนใดส่วนหนึ่งของใบรับรอง โดยทั่วไปหัวเรื่อง DN และ / หรือหมายเลขซีเรียลของใบรับรองใช้เพื่อระบุตัวตนของผู้ใช้เพื่อวัตถุประสงค์ในการให้สิทธิ์

ในแง่ของ "การใช้งานทั่วไป" - เว็บเซิร์ฟเวอร์ที่สำคัญทั้งหมดเป็นเรื่องธรรมดา IIS, Apache, Tomcat และอื่น ๆ อีกมากมายสามารถกำหนดค่าด้วยไคลเอ็นต์รับรองความถูกต้อง SSL การตัดสินใจขึ้นอยู่กับการดำเนินงานโดยรวมเป็นส่วนใหญ่ เว็บเซิร์ฟเวอร์หลักทุกคนมีวิธีเข้าถึงใบรับรองที่ระบุในเซสชัน SSL ซึ่งเป็นสิ่งที่คุณต้องการสำหรับการตรวจสอบรายละเอียดเพิ่มเติม

ส่วนเสริมการตรวจสอบใบรับรอง

อย่างน้อยคุณจะต้อง:

  • ตั้งค่าเซสชัน SSL
  • ดึงใบรับรอง (เว็บเซิร์ฟเวอร์ส่วนใหญ่จะตรวจสอบลายเซ็นของผู้รับรองและหลักฐานของรหัสส่วนตัว)
  • ตรวจสอบวันที่ที่ถูกต้องของใบรับรอง (ไม่ใช่ที่ได้รับจากเว็บเซิร์ฟเวอร์ใด ๆ )
  • ดำเนินการตรวจสอบการอนุญาตสำหรับบัญชีที่ใบรับรองนี้สามารถเข้าถึงได้

เนื่องจากธนาคารมีเงินเดิมพันสูงคุณอาจต้องการตรวจสอบสถานะการเพิกถอนใบรับรองหากรหัสส่วนตัวของผู้ใช้สูญหายหรือถูกขโมยใบรับรองของพวกเขาควรถูกเพิกถอน

IIS อาจมีตะขอสำหรับการตรวจสอบ OCSP หรือ CRL - มันมีแนวโน้มที่จะเป็นระบบที่มีความครอบคลุมมากขึ้น (จับมือ!) แต่ฉันจำไม่ได้ว่าอยู่ด้านบนของหัว ฉันยังจำไม่ได้ว่าจะบังคับให้คุณใช้ผลิตภัณฑ์ของ Microsoft เพื่อสิ่งนี้หรือไม่ สำหรับ Apache คุณต้องใช้รหัสหรือเพิ่มในการตรวจสอบ OCSP / CRL ฉันเชื่อว่ามันมีตะขอในระหว่างการสร้างเซสชัน SSL - โดยปกติการตรวจสอบนี้จะทำครั้งเดียวเมื่อตั้งค่าเซสชัน SSL

การอนุญาต

ใน # 1 vs. # 2 - คุณถูกต้องที่ IIS มีฟังก์ชันการทำงานบางอย่างที่จะผูกใบรับรองที่ให้ไว้ในเซสชัน SSL กับที่เก็บโฆษณา เป็นหนึ่งในกรณีที่ Microsoft ใช้ไมล์พิเศษเพื่อให้ง่ายต่อการซื้อและใช้งานผลิตภัณฑ์มากขึ้น :) มีความแตกต่างกับวิธีที่ IIS เชื่อมโยงกับโฆษณาที่อยู่นอกเหนือขอบเขตของคำถามนี้และนอกเหนือจากความทรงจำของฉันทันที ฉันทำเรื่องบ้า ๆ บอ ๆ กับ IIS และ AD และความคิดทั่วไปของฉันก็คือว่าในขณะที่คุณกำลังทำอะไรที่ค่อนข้างง่ายเหมือนกับการดึงชื่อผู้ใช้ตามใบรับรองจากที่เก็บโฆษณา - คุณอาจไม่เป็นไร เมื่อคุณได้รับปัญหาที่ซับซ้อนของการจัดเก็บข้อมูลการค้นหาโฆษณาแปลก ๆ และโดยเฉพาะอย่างยิ่งสิ่งที่บ้าคลั่ง (แต่ถูกกฎหมาย) ด้วย PKI คุณ

ด้วย IIS แม้จะยัง - คุณจะต้องมีสิ่งที่เพิ่มในโครงสร้างโฆษณาของคุณหรือที่อื่น ๆ ผูกชื่อผู้ใช้ไปยังบัญชีธนาคาร โดยทั่วไปในธนาคารผู้ใช้มีหลายบัญชี และผู้ใช้ 2 คนสามารถมีบัญชีร่วมได้ดังนั้นนี่จึงเป็นความสัมพันธ์ที่หลากหลาย

สำหรับ # 1 - ใช่คุณต้องเขียนการค้นหาของคุณเอง คุณต้องมีรหัส: - ฐานข้อมูลหรือลำดับชั้นของ LDAP ที่เชื่อมต่อใบรับรองกับผู้ใช้และผู้ใช้กับบัญชีธนาคารของผู้ใช้ ส่วนเฉพาะที่รับรองของใบรับรองคือหมายเลขซีเรียล + ผู้ออก DN บ่อยครั้งที่ Subject DN จะใช้งานได้ แต่ไม่รับประกันในทุกระบบ PKI

นั่นคือวิธีที่นักพัฒนาใช้ PKI สำหรับการตรวจสอบสิทธิ์ขั้นสูงด้วย Apache เมื่อทำงานในระบบต่าง ๆ เหล่านี้ฉันยังไม่พบกรณีการอนุญาตให้ใช้ซ้ำได้ง่ายดังนั้นฉันจึงไม่เคยเห็นว่ามันเป็นการลบที่ยิ่งใหญ่จริงๆ - ฉันจะต้องมีบางสิ่งที่พิเศษไม่เหมือนกันเนื่องจากบทบาท / สิทธิพิเศษต่าง ๆ ไม่ใช่เรื่องง่าย

นี่ดูเหมือน # 1 และ # 3 - คำแนะนำที่แข็งแกร่งของฉันคือ - ใช้ความสามารถดั้งเดิมของแอปพลิเคชัน / เว็บเซิร์ฟเวอร์ใดก็ตามที่คุณใช้เพื่อสร้างเซสชัน SSL นั่นจะช่วยให้เบราว์เซอร์สามารถตั้งค่าเซิร์ฟเวอร์ด้วยการค้นหาใบรับรองเกิดขึ้นในมาตรฐานแนวปฏิบัติที่เหมาะสม จากตรงนั้นด้วย Apache คุณจะต้องม้วนระบบการอนุญาตของคุณเอง IIS จะให้แนวคิดของ Microsoft เกี่ยวกับวิธีการทำงานให้คุณ

รู้จัก Gotchas

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

โดยเฉพาะอย่างยิ่งครั้งสุดท้ายที่ฉันทำเช่นนี้คำถามของการบังคับให้เขียนโค้ดและหมดเวลาเซสชันเป็นเรื่องใหญ่

โทรศัพท์สมาร์ท

ดี. โชค. เป็นเรื่องที่ฉันจะบอกได้ ฉันไม่ได้เป็นนักพัฒนาแอพมือถือ แต่ความประทับใจของฉันก็คือในสมาร์ทโฟนโดยเฉลี่ยการจัดการใบรับรอง PKI นั้นต่ำกว่ามาตรฐานหรือไม่มีอยู่จริง

ฉันชอบที่จะได้รับการพิสูจน์ผิด


2

ใบรับรองส่วนบุคคลทำงานได้ดีสำหรับการต่ออายุใบรับรองเป็นระยะ (ซึ่งมีกระบวนการที่ค่อนข้างแข็งแกร่งอยู่ด้านหลัง) และสามารถนำไปใช้เป็นการรับรองความถูกต้องแบบ "ไม่ใช้รหัสผ่าน" ที่ลูกค้าต้องการ

แต่ที่มันล้มเหลวคือ

  • ค่าใช้จ่ายต่อใบรับรอง
  • เข้ากันได้กับเบราว์เซอร์ที่ทันสมัย
  • ผู้ใช้ปลายทางดึงใบรับรองและจัดเก็บคีย์ส่วนตัวอย่างไม่ปลอดภัย

พึงระวังว่าใบรับรองส่วนบุคคลที่ทันสมัยที่มีการลงชื่อ sha-2 ไม่สามารถใช้งานได้กับ Safari บน iPad และเบราว์เซอร์สมัยใหม่จำนวนมาก นี่เป็นเพราะใบรับรองส่วนบุคคลไม่เคยเอาออกจริง ๆ เช่นองค์กรผู้ออกใบรับรองที่คิดว่าอาจ การออกใบรับรอง 30,000 ฉบับ (สิ่งที่เราทำ) มีค่าใช้จ่ายเท่ากันต่อหนึ่งใบรับรองเป็นโทเค็นฮาร์ดแวร์บางประเภท

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


“ ทุกวันนี้ยากที่จะหาซัพพลายเออร์ของใบรับรองส่วนบุคคล - ไม่ใช่ในประเทศของฉัน คนใช้ certs สำหรับธนาคารและการยื่นแบบแสดงรายการภาษีทางอิเล็กทรอนิกส์ ดังนั้นจึงเป็นเรื่องง่ายมากที่จะได้รับมัน ฉันเพิ่งยกตัวอย่าง CAs เช่น Thawte Verisign เพื่อให้ผู้คนเข้าใจว่าฉันกำลังพูดถึง CA ภายนอก
user93353

1

ตกลงมีหลายอย่างเกิดขึ้นที่นี่ สิ่งแรกสิ่งแรกการรับรองความถูกต้องของไคลเอ็นต์ไม่มีประโยชน์หากไม่ได้รับการสนับสนุนในจุดสิ้นสุด ดังนั้นเรามีการโพสต์ที่ดีจาก Intrepidus ครอบคลุมพื้นฐานของการตรวจสอบลูกค้าสำหรับแอพพลิเคมาร์ทโฟน

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

แนวทางปฏิบัติที่ดีที่สุดถัดไปคือการใช้ไดเรกทอรีสำหรับจัดการไคลเอ็นต์ของคุณ: การจับคู่ใบรับรอง ดังนั้นคุณจะดูโฆษณาหรือ LDAP ดังที่คุณกล่าวถึง Windows และ IIS ทำให้สิ่งนี้ราบรื่นสำหรับคุณ IIS.net มีบทสรุปที่ดีในการกำหนดค่าการทำแผนที่ใบรับรองภายใต้ IIS

หากคุณหมุนด้วย Apache สิ่งนี้ไม่ง่ายนัก ดูเหมือนว่าmod_authz_ldapจะทำแผนที่ใบรับรองลูกค้า แต่ฉันไม่ได้ทำงานกับมันเป็นการส่วนตัว

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

ฉันจะดูว่า Google และ Facebook ทำอะไรเพื่อตั้งค่าคุกกี้สำหรับอุปกรณ์ที่เชื่อถือได้เพื่อหลีกเลี่ยงปัจจัยสองประการ ฉันจะมีอุปกรณ์ใหม่รับรองความถูกต้องด้วยสองปัจจัยก่อนอนุญาตให้รับรองความถูกต้องเท่านั้นใบรับรอง

ฉันจะคิดเกี่ยวกับวิธีจัดการกับ certs ของผู้ใช้ที่ถูกเพิกถอน นี่หมายถึงการตรวจสอบรายการเพิกถอนใบรับรองภายนอก (CRL) คุณจะทำอย่างไรถ้าใบรับรองไคลเอ็นต์ไม่ได้กำหนดจุดแจกจ่าย CRL คุณตรวจสอบ CRL ทุกครั้งที่ผู้ใช้เข้าสู่ระบบหรือตามกำหนดเวลาเป็นส่วนหนึ่งของงานเนื่องจากมีแนวโน้มว่าจะมี CRL เพียงหยิบใช้

จริง ๆ แล้วสิ่งนี้ทำให้: ฉันจะรู้ได้อย่างไรว่าเชื่อถือได้ว่าใบรับรองของผู้ใช้ยังไม่ถูกบุกรุกและฉันจะเชื่อถือได้อย่างไรว่าฉันสามารถจับคู่ใบรับรอง X กับผู้ใช้ Y ได้


"สิ่งแรกสิ่งแรกการรับรองความถูกต้องของลูกค้าไม่มีประโยชน์หากไม่ได้รับการสนับสนุนในจุดสิ้นสุด" - นี่หมายความว่าอย่างไร
user93353

คำตอบส่วนใหญ่ตอบคำถามของฉันได้ทั้งหมด ฉันขอขอบคุณความพยายามในการแก้ไขปัญหาด้าน - แต่ฉันสนใจจริงๆในคำตอบที่ละเอียดยิ่งขึ้นสำหรับคำถามจริงของฉัน ฉันรู้ว่าต้องทำ OCSP / CRL แต่ไม่เกี่ยวข้องกับคำถามของฉัน วิธีการลงทะเบียนไม่ได้เป็นส่วนหนึ่งของคำถาม
user93353
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.