พอร์ตโฟลิโอ API สามารถเติบโตได้เร็วกว่าความสามารถขององค์กรในการรักษาความสอดคล้องกันได้ ทีมหนึ่งใช้รูปแบบการตั้งชื่อที่แตกต่างจากอีกทีมหนึ่ง ความเป็นเจ้าของไม่ชัดเจน ข้อมูลประจำตัวปรากฏในตัวอย่างที่ใช้ร่วมกัน การเข้าถึงยังคงอยู่หลังจากที่ผู้คนเปลี่ยนบทบาท และเอกสารก็ล้าหลังการนำไปใช้งานจริง
ธรรมาภิบาล API (API governance) มอบวิธีการที่ทำซ้ำได้ให้กับองค์กรเพื่อป้องกันปัญหาเหล่านั้น โดยไม่ต้องเปลี่ยนการตัดสินใจเกี่ยวกับ API ทุกครั้งให้เป็นการประชุมคณะกรรมการ
ธรรมาภิบาล API (API governance) คือระบบของสิทธิ์ในการตัดสินใจ มาตรฐาน นโยบาย กระบวนการ และหลักฐานที่ใช้ในการชี้นำ API ตลอดวงจรชีวิตของมัน มันกำหนดว่าสิ่งที่ดีมีลักษณะอย่างไร ใครเป็นผู้รับผิดชอบ ควบคุมการใช้งานที่ใด ตรวจสอบการปฏิบัติตามอย่างไร และจัดการข้อยกเว้นอย่างไร
ธรรมาภิบาลที่มีประสิทธิภาพไม่ใช่แค่รายการกฎการออกแบบเท่านั้น มันเชื่อมโยงการออกแบบ API, เอกสาร, การทดสอบ, ความเป็นเจ้าของวงจรชีวิต, การระบุตัวตน, การเข้าถึง, การปกป้องข้อมูลประจำตัว, หลักฐานการตรวจสอบ และการจัดการการเปลี่ยนแปลง เป้าหมายคือเส้นทางที่ปูไว้ซึ่งช่วยให้ทีมสร้าง API ที่น่าเชื่อถือได้เร็วขึ้น
ธรรมาภิบาล API โดยสรุป
โปรแกรมธรรมาภิบาลที่ใช้งานได้จริงตอบคำถามสี่ข้อ:
- สิ่งที่ต้องมีคืออะไร? กำหนดมาตรฐานขั้นต่ำและนโยบายสำหรับ API หรือระดับความเสี่ยงแต่ละรายการ
- ใครเป็นผู้ตัดสินใจ? มอบหมายเจ้าของ ผู้ตรวจสอบ และเส้นทางการยกระดับปัญหาที่รับผิดชอบ
- จะตรวจสอบการปฏิบัติตามได้อย่างไร? ใช้การตรวจสอบ, รายการตรวจสอบ, การควบคุมแพลตฟอร์ม, การทดสอบ และการตรวจสอบอัตโนมัติหรือที่ผู้ใช้เรียกใช้ตามความเหมาะสม
- จะเกิดอะไรขึ้นเมื่อไม่สามารถปฏิบัติตามกฎได้? บันทึกข้อยกเว้น, เจ้าของ, การควบคุมชดเชย, วันหมดอายุ และการอนุมัติ
นอกจากนี้ยังแยกแนวคิดสี่ประการที่มักถูกมองว่าใช้แทนกันได้:
| แนวคิด | วัตถุประสงค์ | ตัวอย่าง |
|---|---|---|
| นโยบาย | ระบุผลลัพธ์ที่จำเป็น | ข้อมูลประจำตัวสำหรับการใช้งานจริงจะต้องไม่ถูกจัดเก็บในรูปแบบข้อความธรรมดา (plaintext) ในคำจำกัดความ API ที่ใช้ร่วมกัน |
| มาตรฐาน | กำหนดวิธีการทำงานที่ได้รับการอนุมัติ | API REST สาธารณะทั้งหมดใช้แบบแผนการตั้งชื่อ, ข้อผิดพลาด, การกำหนดเวอร์ชัน และการแบ่งหน้าขององค์กร |
| การควบคุม | ป้องกัน ตรวจจับ หรือบันทึกความเบี่ยงเบน | นโยบายข้อมูลประจำตัวบล็อกความลับที่เป็นข้อความธรรมดา หรือตัวสแกนระบุโทเค็นที่อาจเปิดเผย |
| หลักฐาน | แสดงว่าการควบคุมทำงานหรือไม่ | ผลการตรวจสอบ, บันทึกการอนุมัติ, การตรวจสอบการเข้าถึง, รายงานการทดสอบ หรือเหตุการณ์การตรวจสอบทางปกครอง |
ธรรมาภิบาลจะทำงานได้เมื่อองค์ประกอบเหล่านี้เชื่อมโยงกัน นโยบายที่ไม่มีการควบคุมนั้นยากต่อการบังคับใช้ การควบคุมที่ไม่มีความเป็นเจ้าของทำให้เกิดข้อค้นพบที่ยังไม่ได้รับการแก้ไข หลักฐานที่ไม่มีข้อกำหนดที่ชัดเจนไม่สามารถพิสูจน์ได้ว่าความเสี่ยงที่ถูกต้องได้รับการจัดการแล้ว
ธรรมาภิบาล API เทียบกับการจัดการ API เทียบกับความปลอดภัย API
ธรรมาภิบาล API, การจัดการ API และความปลอดภัย API มีส่วนที่ทับซ้อนกัน แต่แก้ไขปัญหาที่แตกต่างกัน
| สาขาวิชา | คำถามหลัก | ขอบเขตทั่วไป |
|---|---|---|
| ธรรมาภิบาล API | กฎเกณฑ์, ความเป็นเจ้าของ และหลักฐานใดที่ควรนำไปใช้กับพอร์ตโฟลิโอ API ทั้งหมด? | สิทธิ์ในการตัดสินใจ, มาตรฐาน, การควบคุมวงจรชีวิต, ข้อยกเว้น, ธรรมาภิบาลการเข้าถึง และหลักฐาน |
| การจัดการ API | API ถูกเผยแพร่, ดำเนินการ, ตรวจสอบ และใช้งานอย่างไร? | เกตเวย์, การกำหนดเส้นทาง, ข้อจำกัดอัตรา, พอร์ทัลสำหรับนักพัฒนา, การวิเคราะห์ขณะรันไทม์ และการสมัครสมาชิก |
| ความปลอดภัย API | API, ข้อมูลประจำตัว, ข้อมูล และผู้ใช้งานได้รับการปกป้องอย่างไร? | การพิสูจน์ตัวตน, การอนุญาต, การป้องกันภัยคุกคาม, ความลับ, การทดสอบ, การเฝ้าระวัง และการตอบสนองต่อเหตุการณ์ |
ธรรมาภิบาลกำหนดความคาดหวังที่ความสามารถด้านการจัดการและความปลอดภัยช่วยนำไปใช้ ตัวอย่างเช่น ธรรมาภิบาลอาจกำหนดให้ API ที่เปิดเผยสู่ภายนอกทุกรายการต้องมีเจ้าของ, วิธีการพิสูจน์ตัวตนที่ได้รับการอนุมัติ, นโยบายการเลิกใช้ที่จัดทำเป็นเอกสาร และการบันทึกข้อมูลขณะรันไทม์ เกตเวย์ API, ระบบระบุตัวตน, แพลตฟอร์มการพัฒนา และสแต็กการสังเกตการณ์ อาจมีส่วนร่วมในการจัดหาชุดการควบคุม
ความแตกต่างนี้มีความสำคัญเมื่อเลือกเครื่องมือ แพลตฟอร์มการออกแบบและการทำงานร่วมกันสามารถควบคุมข้อกำหนด, เอกสาร, การเข้าถึงพื้นที่ทำงาน และกิจกรรมการดูแลระบบได้ ในขณะที่เกตเวย์หรือแพลตฟอร์มความปลอดภัยจะควบคุมปริมาณการรับส่งข้อมูลขณะรันไทม์ โปรแกรมระดับองค์กรโดยปกติจะเชื่อมโยงเลเยอร์เหล่านี้เข้าด้วยกัน แทนที่จะคาดหวังให้ผลิตภัณฑ์เดียวเข้ามาแทนที่ทั้งหมด ดูคู่มือที่ครอบคลุมมากขึ้นเกี่ยวกับ ความปลอดภัยในการจัดการ API และ การจัดการการเข้าถึง API สำหรับสาขาวิชาที่เกี่ยวข้องเหล่านั้น
เหตุใดธรรมาภิบาล API จึงสำคัญในระดับองค์กร
ทีมขนาดเล็กสามารถพึ่งพาข้อตกลงที่ไม่เป็นทางการได้ชั่วขณะ แนวทางนั้นจะเปราะบางเมื่อองค์กรมีหลายทีม, มี API หลายรายการ, ที่เก็บข้อมูล, สภาพแวดล้อม และผู้ใช้งานภายนอกจำนวนมาก
ธรรมาภิบาล API ช่วยองค์กรในการ:
- ลดความไม่สอดคล้องกันและงานซ้ำซ้อน มาตรฐานการออกแบบและเอกสารที่ใช้ร่วมกันทำให้ API คาดเดาได้ง่ายขึ้นสำหรับผู้ผลิตและผู้ใช้งาน
- ทำให้ความเป็นเจ้าของมองเห็นได้ชัดเจน API, นโยบาย, ข้อยกเว้น และการตัดสินใจเกี่ยวกับวงจรชีวิตแต่ละรายการมีบุคคลหรือทีมที่รับผิดชอบ
- ขยายขอบเขตการบริการตนเองสำหรับนักพัฒนา เทมเพลต, ตัวอย่าง, ส่วนประกอบที่นำกลับมาใช้ใหม่ได้ และเส้นทางการยกระดับปัญหาที่ชัดเจน ช่วยให้ทีมสามารถตัดสินใจในเรื่องประจำได้อย่างอิสระ
- ปกป้องสภาพแวดล้อมการทำงานร่วมกัน วงจรชีวิตของตัวตน, การเข้าถึงตามบทบาท, การจัดการข้อมูลประจำตัว และหลักฐานการดูแลระบบ ช่วยลดความเสี่ยงในพื้นที่ทำงาน
- ปรับปรุงความสามารถในการค้นพบและการนำกลับมาใช้ใหม่ แคตตาล็อก API ช่วยให้ทีมค้นหาความสามารถที่มีอยู่ก่อนที่จะสร้างซ้ำ
- จัดการการเปลี่ยนแปลงอย่างรอบคอบ กฎการกำหนดเวอร์ชัน, ความเข้ากันได้, การเลิกใช้ และการยุติการใช้งาน ช่วยปกป้องผู้ใช้งานจากการเปลี่ยนแปลงที่ไม่คาดคิด
- สร้างหลักฐานที่เป็นประโยชน์ ผลการควบคุม, การอนุมัติ, เหตุการณ์การตรวจสอบ และบันทึกการแก้ไข ช่วยให้ผู้ตรวจสอบเข้าใจว่าเกิดอะไรขึ้นและใครเป็นผู้ดำเนินการ
เป้าหมายไม่ใช่ความสม่ำเสมอเพื่อตัวมันเอง ธรรมาภิบาลที่ดีจะกำหนดมาตรฐานการตัดสินใจที่ควรทำซ้ำได้ ในขณะเดียวกันก็เปิดโอกาสให้ทีมผลิตภัณฑ์ทำการเลือกเฉพาะโดเมนได้
ธรรมาภิบาล API แบบรวมศูนย์หรือแบบสหพันธ์?
ทีมธรรมาภิบาลแบบรวมศูนย์สามารถกำหนดกฎที่สอดคล้องกันได้ แต่ก็อาจกลายเป็นคอขวดได้หากต้องอนุมัติการเปลี่ยนแปลง API ทุกครั้ง รูปแบบที่กระจายอำนาจอย่างเต็มที่ช่วยให้ทีมมีอิสระ แต่ก็มักจะสร้างมาตรฐานที่ขัดแย้งกันและการควบคุมความเสี่ยงที่ไม่สม่ำเสมอ
องค์กรขนาดใหญ่มักต้องการรูปแบบสหพันธ์:
- กลุ่มส่วนกลางที่ทำหน้าที่สนับสนุนหรือแพลตฟอร์มเป็นเจ้าของฐานข้อมูลพื้นฐานขององค์กร, เทมเพลตที่ใช้ร่วมกัน, การควบคุมทั่วไป และการรายงาน
- ทีมโดเมนเป็นเจ้าของ API ของตนเอง และอาจเพิ่มมาตรฐานเฉพาะโดเมนที่เข้มงวดมากขึ้น
- ผู้ดูแล API ช่วยทีมตีความกฎและแก้ไขคำถามทั่วไป
- กระบวนการข้อยกเว้นที่กำหนดไว้จะจัดการกับการเบี่ยงเบนที่ถูกต้องตามกฎหมายโดยไม่ทำให้พื้นฐานอ่อนแอลงอย่างเงียบๆ
- API ที่มีความเสี่ยงสูงจะได้รับการตรวจสอบมากกว่า API ภายในที่มีความเสี่ยงต่ำ
การรวมศูนย์เป็นมากกว่าการกระจายอำนาจการอนุมัติ การตัดสินใจที่ได้รับมอบหมายทุกครั้งยังคงต้องการเจ้าของที่ชัดเจน ชุดการควบคุมที่ได้รับการอนุมัติ และหลักฐานที่สามารถตรวจสอบได้ทั่วทั้งองค์กร
ขอบเขตการควบคุมหลักของธรรมาภิบาล API
กรอบการทำงานระดับองค์กรควรครอบคลุมวงจรชีวิตทั้งหมด แทนที่จะเน้นเฉพาะกฎรูปแบบ
| ขอบเขตธรรมาภิบาล | คำถามที่ต้องตอบ | การควบคุมและหลักฐานทั่วไป |
|---|---|---|
| รูปแบบการดำเนินงานและความเป็นเจ้าของ | ใครเป็นเจ้าของ API, มาตรฐาน, ข้อยกเว้น และการตรวจสอบ? | RACI, เจ้าของบริการที่ระบุชื่อ, การมอบหมายผู้ดูแล, เส้นทางการยกระดับปัญหา |
| พอร์ตโฟลิโอและวงจรชีวิต | มี API ใดบ้าง ใครใช้ และอยู่ในขั้นตอนใด? | รายการสินค้าคงคลัง, การจัดหมวดหมู่, สถานะวงจรชีวิต, วันที่ตรวจสอบ, บันทึกการเลิกใช้ |
| การออกแบบและสัญญา | อินเทอร์เฟซมีความสอดคล้องกัน เข้าใจง่าย และเข้ากันได้หรือไม่? | สัญญา OpenAPI, มาตรฐานการตั้งชื่อและข้อผิดพลาด, สคีมาที่นำกลับมาใช้ใหม่ได้, การตรวจสอบความเข้ากันได้ |
| เอกสารและการค้นพบ | ผู้ใช้งานสามารถเข้าใจและค้นหา API ได้หรือไม่? | คำอธิบายที่จำเป็น, ตัวอย่าง, ข้อจำกัด, คำจำกัดความการตอบกลับ, เอกสารที่เผยแพร่ |
| การทดสอบและการเผยแพร่ | API ได้รับการตรวจสอบก่อนการเผยแพร่หรือไม่? | การทดสอบสัญญา, การทดสอบฟังก์ชัน, การจำลอง, ผลการทดสอบ, เกณฑ์การเผยแพร่, การอนุมัติหรือข้อยกเว้น |
| การระบุตัวตนและการเข้าถึง | ใครสามารถเข้าร่วม, ดู, เปลี่ยนแปลง, บริหารจัดการ หรือส่งออกสินทรัพย์ API ได้? | SSO, การจัดสรรและยกเลิกการจัดสรร, RBAC, การจับคู่กลุ่ม, การตรวจสอบการเข้าถึงเป็นระยะ |
| ข้อมูลประจำตัวและข้อมูลที่ละเอียดอ่อน | ความลับถูกจัดเก็บ, อ้างอิง, ตรวจจับ และแก้ไขอย่างไร? | การอ้างอิง Vault, นโยบายข้อมูลประจำตัว, การสแกนความลับ, กระบวนการหมุนเวียน, การระบุความเป็นเจ้าของ |
| การตรวจสอบและหลักฐาน | องค์กรสามารถสร้างการกระทำทางปกครองที่สำคัญขึ้นมาใหม่ได้หรือไม่? | บันทึกการตรวจสอบทางปกครอง, การส่งออก, การสอบถาม API, บันทึกการตรวจสอบ, การเก็บรักษาหลักฐาน |
| การควบคุมซอร์สโค้ดและข้อกำหนดข้อมูล | ข้อกำหนดจัดเก็บอยู่ที่ใด และมีข้อกำหนดตำแหน่งที่ตั้งใดบ้างที่บังคับใช้? | ที่เก็บข้อมูลที่ได้รับอนุมัติ, การควบคุมสาขา, สิทธิ์ที่เก็บข้อมูล, การตรวจสอบการรวมระบบ, การประเมินถิ่นที่อยู่ |
ขอบเขตเหล่านี้ควรถูกแปลเป็นเมทริกซ์การควบคุมซึ่งประกอบด้วยวัตถุประสงค์การควบคุม, ขอบเขต, เจ้าของ, วิธีการนำไปใช้, หลักฐาน, ความถี่ในการตรวจสอบ, ขั้นตอนการยกเว้น และระดับความเสี่ยงที่เกี่ยวข้อง
วิธีสร้างกรอบการทำงานธรรมาภิบาล API
1. เริ่มต้นด้วยผลลัพธ์ทางธุรกิจและความเสี่ยง
หลีกเลี่ยงการเริ่มต้นด้วยกฎหลายร้อยข้อ เลือกผลลัพธ์จำนวนน้อยที่องค์กรต้องการ เช่น API ของคู่ค้าที่คาดเดาได้, การเปลี่ยนแปลงที่ทำให้เกิดความเสียหายลดลง, การเริ่มต้นใช้งานที่เร็วขึ้น, การจัดการข้อมูลประจำตัวที่ดีขึ้น หรือการยุติการเข้าถึงที่ตรวจสอบได้
ข้อกำหนดด้านธรรมาภิบาลแต่ละข้อควรเชื่อมโยงกับผลลัพธ์ หากกฎที่เสนอนั้นไม่มีผู้ใช้งาน, ความเสี่ยง หรือประโยชน์ในการดำเนินงานที่ระบุได้ อาจเป็นกระบวนการที่ไม่จำเป็น
2. จัดทำรายการ API และกำหนดระดับความเสี่ยง
บันทึก API ที่รู้จักทั้งหมด, เจ้าของ, ผู้ใช้งาน, การเปิดเผย, ความละเอียดอ่อนของข้อมูล, สถานะวงจรชีวิต และแหล่งที่มาของข้อมูลที่ถูกต้อง การจัดทำรายการที่ไม่สมบูรณ์ทำให้ไม่สามารถใช้การควบคุมได้อย่างสม่ำเสมอ
ใช้ระดับความเสี่ยงเพื่อหลีกเลี่ยงการปฏิบัติต่อ API ทุกรายการเหมือนกันทั้งหมด API การชำระเงินสาธารณะอาจต้องมีการตรวจสอบความเข้ากันได้ที่เป็นทางการ, หลักฐานที่เข้มงวดมากขึ้น และระยะเวลาการแก้ไขที่สั้นลง ต้นแบบภายในชั่วคราวอาจใช้พื้นฐานที่เล็กลง เกณฑ์การจัดระดับควรชัดเจนเพียงพอที่ทีมต่างๆ จะตัดสินใจได้คล้ายกัน
เชื่อมโยงรายการสินค้าคงคลังเข้ากับ ธรรมาภิบาลวงจรชีวิต API และการค้นพบ เพื่อให้ความเป็นเจ้าของและสถานะยังคงมองเห็นได้หลังจากการประเมินเบื้องต้น
3. กำหนดสิทธิ์ในการตัดสินใจ
กำหนดว่าใครรับผิดชอบสิ่งต่อไปนี้:
- พื้นฐานธรรมาภิบาลขององค์กร;
- ส่วนขยายเฉพาะโดเมน;
- API แต่ละรายการและเอกสารประกอบ;
- การตรวจสอบความปลอดภัยและความเป็นส่วนตัว;
- การอนุมัติข้อยกเว้น;
- การแก้ไขการควบคุมที่ล้มเหลว;
- การตัดสินใจเกี่ยวกับการเลิกใช้และการยุติการใช้งาน
ความเป็นเจ้าของควรผูกติดอยู่กับบทบาทและทีม ไม่ใช่แค่ชื่อบุคคล สิ่งนี้ทำให้โมเดลมีความยืดหยุ่นมากขึ้นเมื่อผู้คนย้ายหรือลาออก
4. กำหนดชุดการควบคุมขั้นต่ำที่ใช้งานได้จริง
เริ่มต้นด้วยการควบคุมที่จัดการกับปัญหาทั่วไปและสำคัญ พื้นฐานแรกที่เป็นประโยชน์อาจกำหนดให้มี:
- เจ้าของที่ระบุชื่อและสถานะวงจรชีวิต;
- สัญญา API ในรูปแบบข้อกำหนดที่ได้รับการอนุมัติ;
- การตั้งชื่อมาตรฐาน, ข้อผิดพลาด, การพิสูจน์ตัวตน, การกำหนดเวอร์ชัน และการแบ่งหน้าตามความเหมาะสม;
- คำอธิบาย, ตัวอย่าง, ข้อจำกัดพารามิเตอร์, การตอบกลับ และกรณีข้อผิดพลาด;
- การทดสอบที่จำเป็นและเกณฑ์การตรวจสอบ;
- การอ้างอิงข้อมูลประจำตัวที่ได้รับการอนุมัติ แทนที่จะเป็นความลับที่ใช้ร่วมกันในรูปแบบข้อความธรรมดา;
- การเข้าถึงพื้นที่ทำงานตามบทบาทและกระบวนการยุติการเข้าถึง;
- ขั้นตอนการเปลี่ยนแปลงที่ทำให้เกิดความเสียหายและการเลิกใช้;
- หลักฐานที่บันทึกไว้และเส้นทางสำหรับข้อยกเว้น
ใช้ การกำหนดมาตรฐาน API เพื่อกำหนดพื้นฐานการออกแบบ จากนั้นเปลี่ยนข้อกำหนดเอกสารให้เป็น รายการตรวจสอบเอกสารปลายทาง API
5. นำการควบคุมเข้าสู่กระบวนการส่งมอบงาน
ธรรมาภิบาลจะปฏิบัติตามได้ง่ายที่สุดเมื่อมีการตรวจสอบในจุดที่ทีมทำงานอยู่แล้ว
| ขั้นตอนวงจรชีวิต | กิจกรรมธรรมาภิบาล |
|---|---|
| ค้นพบและวางแผน | ค้นหาในแคตตาล็อก, ระบุเจ้าของ, จัดหมวดหมู่ความเสี่ยงและข้อมูล และยืนยันว่าสามารถนำ API ที่มีอยู่กลับมาใช้ใหม่ได้หรือไม่ |
| ออกแบบ | สร้างสัญญา, ใช้มาตรฐาน, ตรวจสอบความสมบูรณ์ของเอกสาร และระบุข้อจำกัดความเข้ากันได้ที่คาดหวัง |
| พัฒนาและทดสอบ | ใช้การจำลองและการทดสอบ, เก็บข้อมูลประจำตัวให้ออกห่างจากคำจำกัดความที่ใช้ร่วมกัน และซิงโครไนซ์สิ่งประดิษฐ์ที่ได้รับการอนุมัติกับการควบคุมซอร์สโค้ดเมื่อจำเป็น |
| ตรวจสอบและเผยแพร่ | ประเมินการควบคุมที่จำเป็น, บันทึกหลักฐาน, แก้ไขข้อค้นพบ และอนุมัติข้อยกเว้นที่มีกรอบเวลา |
| ดำเนินการและเปลี่ยนแปลง | ตรวจสอบการเข้าถึง, หมุนเวียนข้อมูลประจำตัว, รวบรวมหลักฐานขณะรันไทม์จากระบบปฏิบัติการที่เหมาะสม และจัดการเวอร์ชัน |
| เลิกใช้และยุติการใช้งาน | แจ้งผู้ใช้งาน, ติดตามการย้ายข้อมูล, ลบการเข้าถึงและข้อมูลประจำตัว, เก็บถาวรหลักฐาน และอัปเดตแคตตาล็อก |
การควบคุมบางอย่างสามารถทำให้เป็นอัตโนมัติได้ในระบบ CI/CD หรือระบบนโยบาย ส่วนอื่นๆ ต้องการเจ้าของผลิตภัณฑ์, สถาปนิก หรือผู้ตรวจสอบความปลอดภัยในการตัดสินใจตามบริบท ทำให้การตรวจสอบที่ทำซ้ำได้เป็นอัตโนมัติ ไม่ใช่ความรับผิดชอบ
6. สร้างกระบวนการจัดการข้อยกเว้นที่ใช้งานได้จริง
บางครั้งทีมอาจมีเหตุผลที่สมเหตุสมผลที่จะไม่ปฏิบัติตามค่าเริ่มต้น ข้อยกเว้นควรรวมถึง:
- API และข้อกำหนดที่ได้รับผลกระทบ;
- เหตุผลที่ไม่สามารถปฏิบัติตามมาตรฐานได้ในปัจจุบัน;
- ความเสี่ยงและการควบคุมชดเชยใดๆ;
- เจ้าของและผู้อนุมัติที่รับผิดชอบ;
- วันที่หมดอายุหรือวันที่ตรวจสอบ;
- การตัดสินใจแก้ไขหรือยอมรับ
การติดตามข้อยกเว้นช่วยป้องกันไม่ให้วิธีแก้ปัญหา "ชั่วคราว" กลายเป็นนโยบายถาวรที่มองไม่เห็น
7. ช่วยให้ทีมทำงานได้อย่างราบรื่นด้วยเส้นทางที่ปูไว้
จับคู่ข้อกำหนดกับทรัพยากรที่นำกลับมาใช้ใหม่ได้: ตัวอย่างที่ได้รับการอนุมัติ, เทมเพลต, ส่วนประกอบสคีมา, รูปแบบการพิสูจน์ตัวตน, โมเดลข้อผิดพลาด, รายการตรวจสอบ และคำแนะนำในการแก้ไขปัญหา อธิบายว่าเหตุใดการควบคุมที่สำคัญแต่ละรายการจึงมีอยู่ และแสดงตัวอย่างที่สอดคล้อง
สิ่งนี้เปลี่ยนธรรมาภิบาลจากประตูการตรวจสอบไปสู่ระบบการสนับสนุน ทีมสามารถแก้ไขปัญหาทั่วไปได้ก่อนที่จะขออนุมัติ และผู้ตรวจสอบสามารถมุ่งเน้นไปที่การตัดสินใจที่มีความเสี่ยงสูงกว่า
8. วัดผลลัพธ์และปรับปรุงพื้นฐาน
ตรวจสอบตัวชี้วัด, ข้อยกเว้น, เหตุการณ์, คำถามสนับสนุน และข้อเสนอแนะจากนักพัฒนาเป็นประจำ ยกเลิกกฎที่ไม่ได้ปรับปรุงผลลัพธ์, ชี้แจงกฎที่ทำให้เกิดความสับสนซ้ำๆ และเสริมความแข็งแกร่งในการควบคุมในกรณีที่เกิดความล้มเหลวซ้ำ
แนวทางปฏิบัติที่ดีที่สุดสำหรับธรรมาภิบาล API
ใช้ธรรมาภิบาลตลอดวงจรชีวิต
การตรวจสอบการออกแบบเพียงอย่างเดียวไม่สามารถจัดการกับการเข้าถึงที่ค้างอยู่, ข้อมูลประจำตัวที่ไม่ได้จัดการ, การเปลี่ยนแปลงที่ทำให้เกิดความเสียหายที่ไม่ได้บันทึกไว้ หรือการยุติการใช้งานได้ ใช้การควบคุมที่เหมาะสมตั้งแต่การค้นพบไปจนถึงการเลิกใช้
ใช้การควบคุมตามความเสี่ยง
สร้างพื้นฐานขั้นต่ำสากล จากนั้นเพิ่มการควบคุมตามการเปิดเผย, ความละเอียดอ่อนของข้อมูล, ผลกระทบต่อผู้ใช้งาน, บริบทด้านกฎระเบียบ และความสำคัญทางธุรกิจ ธรรมาภิบาลตามความเสี่ยงนั้นง่ายต่อการปกป้องและสร้างภาระน้อยกว่าการใช้กระบวนการที่เข้มงวดที่สุดกับ API ทุกรายการ
รายการตรวจสอบของอุตสาหกรรมสามารถแปลพื้นฐานนั้นเป็นคำถามการตรวจสอบที่เฉพาะเจาะจงมากขึ้น ตัวอย่างเช่น รายการตรวจสอบธรรมาภิบาล API สำหรับฟินเทค นี้เชื่อมโยงข้อกำหนดการเข้าถึง, เอกสาร, การเปลี่ยนแปลง และหลักฐานสำหรับทีม API ทางการเงิน โดยไม่ถือว่าเครื่องมือเป็นสิ่งทดแทนการประเมินการปฏิบัติตามกฎขององค์กรเอง
แยกการควบคุมพื้นที่ทำงานออกจากการควบคุมขณะรันไทม์
บันทึกการตรวจสอบทางปกครองไม่ใช่บันทึกคำขอ API การควบคุมการเข้าถึงตามบทบาท (RBAC) ของพื้นที่ทำงานไม่ใช่การอนุญาตขณะรันไทม์ การตรวจสอบการปฏิบัติตามการออกแบบไม่ใช่การบังคับใช้การผลิตอย่างต่อเนื่อง ระบุว่าการควบคุมแต่ละรายการครอบคลุมเลเยอร์ใด และเชื่อมโยงกับการเข้าถึงเกตเวย์, ระบบระบุตัวตน, ระบบความปลอดภัย หรือระบบการสังเกตการณ์ที่รับผิดชอบเลเยอร์อื่นๆ
เลือกการป้องกันก่อน จากนั้นจึงเป็นการตรวจจับและการแก้ไข
ในทางปฏิบัติ ควรป้องกันพฤติกรรมที่มีความเสี่ยงด้วยเทมเพลตที่ได้รับการอนุมัติ, บทบาทที่มีสิทธิ์น้อยที่สุด, การอ้างอิง Vault และนโยบายการบล็อก ใช้การตรวจสอบและเครื่องสแกนเพื่อระบุสิ่งที่การป้องกันพลาดไป ทุกข้อค้นพบยังคงต้องการเจ้าของ, ระดับความรุนแรง, การดำเนินการแก้ไข และวันที่เป้าหมาย
ทำให้มาตรฐานเป็นผลิตภัณฑ์ที่มีเวอร์ชัน
เผยแพร่บันทึกการเปลี่ยนแปลง, ตัวอย่าง, คำแนะนำการย้ายข้อมูล และวันที่บังคับใช้สำหรับมาตรฐาน หลีกเลี่ยงการเปลี่ยนแปลงกฎโดยไม่อธิบายว่า API ที่มีอยู่ควรตอบสนองอย่างไร
ถือว่าข้อยกเว้นเป็นข้อมูลธรรมาภิบาล
จัดกลุ่มข้อยกเว้นตามกฎ, ทีม และสาเหตุหลัก ข้อยกเว้นจำนวนมากที่คล้ายกันอาจบ่งชี้ถึงการขาดการสนับสนุน, มาตรฐานที่ออกแบบมาไม่ดี, ข้อจำกัดของผลิตภัณฑ์ หรือการควบคุมที่ควรเป็นอัตโนมัติ
ให้นักพัฒนามีส่วนร่วมในการให้ข้อเสนอแนะ
วัดระยะเวลาที่ใช้ในการตรวจสอบ, จุดที่ทีมติดขัด และคำแนะนำใดที่ยากต่อการนำไปใช้ ธรรมาภิบาลจะประสบความสำเร็จเมื่อช่วยปรับปรุงทั้งผลลัพธ์ของการควบคุมและคุณภาพของการส่งมอบ
วิธีวัดผลธรรมาภิบาล API
อย่าเพิ่งวัดความสำเร็จด้วยจำนวนนโยบายที่เขียนขึ้นหรือการตรวจสอบที่เสร็จสมบูรณ์เท่านั้น ใช้ชุดตัวชี้วัดที่สมดุลซึ่งครอบคลุมถึงขอบเขต, การปฏิบัติตาม, ความเสี่ยง, กระบวนการ และผลลัพธ์
| ตัวชี้วัด | การคำนวณหรือการตีความตัวอย่าง |
|---|---|
| ความครอบคลุมของความเป็นเจ้าของ | API ที่มีเจ้าของที่รับผิดชอบ ÷ API ในรายการสินค้าคงคลัง |
| ความครอบคลุมของวงจรชีวิต | API ที่มีสถานะวงจรชีวิตปัจจุบันและวันที่ตรวจสอบ ÷ API ที่จัดทำเป็นรายการ |
| การปฏิบัติตามการออกแบบ | API ที่ผ่านการควบคุมการออกแบบที่จำเป็น ÷ API ที่ได้รับการตรวจสอบ แบ่งตามระดับความเสี่ยง |
| ความสมบูรณ์ของเอกสาร | ปลายทางที่จำเป็นที่ตรงตามพื้นฐานเอกสาร ÷ ปลายทางที่ได้รับการประเมิน |
| สถานะข้อยกเว้น | ข้อยกเว้นที่เปิดอยู่ตามอายุ, ความเสี่ยง, เจ้าของ และสถานะการหมดอายุ |
| เวลาแฝงในการถอนการเข้าถึง | ระยะเวลาระหว่างเหตุการณ์การยุติการเข้าถึงกับการถอนการเข้าถึงพื้นที่ทำงานที่เกี่ยวข้อง |
| การแก้ไขข้อค้นพบข้อมูลประจำตัว | เวลาในการคัดแยกและแก้ไขข้อมูลประจำตัวที่คาดว่าจะถูกเปิดเผย โดยแยกตามระดับความรุนแรง |
| อัตราการเปลี่ยนแปลงที่ส่งผลกระทบ | การเผยแพร่ที่มีการเปลี่ยนแปลงที่ไม่คาดคิดซึ่งส่งผลกระทบ ÷ การเผยแพร่ที่ได้รับการประเมิน |
| ประสิทธิภาพการยุติการใช้งาน | API ที่เลิกใช้แล้วถูกยุติการใช้งานตามกำหนดเวลา และผู้ใช้งานย้ายข้อมูลสำเร็จ |
| ประสบการณ์นักพัฒนา | เวลาที่ใช้ในการผ่านการควบคุม, อัตราความล้มเหลวซ้ำ, ปริมาณการสนับสนุน และข้อเสนอแนะจากทีม |
ควรกำหนดตัวส่วนและขอบเขตเสมอ อัตราการผ่าน 95% จะมีความหมายน้อยมาก หากมีการตรวจสอบเพียงส่วนเล็กๆ ที่เลือกเองของพอร์ตโฟลิโอเท่านั้น
Apidog สนับสนุนธรรมาภิบาล API ระดับองค์กรอย่างไร
Apidog รวบรวมการออกแบบ, เอกสาร, การทดสอบ, การทำงานร่วมกัน และการควบคุมพื้นที่ทำงานระดับองค์กรไว้ในแพลตฟอร์มการพัฒนา API เดียวกัน โดยมีจุดแข็งที่สุดในธรรมาภิบาลด้านการออกแบบและการทำงานร่วมกัน องค์กรควรเชื่อมต่อเข้ากับเกตเวย์ขณะรันไทม์, โครงสร้างพื้นฐาน, SIEM และการควบคุมการสังเกตการณ์ที่จำเป็น
| วัตถุประสงค์ธรรมาภิบาล | ความสามารถที่เกี่ยวข้องของ Apidog | ขอบเขตในการสื่อสารอย่างถูกต้อง |
|---|---|---|
| การออกแบบ API ที่สอดคล้องกัน | เวิร์กโฟลว์ API ที่เน้นการออกแบบเป็นหลัก, การรองรับ OpenAPI, คำจำกัดความที่นำกลับมาใช้ใหม่ได้ และ การตรวจสอบการปฏิบัติตามปลายทาง | การตรวจสอบการปฏิบัติตามปลายทางจะประเมินการตั้งชื่อ, เอกสาร และโครงสร้างการตอบกลับเมื่อผู้ใช้เรียกใช้; อย่าอธิบายว่าเป็นเครื่องมือบังคับใช้อย่างต่อเนื่องในระดับสากล |
| เอกสารที่สมบูรณ์ | เอกสารที่สร้าง/ใช้ร่วมกัน และ การตรวจสอบความสมบูรณ์ของเอกสาร API | การตรวจสอบจะประเมินรายการต่างๆ เช่น คำจำกัดความ, คำอธิบาย, ข้อจำกัด, โครงสร้างการตอบกลับ, รหัสสถานะ และข้อผิดพลาด |
| การควบคุมตัวตนในพื้นที่ทำงาน | SAML SSO, การจัดเตรียม SCIM, RBAC สำหรับทีม API และ การจับคู่กลุ่ม SAML | สิ่งเหล่านี้ควบคุมการเข้าถึงองค์กร, ทีม, โครงการ และสินทรัพย์ API ของ Apidog—ไม่ใช่การอนุญาตให้เรียกใช้ API สำหรับการใช้งานจริง ควรตรวจสอบเอกสาร SCIM สาธารณะปัจจุบันก่อนที่จะอธิบายการดำเนินการนอกเหนือจากการเพิ่มและลบผู้ใช้ |
| การจัดการข้อมูลประจำตัวที่ปลอดภัยยิ่งขึ้น | การจัดการสภาพแวดล้อมและความลับ, การผสานรวม Vault, นโยบายองค์กร และ Secret Scanner | Secret Scanner ทำงานแบบอะซิงโครนัสและตรวจจับความลับที่อาจถูกเปิดเผยภายในสินทรัพย์ Apidog ที่รองรับ ไม่ได้ทำการเพิกถอน, หมุนเวียน, ลบ หรือแทนที่โดยอัตโนมัติ ใช้ กระบวนการหมุนเวียนคีย์ API ที่กำหนดไว้สำหรับการแก้ไข |
| หลักฐานการดูแลระบบ | บันทึกการตรวจสอบ พร้อมตัวกรอง, การส่งออก CSV และการสอบถาม API | บันทึกการตรวจสอบของ Apidog ครอบคลุมกิจกรรมองค์กรและการดูแลระบบที่รองรับ โดยมีระยะเวลาการเก็บรักษา 180 วันที่จัดทำเป็นเอกสาร ไม่ใช่ปริมาณการรับส่งข้อมูล API ขณะรันไทม์หรือบันทึกแอปพลิเคชัน |
| เวิร์กโฟลว์การควบคุมซอร์สโค้ดที่มีธรรมาภิบาล | การเชื่อมต่อกับที่เก็บ Git, การนำเข้า OpenAPI, การสำรอง/การซิงโครไนซ์ และการทำงานร่วมกันแบบ Git-native | สิทธิ์ของที่เก็บข้อมูลและการกำกับดูแลสาขายังคงต้องได้รับการกำหนดค่าในแพลตฟอร์มการควบคุมซอร์สโค้ด ดูวิธี ซิงโครไนซ์ OpenAPI กับ GitHub และ รักษาความปลอดภัยข้อกำหนด API ที่จัดเก็บใน Git |
| ความเข้ากันได้กับการจัดเก็บข้อมูลในพื้นที่ของ GitHub Enterprise Cloud | การเชื่อมต่อระดับองค์กรกับผู้เช่า GitHub Enterprise Cloud ที่รองรับการจัดเก็บข้อมูลในพื้นที่ | การผสานรวมนี้รองรับผู้เช่า SaaS ที่เป็น root *.ghe.com ไม่รองรับ GitHub Enterprise Server, โดเมนที่กำหนดเองแบบสุ่ม, โดเมนย่อยที่ซ้อนกัน หรือเส้นทาง URL ไม่ควรนำเสนอเป็นการรับประกันการจัดเก็บข้อมูลในพื้นที่หรือการปฏิบัติตามกฎระเบียบที่สมบูรณ์ |
สำหรับผู้ซื้อที่ประเมินความครอบคลุมของแพลตฟอร์ม ให้ใช้การเปรียบเทียบ เครื่องมือธรรมาภิบาล API โดยอิงตามข้อกำหนด แทนที่จะเลือกจากจำนวนฟีเจอร์เพียงอย่างเดียว
แผนงานการนำไปปฏิบัติจริง 90 วัน
วันที่ 1–30: กำหนดพื้นฐาน
- จัดทำรายการพอร์ตโฟลิโอเบื้องต้นและมอบหมายเจ้าของที่รับผิดชอบ
- กำหนดระดับความเสี่ยงและเลือกโดเมนนำร่อง
- ตกลงเกี่ยวกับการควบคุมขั้นต่ำห้าถึงสิบรายการ
- จัดทำเอกสารกระบวนการทำงานปัจจุบันสำหรับการระบุตัวตน, การเข้าถึง, ข้อมูลประจำตัว, การควบคุมซอร์สโค้ด และหลักฐาน
- สร้างเทมเพลตข้อยกเว้นและความถี่ในการตรวจสอบ
วันที่ 31–60: ทดลองใช้ในเวิร์กโฟลว์การส่งมอบจริง
- ใช้พื้นฐานกับ API ใหม่และ API ที่มีอยู่บางรายการ
- เผยแพร่ตัวอย่างการออกแบบและเอกสาร
- กำหนดค่า SSO, การจัดเตรียม, RBAC และการจับคู่กลุ่มที่เหมาะสม
- ทดสอบการควบคุมเอกสาร, การออกแบบ, ข้อมูลประจำตัว และหลักฐาน
- วัดเวลาที่ใช้ในการปฏิบัติตาม, สาเหตุความล้มเหลวทั่วไป และข้อยกเว้นที่ยังไม่ได้รับการแก้ไข
วันที่ 61–90: ขยายสิ่งที่ใช้งานได้จริง
- ปรับปรุงการควบคุมโดยใช้หลักฐานนำร่องและข้อเสนอแนะจากนักพัฒนา
- ขยายไปยังโดเมนเพิ่มเติมโดยอิงตามความเสี่ยง
- สร้างแดชบอร์ดสำหรับความครอบคลุม, การปฏิบัติตาม, ข้อยกเว้น และการแก้ไข
- เพิ่มการควบคุมที่ลึกซึ้งยิ่งขึ้นสำหรับ API ที่มีความเสี่ยงสูงกว่า
- เผยแพร่แผนงานสำหรับการผสานรวมขณะรันไทม์, การตรวจสอบการเข้าถึงเป็นระยะ และการทำความสะอาดวงจรชีวิต
เริ่มต้นด้วยโครงสร้างที่เพียงพอสำหรับการเรียนรู้ ชุดการควบคุมที่เล็กกว่าซึ่งทีมปฏิบัติตามอย่างสม่ำเสมอมีประโยชน์มากกว่ากรอบการทำงานที่ครอบคลุมซึ่งมีอยู่แต่ในเอกสารเท่านั้น
วิธีเลือกเครื่องมือธรรมาภิบาล API
ประเมินเครื่องมือเทียบกับรูปแบบการดำเนินงานและเมทริกซ์การควบคุม ไม่ใช่ในทางกลับกัน ข้อกำหนดที่สำคัญได้แก่:
- รองรับข้อกำหนดและโปรโตคอล API ขององค์กร;
- มาตรฐานการออกแบบ, ส่วนประกอบที่นำกลับมาใช้ใหม่ได้ และการตรวจสอบคุณภาพ;
- เอกสาร, การค้นพบ, การทดสอบ และเวิร์กโฟลว์วงจรชีวิต;
- ตัวตนองค์กร, การจัดเตรียม, RBAC และการจับคู่ทีม;
- การจัดเก็บความลับ, นโยบาย, การตรวจจับ และการผสานรวมการแก้ไข;
- หลักฐานการดูแลระบบ, การกรอง, การส่งออก และ API;
- การผสานรวม Git, CI/CD, ผู้ให้บริการระบุตัวตน, Vault, เกตเวย์ และการสังเกตการณ์;
- ข้อกำหนดการปรับใช้, ตำแหน่งข้อมูล และที่เก็บข้อมูล;
- การจัดการและการรายงานข้อยกเว้น;
- ประสบการณ์นักพัฒนาที่ทำให้เส้นทางที่สอดคล้องชัดเจน
ไม่มีเครื่องมือใดเครื่องมือเดียวที่จำเป็นต้องทำงานทุกฟังก์ชันทั้งขณะรันไทม์และการพัฒนา คำถามสำคัญคือเครื่องมือเหล่านั้นแลกเปลี่ยนสิ่งประดิษฐ์และหลักฐานที่ถูกต้องหรือไม่ โดยไม่สร้างช่องว่างในความเป็นเจ้าของ
คำถามที่พบบ่อยเกี่ยวกับธรรมาภิบาล API
ธรรมาภิบาล API คืออะไรในแง่ง่ายๆ?
ธรรมาภิบาล API คือชุดของกฎเกณฑ์, ความรับผิดชอบ, เวิร์กโฟลว์ และหลักฐานที่องค์กรใช้เพื่อรักษา API ให้สอดคล้องกัน, ปลอดภัย, ค้นพบได้ และจัดการได้ตลอดวงจรชีวิตของมัน
ใครควรเป็นเจ้าของธรรมาภิบาล API?
การสนับสนุนจากผู้บริหารอาจมาจากผู้นำด้านเทคโนโลยีหรือผลิตภัณฑ์ ในขณะที่ทีมแพลตฟอร์มหรือทีมสนับสนุนเป็นเจ้าของพื้นฐานที่ใช้ร่วมกัน ทีมโดเมนควรยังคงรับผิดชอบ API ของตน และทีมความปลอดภัย, สถาปัตยกรรม, กฎหมาย, ความเป็นส่วนตัว และการดำเนินงาน ควรเป็นเจ้าของระบบควบคุมที่เกี่ยวข้องกับสาขาวิชาของตน
ตัวอย่างของนโยบายธรรมาภิบาล API มีอะไรบ้าง?
ตัวอย่างได้แก่ การกำหนดให้มีเจ้าของที่รับผิดชอบ, ข้อกำหนด API ที่ได้รับการอนุมัติ, รูปแบบการพิสูจน์ตัวตนที่เป็นมาตรฐาน, เอกสารที่สมบูรณ์, การตรวจสอบความเข้ากันได้แบบย้อนหลัง, การจัดเก็บข้อมูลประจำตัวที่ได้รับการอนุมัติ, การเข้าถึงด้วยสิทธิ์น้อยที่สุด, หลักฐานการตรวจสอบ และระยะเวลาการเลิกใช้ที่กำหนดไว้
ธรรมาภิบาล API ทำให้การพัฒนาช้าลงหรือไม่?
ธรรมาภิบาลที่ออกแบบมาไม่ดีอาจทำให้การพัฒนาช้าลงได้ ธรรมาภิบาลที่มีประสิทธิภาพช่วยลดการตัดสินใจซ้ำๆ และงานซ้ำซ้อนโดยการจัดหาเทมเพลต, ตัวอย่าง, ส่วนประกอบที่นำกลับมาใช้ใหม่ได้, การตรวจสอบด้วยตนเอง, ระดับความเสี่ยง และเส้นทางข้อยกเว้นที่ชัดเจน
ธรรมาภิบาล API เหมือนกับการจัดการ API หรือไม่?
ไม่ ธรรมาภิบาลกำหนดสิทธิ์ในการตัดสินใจ, มาตรฐาน, นโยบาย และหลักฐานทั่วทั้งพอร์ตโฟลิโอ การจัดการ API โดยปกติจะเน้นที่การเผยแพร่และการดำเนินงาน API ผ่านความสามารถต่างๆ เช่น เกตเวย์, พอร์ทัล, นโยบายขณะรันไทม์ และการวิเคราะห์
องค์กรควรเริ่มต้นอย่างไร?
เริ่มต้นด้วยการจัดทำรายการ, การระบุเจ้าของ, ระดับความเสี่ยง, ชุดการควบคุมขั้นต่ำขนาดเล็ก และโดเมนนำร่องหนึ่งรายการ วัดผลการนำร่อง, ปรับปรุงเวิร์กโฟลว์ และขยายตามหลักฐาน แทนที่จะพยายามนำไปใช้ทั่วทั้งองค์กรทันที
สร้างธรรมาภิบาลให้เป็นส่วนหนึ่งของวิธีการทำงานของทีม API
ธรรมาภิบาล API ควรกำหนดให้การส่งมอบที่น่าเชื่อถือสามารถทำซ้ำได้ กำหนดความเป็นเจ้าของที่ชัดเจน, ใช้การควบคุมตามความเสี่ยงตลอดวงจรชีวิต, ช่วยให้ทีมปฏิบัติตามมาตรฐาน และใช้หลักฐานเพื่อปรับปรุงโปรแกรมเมื่อเวลาผ่านไป
Apidog สนับสนุนโมเดลนี้โดยการนำการออกแบบ API, เอกสาร, การทดสอบ, เวิร์กโฟลว์ Git, การทำงานร่วมกัน, ตัวตนองค์กร, การควบคุมข้อมูลประจำตัว และหลักฐานการดูแลระบบมารวมไว้ในแพลตฟอร์มเดียว สำรวจ Apidog Enterprise เพื่อประเมินว่าการควบคุมเหล่านั้นเหมาะสมกับกรอบธรรมาภิบาลขององค์กรคุณอย่างไร
