คำแนะนำสำหรับการปกป้องข้อมูลลับของแอปพลิเคชัน
ใช้กับคำแนะนำรายการตรวจสอบความปลอดภัยที่ได้รับการออกแบบอย่างดีนี้: Power Platform
SE:07 | ปกป้องข้อมูลลับของแอปพลิเคชันโดยเพิ่มความแข็งแกร่งให้กับพื้นที่จัดเก็บข้อมูลและจำกัดการเข้าถึงและการจัดการ รวมทั้งโดยการตรวจสอบการดำเนินการเหล่านั้น ดำเนินกระบวนการหมุนเวียนที่เชื่อถือได้และสม่ำเสมอ ซึ่งสามารถจัดเตรียมการหมุนเวียนชั่วคราวสำหรับเหตุฉุกเฉินได้ |
---|
คู่มือนี้จะอธิบายคำแนะนำในการรักษาความปลอดภัยข้อมูลที่ละเอียดอ่อนในปริมาณงาน การจัดการข้อมูลลับอย่างเหมาะสมเป็นสิ่งสำคัญสำหรับการรักษาความปลอดภัยและความสมบูรณ์ของแอปพลิเคชัน ปริมาณงาน และข้อมูลที่เกี่ยวข้องของคุณ การจัดการข้อมูลลับที่ไม่เหมาะสมอาจนำไปสู่การละเมิดข้อมูล การหยุดชะงักของบริการ การละเมิดกฎระเบียบ และปัญหาอื่นๆ
ข้อมูลรับรองเช่นคีย์ API โทเค็นการอนุญาตแบบเปิด (OAuth) และคีย์ Secure Shell (SSH) ถือเป็นความลับ ข้อกำหนดด้านการปฏิบัติตามข้อบังคับอาจทำให้การตั้งค่าการกำหนดค่าซึ่งโดยทั่วไปไม่ใช่ข้อมูลลับถูกมองว่าเป็นข้อมูลลับของแอปพลิเคชัน
คำจำกัดความ
เงื่อนไข | ข้อกำหนด |
---|---|
ใบรับรอง | ไฟล์ดิจิทัลที่เก็บคีย์สาธารณะสำหรับการเข้ารหัสลับหรือการถอดรหัส |
Credentials | ข้อมูลที่ใช้ในการตรวจสอบตัวตนของผู้เผยแพร่หรือผู้บริโภคในช่องทางการสื่อสาร |
การสแกนข้อมูลประจำตัว | กระบวนการตรวจสอบโค้ดต้นฉบับเพื่อให้แน่ใจว่าไม่ได้รวมข้อมูลลับไว้ |
การเข้ารหัสลับ | กระบวนการที่ทำให้ข้อมูลไม่สามารถอ่านได้และถูกล็อกด้วยรหัสลับ |
Key | รหัสลับที่ใช้ในการล็อกหรือปลดล็อกข้อมูลที่เข้ารหัสลับ |
การเข้าถึงด้วยสิทธิ์การใช้งานน้อยที่สุด | หลักการ Zero Trust ที่มุ่งลดชุดสิทธิ์ในการทำงานให้เหลือน้อยที่สุด |
ตัวตนที่มีการจัดการ | ตัวตนที่กำหนดให้กับทรัพยากรและจัดการโดย Azure |
ไม่เป็นความลับ | ข้อมูลที่ไม่เป็นอันตรายต่อมาตรการรักษาความปลอดภัยของปริมาณงานหากมีการรั่วไหล |
การหมุน | กระบวนการอัปเดตข้อมูลลับเป็นประจำ เพื่อว่าหากข้อมูลเหล่านี้ถูกบุกรุก ข้อมูลเหล่านี้จะสามารถใช้ได้ในระยะเวลาที่จำกัดเท่านั้น |
ข้อมูลลับ | องค์ประกอบที่เป็นความลับของระบบที่อำนวยความสะดวกในการสื่อสารระหว่างส่วนประกอบของปริมาณงาน หากรั่วไหล ข้อมูลลับอาจทำให้เกิดการละเมิดได้ |
X.509 | มาตรฐานที่กำหนดรูปแบบของใบรับรองคีย์สาธารณะ |
สำคัญ
อย่าปฏิบัติต่อสิ่งที่ไม่ได้เป็นความลับเหมือนเป็นข้อมูลลับ ข้อมูลลับจำเป็นต้องมีความเข้มงวดในการปฏิบัติงานซึ่งไม่จำเป็นสำหรับสิ่งที่ไม่ได้เป็นความลับ และอาจส่งผลให้มีค่าใช้จ่ายเพิ่มเติม
การตั้งค่าแอปพลิเคชันที่ไม่เป็นความลับ เช่น URL ของ API ที่แอปพลิเคชันต้องการ ควรแยกจากรหัสแอปพลิเคชันหรือข้อมูลลับของแอปพลิเคชัน หากต้องการจัดเก็บการกำหนดค่าแอปพลิเคชัน ให้พิจารณาใช้ตัวเชื่อมต่อแบบกำหนดเองหรือตัวแปรสภาพแวดล้อม อีกทางเลือกหนึ่งคือการใช้ตาราง Dataverse สำหรับจัดเก็บเมตาดาต้าเกี่ยวกับการกำหนดค่าแอปพลิเคชัน อย่างไรก็ตาม คุณจะต้องค้นหาวิธีกรอกข้อมูลนี้ในสภาพแวดล้อมใหม่ เช่น การถ่ายโอนข้อมูลการกำหนดค่าจากการพัฒนาไปยังการทดสอบหรือการใช้งานจริง คุณสามารถใช้โฟลว์ข้อมูลเพื่อทำสิ่งนี้ให้สำเร็จ
กลยุทธ์การออกแบบที่สำคัญ
พิจารณาประเด็นที่น่ากังวลต่อไปนี้ก่อนที่จะจัดเก็บและจัดการข้อมูลลับ:
- ข้อมูลลับที่สร้างขึ้นควรเก็บไว้ในที่เก็บข้อมูลที่ปลอดภัยพร้อมการควบคุมการเข้าถึงที่เข้มงวด
- การหมุนเวียนข้อมูลลับเป็นการดำเนินการเชิงรุก ในขณะที่การเพิกถอนนั้นเป็นการดำเนินการเชิงรับ
- เฉพาะตัวตนที่เชื่อถือได้เท่านั้นจึงจะมีสิทธิ์เข้าถึงข้อมูลลับ
- คุณควรรักษาบันทึกการตรวจสอบบัญชีเพื่อตรวจสอบการเข้าถึงข้อมูลลับ
สร้างกลยุทธ์รอบประเด็นเหล่านี้เพื่อช่วยป้องกันการโจรกรรมข้อมูลส่วนบุคคล หลีกเลี่ยงการปฏิเสธ และลดการเปิดเผยข้อมูลที่ไม่จำเป็นให้เหลือน้อยที่สุด
แนวปฏิบัติที่ปลอดภัยสำหรับการจัดการข้อมูลลับ
เราขอแนะนำว่าคีย์มีบทบาทที่แตกต่างกัน 3 บทบาท ได้แก่ ผู้ใช้ ผู้ดูแลระบบ และผู้ตรวจสอบ การแบ่งแยกบทบาทช่วยให้แน่ใจว่าจะมีเฉพาะตัวตนที่เชื่อถือได้เท่านั้นที่สามารถเข้าถึงข้อมูลลับด้วยระดับสิทธิ์ที่เหมาะสม ให้ความรู้แก่นักพัฒนา ผู้ดูแลระบบ และบุคลากรอื่นๆ ที่เกี่ยวข้องเกี่ยวกับความสำคัญของการจัดการข้อมูลลับและแนวปฏิบัติที่ดีที่สุดด้านการรักษาความปลอดภัย
คีย์ที่แชร์ล่วงหน้า
คุณสามารถควบคุมการเข้าถึงได้โดยการสร้างคีย์ที่แตกต่างกันสำหรับผู้บริโภคแต่ละราย ตัวอย่างเช่น ไคลเอ็นต์อย่างแอปหรือโฟลว์สื่อสารกับ API ของบริษัทอื่นโดยใช้คีย์ที่แชร์ล่วงหน้า หากไคลเอ็นต์อื่นต้องการเข้าถึง API เดียวกัน พวกเขาต้องใช้คีย์อื่น อย่าแชร์คีย์แม้ว่าผู้บริโภคทั้งสองคนจะมีรูปแบบการเข้าถึงหรือบทบาทที่เหมือนกันก็ตาม ขอบเขตของผู้บริโภคอาจเปลี่ยนแปลงเมื่อเวลาผ่านไป และคุณไม่สามารถอัปเดตสิทธิ์หรือแยกแยะรูปแบบการใช้งานได้อย่างอิสระหลังจากแชร์คีย์แล้ว การเข้าถึงที่แตกต่างกันยังทำให้การเพิกถอนทำได้ง่ายขึ้น หากคีย์ของผู้บริโภคถูกบุกรุก จะเป็นการง่ายกว่าที่จะเพิกถอนหรือหมุนเวียนคีย์นั้นโดยไม่กระทบต่อผู้บริโภครายอื่น
คำแนะนำนี้ใช้กับสภาพแวดล้อมที่แตกต่างกัน ไม่ควรใช้คีย์เดียวกันสำหรับทั้งสภาพแวดล้อมก่อนการผลิตและสภาพแวดล้อมการทำงานจริง หากคุณรับผิดชอบในการสร้างคีย์ที่แชร์ล่วงหน้า ตรวจสอบให้แน่ใจว่าคุณสร้างหลายคีย์เพื่อรองรับไคลเอ็นต์หลายตัว
สำหรับข้อมูลเพิ่มเติม โปรดดูคำแนะนำสำหรับการจัดการตัวตนและการเข้าถึงของผู้ใช้
ที่เก็บข้อมูลลับ
ใช้ระบบการจัดการความลับ เช่น Azure Key Vault เพื่อจัดเก็บความลับในสภาพแวดล้อมที่แข็งแกร่ง เข้ารหัสขณะหยุดนิ่งและระหว่างการขนส่ง และตรวจสอบการเข้าถึงและการเปลี่ยนแปลงความลับ หากคุณต้องการจัดเก็บข้อมูลลับของแอปพลิเคชัน ให้เก็บไว้นอกโค้ดต้นฉบับเพื่อให้หมุนเวียนได้ง่าย
ระบบการจัดการข้อมูลลับเฉพาะทำให้ง่ายต่อการจัดเก็บ แจกจ่าย และควบคุมการเข้าถึงข้อมูลของแอปพลิเคชัน เฉพาะตัวตนและบริการที่ได้รับอนุญาตเท่านั้นจึงจะสามารถเข้าถึงที่เก็บข้อมูลลับได้ การเข้าถึงระบบสามารถจำกัดได้ด้วยสิทธิ์ ใช้แนวทางสิทธิ์น้อยที่สุดเสมอเมื่อกำหนดสิทธิ์
คุณต้องควบคุมการเข้าถึงในระดับข้อมูลลับด้วย ข้อมูลลับแต่ละรายการควรมีสิทธิ์เข้าถึงขอบเขตทรัพยากรเพียงขอบเขตเดียวเท่านั้น สร้างขอบเขตการแยกเพื่อให้ส่วนประกอบสามารถใช้เฉพาะข้อมูลลับที่จำเป็นเท่านั้น หากองค์ประกอบที่แยกออกมาถูกบุกรุก ก็จะไม่สามารถควบคุมข้อมูลลับอื่นๆ และอาจรวมถึงปริมาณงานทั้งหมดได้ วิธีหนึ่งในการแยกข้อมูลลับคือการใช้ Key Vault หลายรายการ ไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับการสร้าง Key Vault เพิ่มเติม
ดำเนินการตรวจสอบและติดตามการเข้าถึงข้อมูลลับ บันทึกผู้ที่เข้าถึงความลับและเวลาที่จะระบุกิจกรรมที่ไม่ได้รับอนุญาตหรือน่าสงสัย สำหรับข้อมูลเกี่ยวกับการบันทึกจากมุมมองด้านการรักษาความปลอดภัย โปรดดูคำแนะนำสำหรับการตรวจสอบและการตรวจจับภัยคุกคาม
การหมุนเวียนข้อมูลลับ
มีกระบวนการที่รักษาคุณภาพของข้อมูลลับ อายุการใช้งานของข้อมูลลับมีอิทธิพลต่อการจัดการข้อมูลลับนั้น เพื่อลดแนวทางการโจมตี ข้อมูลลับควรถูกยกเลิกและแทนที่ด้วยข้อมูลลับใหม่บ่อยที่สุดเท่าที่จะทำได้
จัดการโทเค็นการเข้าถึงอย่างระมัดระวัง โดยคำนึงถึงระยะเวลาในการใช้งาน OAuth พิจารณาว่าจำเป็นต้องปรับหน้าต่างการเข้าถึงให้มีช่วงเวลาที่สั้นลงหรือไม่ โทเค็นการรีเฟรชจะต้องเก็บไว้อย่างปลอดภัยโดยจำกัดการเข้าถึงแอปพลิเคชัน ใบรับรองที่ต่ออายุควรใช้รหัสใหม่ด้วย สำหรับข้อมูลเกี่ยวกับโทเค็นการรีเฟรช โปรดดูที่ Secure OAuth 2.0 On-Behalf-Of Refresh tokens
แทนที่ข้อมูลลับหลังจากที่หมดอายุการใช้งาน ไม่มีการใช้งานอีกต่อไป หรือหากข้อมูลเหล่านั้นถูกบุกรุก ในทางกลับกัน อย่าเลิกใช้ข้อมูลลับที่ยังมีการใช้งานอยู่ เว้นแต่จะเป็นเรื่องฉุกเฉิน คุณสามารถระบุสถานะของข้อมูลลับได้โดยการดูบันทึกการเข้าถึง กระบวนการหมุนเวียนข้อมูลลับไม่ควรส่งผลต่อความน่าเชื่อถือหรือประสิทธิภาพของปริมาณงาน ใช้กลยุทธ์ที่สร้างความซ้ำซ้อนในข้อมูลลับ ผู้บริโภค และวิธีการเข้าถึงเพื่อการหมุนเวียนที่ราบรื่น
แนวปฏิบัติที่ปลอดภัยในการใช้ข้อมูลลับ
ในฐานะตัวสร้างหรือตัวดำเนินการข้อมูลลับ คุณควรจะสามารถเผยแพร่ข้อมูลลับได้อย่างปลอดภัย องค์กรจำนวนมากใช้เครื่องมือเพื่อแชร์ข้อมูลลับอย่างปลอดภัยทั้งภายในองค์กรและภายนอกกับคู่ค้า ในกรณีที่ไม่มีเครื่องมือ ให้มีกระบวนการในการมอบข้อมูลประจำตัวให้กับผู้รับที่ได้รับอนุญาตอย่างเหมาะสม แผนการกู้คืนความเสียหายของคุณควรมีขั้นตอนการกู้คืนที่เป็นความลับ มีกระบวนการสำหรับสถานการณ์ที่คีย์ถูกบุกรุกหรือรั่วไหล และจำเป็นต้องสร้างใหม่ตามความต้องการ พิจารณาแนวปฏิบัติที่ดีที่สุดต่อไปนี้เพื่อความปลอดภัยเมื่อใช้ข้อมูลลับ:
ป้องกันฮาร์ดโค้ด
อย่าเขียนโค้ดลับในรูปแบบข้อความคงที่ ในอาร์ทิแฟกต์ของโค้ด เช่น โฟลว์บนคลาวด์ แอปแคนวาส ไฟล์การกำหนดค่า และไปป์ไลน์การสร้าง-การปรับใช้ แนวปฏิบัติที่มีความเสี่ยงสูงนี้ทำให้โค้ดมีช่องโหว่เนื่องจากมีการเปิดเผยความลับแก่ทุกคนที่มีสิทธิ์การอ่าน
ใช้เครื่องมือที่ตรวจจับความลับที่เปิดเผยเป็นระยะๆ ในโค้ดแอปพลิเคชันของคุณและสร้างสิ่งประดิษฐ์ คุณสามารถเพิ่มเครื่องมือเหล่านี้เป็นส่วนหนึ่งของไปป์ไลน์การปรับใช้งานของคุณเพื่อสแกนหาข้อมูลประจำตัวก่อนที่จะปรับใช้งานโค้ดต้นฉบับ ตรวจสอบและล้างข้อมูลบันทึกแอปพลิเคชันเป็นประจำเพื่อช่วยให้แน่ใจว่าไม่มีการบันทึกข้อมูลลับโดยไม่ได้ตั้งใจ คุณยังสามารถเสริมการตรวจจับผ่านการทบทวนจากผู้ทรงคุณวุฒิได้อีกด้วย
หมายเหตุ
หากเครื่องมือสแกนค้นพบข้อมูลลับ จะต้องถือว่าข้อมูลนั้นถูกบุกรุก ควรจะต้องถูกเพิกถอน
ตอบสนองต่อการหมุนเวียนข้อมูลลับ
ในฐานะเจ้าของปริมาณงาน คุณต้องเข้าใจแผนการหมุนเวียนข้อมูลลับและนโยบาย เพื่อให้สามารถรวมข้อมูลลับใหม่ๆ โดยรบกวนผู้ใช้น้อยที่สุด เมื่อมีการหมุนเวียนข้อมูลลับ อาจมีหน้าต่างปรากฎขึ้นมาเมื่อข้อมูลลับเก่าไม่ถูกต้อง แต่ไม่ได้วางข้อมูลลับใหม่ ในระหว่างหน้าต่างนั้น ส่วนประกอบที่ปริมาณงานพยายามเข้าถึงไม่ยอมรับคำขอ คุณสามารถลดปัญหาเหล่านี้ให้เหลือน้อยที่สุดได้โดยการสร้างตรรกะการลองใหม่ลงในโค้ด คุณยังสามารถใช้รูปแบบการเข้าถึงพร้อมกันซึ่งทำให้คุณมีข้อมูลประจำตัวหลายรายการที่สามารถเปลี่ยนแปลงได้อย่างปลอดภัยโดยไม่ส่งผลกระทบต่อกัน
ทำงานร่วมกับทีมปฏิบัติการและเป็นส่วนหนึ่งของกระบวนการจัดการการเปลี่ยนแปลง คุณควรแจ้งให้เจ้าของข้อมูลประจำตัวทราบเมื่อคุณเลิกใช้งานส่วนหนึ่งของปริมาณงานที่ใช้ข้อมูลประจำตัวที่ไม่จำเป็นอีกต่อไป
รวมการดึงข้อมูลลับและการกำหนดค่าเข้ากับไปป์ไลน์การปรับใช้งานอัตโนมัติของคุณ การเรียกข้อมูลลับช่วยให้แน่ใจว่าข้อมูลลับจะถูกดึงออกมาโดยอัตโนมัติในระหว่างการปรับใช้งาน คุณยังสามารถใช้รูปแบบการแทรกข้อมูลลับเพื่อแทรกข้อมูลลับลงในโค้ดแอปพลิเคชันหรือการกำหนดค่าขณะรันไทม์ ซึ่งจะช่วยป้องกันไม่ให้ข้อมูลลับถูกเปิดเผยโดยไม่ได้ตั้งใจในบันทึกหรือการควบคุมเวอร์ชัน
การอำนวยความสะดวกของ Power Platform
ส่วนต่อไปนี้จะอธิบายคุณลักษณะและความสามารถของ Power Platform ที่คุณสามารถใช้เพื่อจัดการข้อมูลลับของแอปพลิเคชัน
ใช้ข้อมูลลับของ Azure Key Vault
ตัวแปรสภาพแวดล้อมอนุญาตให้อ้างอิงข้อมูลลับที่เก็บไว้ใน Azure Key Vault ข้อมูลลับเหล่านี้จะถูกทำให้พร้อมสำหรับการใช้ภายในโฟลว์ Power Automate และตัวเชื่อมต่อแบบกำหนดเอง โปรดทราบว่าข้อมูลลับไม่พร้อมใช้งานในการปรับแต่งอื่นๆ หรือโดยทั่วไปผ่าน API
ข้อมูลลับจริงจะถูกเก็บไว้ใน Azure Key Vault เท่านั้น และตัวแปรสภาพแวดล้อมจะอ้างอิงถึงที่ตั้งข้อมูลลับของ Key Vault การใช้ข้อมูลลับของ Azure Key Vault กับตัวแปรสภาพแวดล้อม จำเป็นต้องให้คุณกำหนดค่า Azure Key Vault เพื่อให้ Power Platform สามารถอ่านข้อมูลลับเฉพาะที่คุณต้องการอ้างอิงได้ สำหรับข้อมูลเพิ่มเติม โปรดดูใช้ตัวแปรสภาพแวดล้อมในโซลูชันและใช้ตัวแปรสภาพแวดล้อมในตัวเชื่อมต่อแบบกำหนดเองของโซลูชัน
ใช้ตัวตรวจสอบโซลูชัน
ด้วยคุณลักษณะตัวตรวจสอบโซลูชัน คุณสามารถทำการตรวจสอบการวิเคราะห์สภาพสถิตย์จำนวนมากบนโซลูชันของคุณ โดยเทียบกับชุดกฎแนวทางปฏิบัติที่ดีที่สุด และระบุรูปแบบที่เป็นปัญหาเหล่านี้ได้อย่างรวดเร็ว หลังจากการตรวจสอบเสร็จสมบูรณ์ คุณจะได้รับรายงานรายละเอียดที่แสดงรายการระบุปัญหา ส่วนประกอบ และรหัสที่ได้รับผลกระทบ และเชื่อมโยงไปยังเอกสารที่อธิบายถึงวิธีการแก้ไขแต่ละปัญหา ตรวจสอบกฎตัวตรวจสอบโซลูชันที่มีอยู่ในหมวดหมู่ความปลอดภัย หากต้องการทราบข้อมูลเพิ่มเติม โปรดดูใช้ตัวตรวจสอบโซลูชันเพื่อตรวจสอบโซลูชันของคุณ
ใช้การดำเนินการ CyberArk
CyberArk นำเสนอแพลตฟอร์มการรักษาความปลอดภัยข้อมูลประจำตัวที่รักษาความปลอดภัยข้อมูลประจำตัวของมนุษย์และเครื่องจักรจากการดำเนินการแบบครบวงจร โฟลว์ Power Automate บนเดสก์ท็อปช่วยให้คุณสามารถดึงข้อมูลประจำตัวจาก CyberArk สำหรับข้อมูลเพิ่มเติม โปรดดู การดำเนินการ CyberArk
ข้อมูลที่เกี่ยวข้อง
- ใช้ตัวแปรสภาพแวดล้อมในการแก้ปัญหา
- ใช้ตัวแปรสภาพแวดล้อมในตัวเชื่อมต่อแบบกำหนดเองของโซลูชัน
- ใช้ตัวตรวจสอบโซลูชันเพื่อตรวจสอบโซลูชันของคุณ
- CyberArk การกระทำ
- Azure DevOps งานสแกนข้อมูลประจำตัว
- กำหนดค่าส่วนขยาย Microsoft Security DevOps Azure DevOps
- กำหนดค่าการรักษาความปลอดภัยขั้นสูงของ GitHub สำหรับ Azure DevOps
- คำแนะนำสำหรับการเฝ้าระวังและตรวจจับภัยคุกคาม
- คำแนะนำสำหรับการจัดการข้อมูลประจำตัวและการเข้าถึง
รายการตรวจสอบความปลอดภัย
โปรดดูชุดคำแนะนำทั้งหมด