DAT CMS

DAT CMS เป็นบริการทางเลือกที่สร้าง·เก็บรักษาใบรับรองและส่งต่อให้ตัวจัดการไคลเอนต์ เอกสารนี้อธิบายสัญญาการซิงค์ระหว่างไคลเอนต์และเซิร์ฟเวอร์ สำหรับการติดตั้งและดำเนินงาน โปรดดู คู่มือบริการ DAT CMS

การซิงค์ใบรับรอง
ไคลเอนต์
DAT CMS
ขอเวอร์ชันปัจจุบันและใบรับรอง
ตอบกลับเวอร์ชันและใบรับรอง
ตรวจสอบทั้งหมดแล้วนำไปใช้แบบอะตอมิก
requestresponse

เอนด์พอยต์ตามบทบาท

บทบาทพาธการใช้งาน
เรียกดูใบรับรองแบบเต็มGET /v1/certs?version=<n>บริการที่ออก DAT
เรียกดูใบรับรองสำหรับตรวจสอบเท่านั้นGET /v1/certs/verify-only?version=<n>บริการที่ทำเฉพาะการตรวจสอบและถอดรหัส
ลงทะเบียนใบรับรองPOST /v1/cert/{signature}/{crypto}/{propagation}/{issuance}/{ttl}ผู้ดูแลระบบหรืองานสร้างใบรับรอง

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

เคอร์เซอร์เวอร์ชัน

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

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

กฎการนำใบรับรองไปใช้

  • หาก cid เดียวกันซ้ำกันในการตอบกลับ ให้ปฏิเสธการตอบกลับทั้งหมด
  • หาก cid ที่มีอยู่แล้วเหมือนกับ cid ในการตอบกลับใหม่ ให้รักษาใบรับรองเดิมไว้
  • แปลงและตรวจสอบใบรับรองทั้งหมดก่อน จากนั้นจึงนำสถานะไปใช้พร้อมกันในครั้งเดียว
  • ห้ามเหลือสถานะที่นำใบรับรองบางส่วนไปใช้สำเร็จไว้
  • เลือกใบรับรองที่เหมาะสมจากใบรับรองที่ออกได้ในเวลาปัจจุบันให้เป็นผู้ออก

การซิงค์ครั้งแรกและการซิงค์ด้วยตนเอง

โดยทั่วไปการซิงค์ครั้งแรกตอนสร้างตัวจัดการไคลเอนต์จะเป็นแบบ best-effort แม้จะล้มเหลวก็ยังสร้างตัวจัดการและเก็บข้อผิดพลาดล่าสุดที่ละเอียดไว้ หากแอปพลิเคชันต้องล้มเหลวในการเริ่มต้น ให้เรียก API ซิงค์ทันทีของแต่ละไลบรารีเพื่อส่งข้อผิดพลาดกลับไปยังผู้เรียก

สภาพแวดล้อมที่ไม่ใช้การซิงค์อัตโนมัติสามารถปิด interval และซิงค์โดยตรงในเวลาที่จำเป็นได้ หากใช้การซิงค์อัตโนมัติ ให้ปิดหรือหยุดตัวจัดการเมื่อแอปพลิเคชันปิดตัวลง

เครือข่ายและข้อผิดพลาด

ตั้งค่าเวลาหมดของการเชื่อมต่อและคำขอทั้งหมดให้เหมาะกับสภาพแวดล้อมโปรดักชัน นโยบายการเปลี่ยนเส้นทางแตกต่างกันในแต่ละรันไทม์ จึงต้องตรวจสอบเอกสารไลบรารี การตอบกลับ CMS ที่ไม่ใช่ 2xx จะถูกจัดประเภทด้วยรหัสข้อผิดพลาด DAT_CMS_* ที่ตรงกับสถานะ HTTP ในไคลเอนต์ปัจจุบัน และไม่ได้เก็บรักษารหัสข้อผิดพลาดโดยละเอียดใน JSON ของเซิร์ฟเวอร์ไว้ตามเดิม

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

เอกสารบริการ

การปรับใช้ ฐานข้อมูล โทเค็นการเข้าถึง และการกำหนดค่ารันไทม์มีอธิบายต่อใน คู่มือบริการ DAT CMS