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