1. บทนำ
ภาพรวม
ในแล็บนี้ คุณจะลดภัยคุกคามที่พบบ่อยต่อโครงสร้างพื้นฐานของสภาพแวดล้อมการพัฒนา AI คุณใช้การควบคุมความปลอดภัยที่ออกแบบมาเพื่อปกป้องคอมโพเนนต์หลักของสภาพแวดล้อมนี้
บริบท
คุณคือผู้เชี่ยวชาญด้านความปลอดภัยในทีมพัฒนา และเป้าหมายของคุณคือการสร้างสภาพแวดล้อมที่ผสานการใช้งานที่ราบรื่นที่สุดกับการป้องกันภัยคุกคามที่พบบ่อย
ตารางต่อไปนี้แสดงภัยคุกคามที่คุณกังวลมากที่สุดและต้องการลดความเสี่ยง ภัยคุกคามแต่ละอย่างจะได้รับการจัดการโดยงานที่เฉพาะเจาะจงภายในห้องทดลองนี้
ภัยคุกคาม | การลดปัญหา | งานที่ครอบคลุม |
การเข้าสู่เครือข่ายโดยไม่ได้รับอนุญาตผ่านพอร์ตที่เปิดอยู่ซึ่งถูกโจมตี | สร้าง VPC ส่วนตัวและจำกัดการเข้าถึง Vertex AI ให้ผู้ใช้รายเดียวผ่านพร็อกซีของ Google Cloud แทนที่อยู่ IP สาธารณะ | กำหนดค่ารากฐานเครือข่ายที่ปลอดภัย |
การโจมตีเพื่อยกระดับสิทธิ์จากอินสแตนซ์การประมวลผลที่ถูกบุกรุกโดยใช้ข้อมูลเข้าสู่ระบบที่มีสิทธิ์มากเกินไป | สร้างและกำหนดบัญชีบริการที่มีสิทธิ์น้อยที่สุดให้กับอินสแตนซ์ Vertex AI | ติดตั้งใช้งานอินสแตนซ์ Vertex AI Workbench ที่ปลอดภัย |
การยึดครองอินสแตนซ์ของทรัพยากรการประมวลผล ซึ่งนำไปสู่การดัดแปลงระบบ | เพิ่มความปลอดภัยของอินสแตนซ์โดยปิดใช้การเข้าถึงระดับรูทและเปิดใช้การเปิดเครื่องที่ปลอดภัย | ติดตั้งใช้งานอินสแตนซ์ Vertex AI Workbench ที่ปลอดภัย |
การเปิดเผยข้อมูลการฝึกและโมเดลต่อสาธารณะโดยไม่ตั้งใจเนื่องจากการกำหนดค่าพื้นที่เก็บข้อมูลไม่ถูกต้อง | บังคับใช้การป้องกันการเข้าถึงแบบสาธารณะในที่เก็บข้อมูลและใช้การควบคุมการเข้าถึงระดับที่เก็บข้อมูลแบบเดียวกัน | ติดตั้งใช้งานที่เก็บข้อมูล Cloud Storage ที่ปลอดภัย |
การลบหรือการดัดแปลงชุดข้อมูลและอาร์ติแฟกต์ของโมเดลที่เป็นอันตรายหรือโดยไม่ตั้งใจ | เปิดใช้การกำหนดเวอร์ชันออบเจ็กต์สำหรับการกู้คืน และเปิดใช้บันทึกการเข้าถึงข้อมูลสำหรับบันทึกการตรวจสอบที่เปลี่ยนแปลงไม่ได้ของกิจกรรมทั้งหมด | ติดตั้งใช้งานที่เก็บข้อมูล Cloud Storage ที่ปลอดภัย |
ข้อมูลอ้างอิงโดยย่อ
ตลอดแล็บนี้ คุณจะได้ทำงานกับทรัพยากรที่มีชื่อต่อไปนี้
ส่วนประกอบ | ชื่อ |
ชื่อ VPC |
|
ชื่อซับเน็ต |
|
Cloud Router |
|
Cloud NAT |
|
บัญชีบริการ |
|
อินสแตนซ์ Vertex AI |
|
ที่เก็บข้อมูล |
|
สิ่งที่คุณจะได้เรียนรู้
ในแล็บนี้ คุณจะได้เรียนรู้วิธีทำสิ่งต่อไปนี้
- จัดสรร VPC ที่ปลอดภัยด้วยเครือข่ายส่วนตัวเพื่อลดการรับส่งข้อมูลที่ไม่พึงประสงค์
- เสริมความแข็งแกร่งให้กับอินสแตนซ์ Vertex AI Workbench เพื่อป้องกัน Bootkit และการโจมตีเพื่อยกระดับสิทธิ์
- รักษาความปลอดภัยของที่เก็บข้อมูล Cloud Storage เพื่อลดการโอนข้อมูลที่ไม่ได้ตรวจสอบและการเปิดเผยต่อสาธารณะโดยไม่ตั้งใจ
2. การตั้งค่าโปรเจ็กต์
บัญชี Google
หากยังไม่มีบัญชี Google ส่วนบุคคล คุณต้องสร้างบัญชี Google
ใช้บัญชีส่วนตัวแทนบัญชีของที่ทำงานหรือโรงเรียน
ลงชื่อเข้าใช้ Google Cloud Console
ลงชื่อเข้าใช้ Google Cloud Console โดยใช้บัญชี Google ส่วนตัว
เปิดใช้การเรียกเก็บเงิน
แลกรับเครดิต Google Cloud มูลค่า $5 (ไม่บังคับ)
หากต้องการจัดเวิร์กช็อปนี้ คุณต้องมีบัญชีสำหรับการเรียกเก็บเงินที่มีเครดิตอยู่บ้าง หากวางแผนที่จะใช้การเรียกเก็บเงินของคุณเอง ให้ข้ามขั้นตอนนี้
- คลิกลิงก์นี้และลงชื่อเข้าใช้ด้วยบัญชี Google ส่วนบุคคล คุณจะเห็นข้อความคล้ายกับข้อความต่อไปนี้

- คลิกปุ่มคลิกที่นี่เพื่อเข้าถึงเครดิต ระบบจะนำคุณไปยังหน้าเพื่อตั้งค่าโปรไฟล์การเรียกเก็บเงิน

- คลิกยืนยัน
ตอนนี้คุณเชื่อมต่อกับบัญชีสำหรับการเรียกเก็บเงินของ Google Cloud Platform เวอร์ชันทดลองใช้งานแล้ว

ตั้งค่าบัญชีสำหรับการเรียกเก็บเงินส่วนตัว
หากตั้งค่าการเรียกเก็บเงินโดยใช้เครดิต Google Cloud คุณจะข้ามขั้นตอนนี้ได้
หากต้องการตั้งค่าบัญชีสำหรับการเรียกเก็บเงินส่วนตัว ให้ไปที่นี่เพื่อเปิดใช้การเรียกเก็บเงินใน Cloud Console
ข้อควรทราบ
- การทำแล็บนี้ควรมีค่าใช้จ่ายน้อยกว่า $1 USD ในทรัพยากรระบบคลาวด์
- คุณสามารถทำตามขั้นตอนที่ส่วนท้ายของแล็บนี้เพื่อลบทรัพยากรเพื่อหลีกเลี่ยงการเรียกเก็บเงินเพิ่มเติม
- ผู้ใช้ใหม่มีสิทธิ์ใช้ช่วงทดลองใช้ฟรีมูลค่า$300 USD
สร้างโปรเจ็กต์ (ไม่บังคับ)
หากไม่มีโปรเจ็กต์ปัจจุบันที่ต้องการใช้สำหรับแล็บนี้ ให้สร้างโปรเจ็กต์ใหม่ที่นี่
3. เปิดใช้ API
กำหนดค่า Cloud Shell
เมื่อสร้างโปรเจ็กต์เรียบร้อยแล้ว ให้ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่า Cloud Shell
เปิดใช้ Cloud Shell
ไปที่ shell.cloud.google.com และหากเห็นป๊อปอัปขอให้คุณให้สิทธิ์ ให้คลิกให้สิทธิ์
ตั้งค่ารหัสโปรเจ็กต์
เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล Cloud Shell เพื่อตั้งค่ารหัสโปรเจ็กต์ที่ถูกต้อง แทนที่ <your-project-id> ด้วยรหัสโปรเจ็กต์จริงที่คัดลอกจากขั้นตอนการสร้างโปรเจ็กต์ด้านบน
gcloud config set project <your-project-id>
ตอนนี้คุณควรเห็นว่าได้เลือกโปรเจ็กต์ที่ถูกต้องภายในเทอร์มินัล Cloud Shell แล้ว
เปิดใช้ Vertex AI Workbench และ Cloud Storage
หากต้องการใช้บริการในแล็บนี้ คุณต้องเปิดใช้ API สำหรับ Compute Engine, Vertex AI Workbench, IAM และ Cloud Storage ในโปรเจ็กต์ Google Cloud
- เปิดใช้ API ในเทอร์มินัลโดยทำดังนี้
gcloud services enable compute.googleapis.com notebooks.googleapis.com aiplatform.googleapis.com iam.googleapis.com storage.googleapis.com
หรือคุณจะเปิดใช้ API เหล่านี้ได้โดยไปที่หน้าของ API นั้นๆ ในคอนโซล แล้วคลิกเปิดใช้
4. กำหนดค่ารากฐานเครือข่ายที่ปลอดภัย
ในงานนี้ คุณจะได้สร้างสภาพแวดล้อมเครือข่ายที่แยกต่างหากสำหรับบริการทั้งหมด การใช้เครือข่ายส่วนตัวและการควบคุมการไหลของข้อมูลจะช่วยสร้างการป้องกันหลายชั้นเพื่อลดพื้นผิวการโจมตีของโครงสร้างพื้นฐานได้อย่างมากเมื่อเทียบกับทรัพยากรที่เข้าถึงได้แบบสาธารณะ รากฐานเครือข่ายที่ปลอดภัยนี้มีความสำคัญอย่างยิ่งต่อการปกป้องแอปพลิเคชัน AI ของคุณจากการเข้าถึงที่ไม่ได้รับอนุญาต
สร้าง VPC และซับเน็ต
ในขั้นตอนนี้ คุณจะตั้งค่า Virtual Private Cloud (VPC) และซับเน็ต ซึ่งจะสร้างสภาพแวดล้อมเครือข่ายที่แยกจากกัน ซึ่งเป็นด่านแรกในการป้องกันการรับส่งข้อมูลเครือข่ายที่ไม่ได้รับอนุญาต
- ใน Google Cloud Console ให้ไปที่เครือข่าย VPC > เครือข่าย VPC ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "เครือข่าย VPC" แล้วเลือก
- คลิกสร้างเครือข่าย VPC
- ในส่วนชื่อ ให้ป้อน
genai-secure-vpc - สำหรับโหมดการสร้างซับเน็ต ให้เลือกกำหนดเอง
- ในส่วนซับเน็ตใหม่ ให้ระบุพร็อพเพอร์ตี้ต่อไปนี้เพื่อสร้างซับเน็ต
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
ชื่อ
genai-subnet-us-central1ภูมิภาค
us-central1ช่วงที่อยู่ IP
10.0.1.0/24การเข้าถึง Google แบบส่วนตัว
เปิด
- คลิกสร้าง
สร้างเกตเวย์ Cloud NAT
เกตเวย์ Cloud NAT ช่วยให้อินสแตนซ์ส่วนตัวเริ่มการเชื่อมต่อขาออกได้ (เช่น สำหรับการอัปเดตซอฟต์แวร์) โดยไม่ต้องมีที่อยู่ IP สาธารณะ ซึ่งหมายความว่าอินเทอร์เน็ตสาธารณะไม่สามารถเริ่มการเชื่อมต่อกับอินสแตนซ์เหล่านั้นได้
- ก่อนอื่น ให้สร้าง Cloud Router ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "Cloud Router" แล้วเลือก
- คลิกสร้างเราเตอร์
- กำหนดค่า Cloud Router ด้วยข้อมูลต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
ชื่อ
genai-router-us-central1เครือข่าย
genai-secure-vpc(เครือข่าย VPC ที่คุณเพิ่งสร้าง)ภูมิภาค
us-central1 - คลิกสร้าง
- จากนั้นไปที่บริการเครือข่าย > Cloud NAT ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "Cloud NAT" แล้วเลือก
- คลิกเริ่มต้นใช้งาน
- กำหนดค่าเกตเวย์ Cloud NAT ด้วยข้อมูลต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
ชื่อเกตเวย์
genai-nat-us-central1เครือข่าย VPC
genai-secure-vpc(เครือข่าย VPC ที่คุณสร้าง)ภูมิภาค
us-central1Cloud Router
genai-router-us-central1(เราเตอร์ที่คุณเพิ่งตั้งค่า) - คลิกสร้าง
5. ทําให้อินสแตนซ์ Vertex AI Workbench ที่ปลอดภัยใช้งานได้
เมื่อมีรากฐานเครือข่ายที่ปลอดภัยแล้ว คุณก็สามารถติดตั้งใช้งานอินสแตนซ์ Vertex AI Workbench ที่ได้รับการเสริมความแข็งแกร่งภายใน VPC ที่ปลอดภัยได้ อินสแตนซ์ Workbench นี้จะทำหน้าที่เป็นสภาพแวดล้อมในการพัฒนาของคุณ โดยมีพื้นที่ที่ปลอดภัยและแยกไว้ต่างหากสำหรับงานพัฒนา AI การกำหนดค่าเครือข่ายก่อนหน้านี้ช่วยให้มั่นใจได้ว่าอินสแตนซ์นี้จะไม่ได้รับการเปิดเผยต่ออินเทอร์เน็ตสาธารณะโดยตรง ซึ่งเป็นการต่อยอดจากการป้องกันหลายชั้น
สร้างบัญชีบริการที่มีสิทธิ์น้อยที่สุด
การสร้างบัญชีบริการเฉพาะที่มีสิทธิ์น้อยที่สุดที่จำเป็นจะรองรับหลักการให้สิทธิ์ขั้นต่ำที่สุด หากอินสแตนซ์ถูกบุกรุก แนวทางปฏิบัตินี้จะจำกัด "รัศมีการระเบิด" โดยทำให้มั่นใจว่าอินสแตนซ์จะเข้าถึงได้เฉพาะทรัพยากรและดำเนินการที่จำเป็นอย่างชัดเจนสำหรับฟังก์ชันของอินสแตนซ์เท่านั้น
- จาก Google Cloud Console ให้ไปที่ IAM และผู้ดูแลระบบ > บัญชีบริการ ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "บัญชีบริการ" แล้วเลือก
- คลิกสร้างบัญชีบริการ
- ในส่วนชื่อบัญชีบริการ ให้ป้อน
vertex-workbench-sa - คลิกสร้างและต่อไป
- มอบหมายบทบาทต่อไปนี้
Vertex AI UserStorage Object Creator
- คลิกเสร็จสิ้น
สร้างอินสแตนซ์ Workbench
ในขั้นตอนนี้ คุณจะปรับใช้อินสแตนซ์ Vertex AI Workbench อินสแตนซ์นี้ได้รับการกำหนดค่าให้ทำงานภายใน VPC ส่วนตัวที่คุณสร้างไว้ก่อนหน้านี้ ซึ่งจะแยกอินสแตนซ์ออกจากอินเทอร์เน็ตสาธารณะเพิ่มเติม นอกจากนี้ คุณยังใช้มาตรการเพิ่มความปลอดภัยเพิ่มเติมกับอินสแตนซ์ได้โดยตรงด้วย
- จากเมนูการนำทางของ Google Cloud Console (เมนูแฮมเบอร์เกอร์) ให้ไปที่ Vertex AI > Workbench ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "Workbench" แล้วเลือกผลการค้นหาที่มี "Vertex AI" เป็นคำบรรยายแทน
- คลิกสร้างใหม่ แล้วกำหนดค่าดังนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
ชื่อ
secure-genai-instanceภูมิภาค
us-central1 - คลิกตัวเลือกขั้นสูง
- คลิกประเภทเครื่อง แล้วเลือกช่องทําเครื่องหมายสําหรับรายการต่อไปนี้
- การเปิดเครื่องที่ปลอดภัย
- Trusted Platform Module แบบเสมือน (vTPM)
- การตรวจสอบความสมบูรณ์
- คลิกเครือข่ายและกำหนดค่าต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
เครือข่าย
genai-secure-vpcเครือข่ายย่อย
genai-subnet-us-central1(10.0.1.0/24)กำหนดที่อยู่ IP ภายนอก
ยกเลิกการเลือก เนื่องจากคุณเข้าถึงอินสแตนซ์นี้ผ่านพร็อกซีใน Google Cloud เท่านั้น
- คลิก IAM และความปลอดภัย แล้วกำหนดค่าต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
อีเมลผู้ใช้
ผู้ใช้รายเดียว แล้วเลือกอีเมลที่คุณใช้ลงชื่อเข้าใช้ Google Cloud อยู่ในปัจจุบัน
ใช้บัญชีบริการ Compute Engine เริ่มต้น
ยกเลิกการเลือกช่องทำเครื่องหมาย
อีเมลบัญชีบริการ
ป้อนอีเมลที่สร้างขึ้นสำหรับบัญชีบริการที่มีสิทธิ์น้อยที่สุด (แทนที่
[PROJECT_ID]ด้วยรหัสจริงของคุณ):vertex-workbench-sa@[PROJECT_ID].iam.gserviceaccount.comสิทธิ์เข้าถึงรูทในอินสแตนซ์
ยกเลิกการเลือกช่องทำเครื่องหมาย
- คลิกสร้าง
เข้าถึงอินสแตนซ์ Vertex AI
ตอนนี้อินสแตนซ์ Vertex AI Workbench ของคุณพร้อมใช้งานแล้ว คุณสามารถเข้าถึงอินสแตนซ์ได้อย่างปลอดภัย คุณเชื่อมต่อกับอินสแตนซ์ผ่านพร็อกซีของ Google Cloud เพื่อให้มั่นใจว่าอินสแตนซ์จะยังคงเป็นส่วนตัวและไม่ได้รับการเปิดเผยต่ออินเทอร์เน็ตสาธารณะ ซึ่งจะช่วยจำกัดความเสี่ยงของการรับส่งข้อมูลที่ไม่พึงประสงค์และอาจเป็นอันตราย
- ไปที่ Vertex AI > Workbench คุณอาจอยู่ในหน้านี้อยู่แล้วหากอินสแตนซ์เพิ่งจัดสรรเสร็จ หากไม่เห็น คุณสามารถใช้เมนูการนำทางของ Google Cloud Console (เมนูแฮมเบอร์เกอร์) หรือแถบค้นหาเพื่อไปยังส่วนดังกล่าว
- ค้นหาอินสแตนซ์ที่ชื่อ
secure-genai-instanceในรายการ - คลิกลิงก์เปิด JupyterLab ทางด้านขวาของอินสแตนซ์
ซึ่งจะเปิดแท็บใหม่ในเบราว์เซอร์เพื่อให้คุณเข้าถึงอินสแตนซ์ได้ คุณมีสิทธิ์เข้าถึงผ่าน Google Cloud แต่ระบบจะไม่เปิดเผยอินสแตนซ์ต่ออินเทอร์เน็ตสาธารณะ ซึ่งจะช่วยลดความเสี่ยงของการเข้าชมที่ไม่พึงประสงค์และอาจเป็นอันตราย
6. ติดตั้งใช้งานที่เก็บข้อมูล Cloud Storage ที่ปลอดภัย
ตอนนี้คุณสร้างที่เก็บข้อมูล Cloud Storage ที่ปลอดภัยสำหรับชุดข้อมูล ซึ่งเป็นตำแหน่งที่จัดเก็บข้อมูลการฝึก AI, โมเดล และอาร์ติแฟกต์ การใช้การกำหนดค่าความปลอดภัยที่รัดกุมกับที่เก็บข้อมูลนี้จะช่วยป้องกันไม่ให้ข้อมูลที่มีความละเอียดอ่อนเผยแพร่ต่อสาธารณะโดยไม่ตั้งใจ และป้องกันการลบและการดัดแปลงที่เป็นอันตรายหรือโดยไม่ตั้งใจ ซึ่งจะช่วยรักษาความสมบูรณ์และความลับของชิ้นงาน AI ที่มีค่าของคุณ
สร้างและกำหนดค่าที่เก็บข้อมูล
ในขั้นตอนนี้ คุณจะได้สร้างที่เก็บข้อมูล Cloud Storage และใช้การตั้งค่าความปลอดภัยเริ่มต้น การตั้งค่าเหล่านี้จะบังคับใช้การป้องกันการเข้าถึงแบบสาธารณะและเปิดใช้การควบคุมการเข้าถึงระดับที่เก็บข้อมูลแบบเดียวกัน ซึ่งมีความสำคัญอย่างยิ่งในการควบคุมผู้ที่เข้าถึงข้อมูลของคุณได้
- จาก Google Cloud Console ให้ไปที่ Cloud Storage > ที่เก็บข้อมูล ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "Buckets" แล้วเลือก
- คลิกสร้าง
- ในส่วนเริ่มต้นใช้งาน ให้ตั้งค่าชื่อเป็น
secure-genai-artifacts-[PROJECT_ID]โดยแทนที่[PROJECT_ID]ด้วยรหัสโปรเจ็กต์ Google Cloud จริงของคุณ - ไปที่เลือกตำแหน่งที่จะจัดเก็บข้อมูล แล้วกำหนดค่าต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
ประเภทสถานที่ตั้ง
ภูมิภาค
ภูมิภาค
us-central1 - ไปที่เลือกวิธีจัดเก็บข้อมูล แล้วใช้การตั้งค่าเริ่มต้น
- ไปที่เลือกวิธีควบคุมการเข้าถึงออบเจ็กต์และคงการตั้งค่าเริ่มต้นไว้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
เหตุผล
ป้องกันการเข้าถึงแบบสาธารณะ
เลือกบังคับใช้การป้องกันการเข้าถึงแบบสาธารณะไว้
การป้องกันการเข้าถึงแบบสาธารณะจะลบล้างการเปลี่ยนแปลงใดๆ ใน IAM ที่อาจทําให้ออบเจ็กต์เปิดเผยต่ออินเทอร์เน็ตโดยไม่ตั้งใจ
การควบคุมการเข้าถึง
เลือกแบบเดียวกันไว้
แม้ว่า ACL จะดูเหมือนเป็นตัวเลือกที่ดีกว่าสำหรับการควบคุมแบบละเอียด ซึ่งเป็นสิทธิ์ขั้นต่ำ แต่ก็ทำให้เกิดความซับซ้อนและคาดเดาไม่ได้เมื่อใช้ร่วมกับฟีเจอร์ IAM อื่นๆ พิจารณาข้อดีข้อเสียของสิทธิ์เข้าถึงระดับที่เก็บข้อมูลแบบเดียวกันเพื่อป้องกันการเปิดเผยข้อมูลโดยไม่ตั้งใจ
- ไปที่เลือกวิธีปกป้องข้อมูลออบเจ็กต์และใช้การตั้งค่าเริ่มต้นต่อไปนี้
พร็อพเพอร์ตี้
ค่า (พิมพ์หรือเลือก)
เหตุผล
นโยบายการลบแบบไม่ถาวร (สำหรับการกู้คืนข้อมูล)
เลือกนโยบายการลบแบบไม่ถาวร (สำหรับการกู้คืนข้อมูล) ไว้
ในกรณีที่มีการลบในที่เก็บข้อมูลโดยไม่ตั้งใจหรือโดยเจตนาร้าย การลบแบบไม่สมบูรณ์จะช่วยให้คุณกู้คืนเนื้อหาได้ภายในระยะเวลาเก็บรักษา
การกำหนดเวอร์ชันออบเจ็กต์ (สำหรับการควบคุมเวอร์ชัน)
เลือกการกำหนดเวอร์ชันออบเจ็กต์ (สำหรับการควบคุมเวอร์ชัน)
การควบคุมเวอร์ชันของออบเจ็กต์ช่วยให้กู้คืนจากการเขียนทับโดยไม่ตั้งใจหรือการเขียนทับที่เป็นอันตรายได้ เช่น หากผู้โจมตีแทนที่ไฟล์ที่ไม่มีอันตรายด้วยไฟล์ที่มีโค้ดช่องโหว่
จำนวนเวอร์ชันสูงสุดต่อออบเจ็กต์
3
แม้ว่าค่านี้จะเป็นค่าที่กำหนดขึ้นเองและอาจเพิ่มต้นทุน แต่ค่านี้ต้องมากกว่า 1 เพื่อให้คุณย้อนกลับไปใช้เวอร์ชันก่อนหน้าได้ หากผู้โจมตีอาจพยายามเขียนทับหลายครั้ง คุณอาจต้องใช้กลยุทธ์การสำรองข้อมูลและการควบคุมเวอร์ชันที่แข็งแกร่งกว่า
หมดอายุเวอร์ชันที่ไม่อัปเดตหลังจาก
7
7 วันคือระยะเวลาที่แนะนำในการเก็บเวอร์ชันเก่าไว้ แต่จำนวนนี้อาจมากกว่านั้นสำหรับการจัดเก็บระยะยาว
- คลิกสร้าง
- หากป๊อปอัปปรากฏขึ้นพร้อมข้อความ "ระบบจะป้องกันการเข้าถึงแบบสาธารณะ" ให้เลือกช่องเริ่มต้น ("บังคับใช้การป้องกันการเข้าถึงแบบสาธารณะในที่เก็บข้อมูลนี้") และคลิกยืนยัน
เปิดใช้การคุ้มครองและการบันทึกข้อมูล
คุณเปิดใช้การควบคุมเวอร์ชันออบเจ็กต์และกำหนดค่าบันทึกการเข้าถึงข้อมูลสำหรับที่เก็บข้อมูลเพื่อให้มั่นใจว่าข้อมูลจะไม่เปลี่ยนแปลงและตรวจสอบได้ การควบคุมเวอร์ชันของออบเจ็กต์ช่วยให้กู้คืนจากการลบหรือเขียนทับโดยไม่ตั้งใจได้ ส่วนบันทึกการเข้าถึงข้อมูลจะแสดงเส้นทางการตรวจสอบที่ครอบคลุมกิจกรรมทั้งหมดในที่เก็บข้อมูล ซึ่งจำเป็นต่อการตรวจสอบความปลอดภัยและการปฏิบัติตามข้อกำหนด
- จาก Google Cloud Console ให้ไปที่ IAM และผู้ดูแลระบบ > บันทึกการตรวจสอบ ใช้แถบค้นหาที่ด้านบนของ Google Cloud Console เพื่อค้นหา "บันทึกการตรวจสอบ" แล้วเลือก
- ใช้การค้นหาตัวกรองเพื่อค้นหาและเลือก Google Cloud Storage
- ในแผงที่ปรากฏขึ้น ให้เลือกช่องสำหรับทั้งการอ่านข้อมูลและการเขียนข้อมูล
- คลิกบันทึก
7. จากห้องทดลองสู่ความเป็นจริง
คุณเพิ่งทำตามขั้นตอนต่างๆ ในสภาพแวดล้อมของห้องทดลองชั่วคราว แต่หลักการและการกำหนดค่าที่คุณใช้เป็นพิมพ์เขียวสำหรับการรักษาความปลอดภัยของโปรเจ็กต์ AI ในโลกจริงบน Google Cloud ต่อไปนี้คือวิธีนำสิ่งที่ได้เรียนรู้ไปปรับใช้กับงานของคุณเอง โดยเปลี่ยนจากการตั้งค่าในห้องทดลองแบบง่ายๆ ไปเป็นการตั้งค่าที่พร้อมใช้งานจริง
ให้คิดว่าทรัพยากรที่คุณเพิ่งสร้างขึ้น ไม่ว่าจะเป็น VPC ส่วนตัว อินสแตนซ์ Workbench ที่ได้รับการเสริมความแข็งแกร่ง และที่เก็บข้อมูลที่ปลอดภัย เป็นเทมเพลตเริ่มต้นที่ปลอดภัยสำหรับโปรเจ็กต์ AI ใหม่ๆ เป้าหมายของคุณคือการทำให้รากฐานที่ปลอดภัยนี้เป็นค่าเริ่มต้นและเป็นเส้นทางที่ง่ายสำหรับคุณและทีม
เครือข่ายที่ปลอดภัย: พื้นที่ทำงานส่วนตัว
วิธีใช้ในการตั้งค่า
ทุกครั้งที่คุณเริ่มโปรเจ็กต์ AI ใหม่ (เช่น "customer-churn-prediction," "image-classification-model") คุณจะต้องจำลองการตั้งค่าเครือข่ายนี้ คุณจะสร้าง VPC เฉพาะ (churn-pred-vpc) หรือใช้เครือข่ายที่แชร์ซึ่งได้รับอนุมัติล่วงหน้า ซึ่งจะกลายเป็น "แซนด์บ็อกซ์" ที่แยกจากกันของโปรเจ็กต์ สภาพแวดล้อมในการพัฒนา เช่น Vertex AI Workbench ที่คุณกำหนดค่าไว้ จะอยู่ในพื้นที่ที่ได้รับการปกป้องนี้ คุณจะเชื่อมต่อกับอินสแตนซ์ผ่านพร็อกซีที่ปลอดภัย (เปิด JupyterLab) โดยไม่เปิดเผยต่ออินเทอร์เน็ตสาธารณะ
การเชื่อมต่อกับเวอร์ชันที่ใช้งานจริง
ในสภาพแวดล้อมการใช้งานจริง คุณจะต่อยอดแนวคิดนี้ได้โดยพิจารณาสิ่งต่อไปนี้
- โครงสร้างพื้นฐานเป็นโค้ด (IaC): คุณจะกำหนดเครือข่ายนี้โดยใช้เครื่องมือต่างๆ เช่น Terraform หรือ Cloud Deployment Manager แทนการใช้ Cloud Console ซึ่งช่วยให้คุณติดตั้งใช้งานรากฐานเครือข่ายที่ปลอดภัยสำหรับโปรเจ็กต์ใหม่ได้ภายในไม่กี่นาที และมั่นใจได้ว่าทำซ้ำและตรวจสอบได้
- VPC ที่แชร์: ในองค์กรขนาดใหญ่ ทีมเครือข่ายส่วนกลางมักจะจัดการ VPC ที่แชร์ ในฐานะนักพัฒนาแอป คุณจะได้รับสิทธิ์ในการเปิดใช้อินสแตนซ์และบริการในซับเน็ตที่เฉพาะเจาะจงภายในเครือข่ายที่ปลอดภัยซึ่งได้รับการจัดการจากส่วนกลางนั้น หลักการยังคงเหมือนเดิม นั่นคือคุณยังคงดำเนินการในพื้นที่ส่วนตัว แต่เป็นส่วนหนึ่งของโครงสร้างพื้นฐานที่ใหญ่ขึ้นและใช้ร่วมกัน
- การควบคุมบริการ VPC: เพื่อความปลอดภัยสูงสุด คุณควรห่อหุ้มสภาพแวดล้อมทั้งหมดนี้ในขอบเขตการควบคุมบริการ VPC นี่เป็นฟีเจอร์ที่มีประสิทธิภาพซึ่งป้องกันการขโมยข้อมูลด้วยการตรวจสอบว่าทรัพยากรที่ได้รับอนุญาตภายในขอบเขตเครือข่ายส่วนตัวเท่านั้นที่จะเข้าถึงบริการต่างๆ เช่น Cloud Storage ได้
การประมวลผลที่เสริมความแข็งแกร่ง: ศูนย์กลางการพัฒนาและการฝึกอบรมที่ปลอดภัย
วิธีใช้ในการตั้งค่า
secure-genai-instance คือเครื่องมือพัฒนา AI ที่คุณใช้ในแต่ละวัน คุณจะใช้อินเทอร์เฟซ JupyterLab เพื่อทำสิ่งต่อไปนี้
- เขียนและทดสอบโค้ดโมเดลใน Notebook
- ติดตั้งไลบรารี Python (
pip install ...) - ทดลองใช้ชุดข้อมูลขนาดเล็กถึงปานกลาง ความปลอดภัยที่คุณกำหนดค่า (ไม่มี IP สาธารณะ, บัญชีบริการที่มีสิทธิ์น้อยที่สุด, ไม่มีสิทธิ์เข้าถึงระดับรูท, การบูตอย่างปลอดภัย) จะทำงานอย่างโปร่งใสในเบื้องหลัง คุณจึงมุ่งเน้นที่งาน AI ได้โดยไม่ต้องกังวลว่าอินสแตนซ์จะได้รับการเสริมความแข็งแกร่งเพื่อป้องกันการโจมตีที่พบบ่อย
การเชื่อมต่อกับเวอร์ชันที่ใช้งานจริง
โดยปกติแล้ว คุณไม่ควรเรียกใช้การฝึกขนาดใหญ่ในอินสแตนซ์ Workbench เดียวในการใช้งานจริง แต่คุณสามารถนำงานไปใช้จริงได้ด้วยวิธีต่อไปนี้
- จาก Notebook ไปยังไปป์ไลน์: คุณจะนำโค้ดจาก Notebook มาจัดรูปแบบเป็นสคริปต์ จากนั้นจะเรียกใช้สคริปต์นี้เป็นงานการฝึกแบบกำหนดเองของ Vertex AI หรือเป็นขั้นตอนในไปป์ไลน์ Vertex AI
- การทำคอนเทนเนอร์: คุณจะแพ็กเกจโค้ดการฝึกและทรัพยากร Dependency ลงในคอนเทนเนอร์ Docker และจัดเก็บไว้ใน Artifact Registry ซึ่งจะช่วยให้มั่นใจได้ว่าโค้ดจะทำงานในสภาพแวดล้อมที่สอดคล้องและคาดการณ์ได้ทุกครั้ง
- บัญชีบริการเป็นสิ่งสำคัญ: บัญชีบริการ
vertex-workbench-saที่คุณสร้างขึ้นมีความสำคัญอย่างยิ่ง ในเวอร์ชันที่ใช้งานจริง งานการฝึก Vertex AI อัตโนมัติจะทํางานโดยใช้บัญชีบริการที่มีสิทธิ์น้อยที่สุดเดียวกันนี้ (หรือบัญชีที่คล้ายกัน) เพื่อให้มั่นใจว่างานอัตโนมัติจะมีเฉพาะสิทธิ์ที่จําเป็นอย่างยิ่งเท่านั้น
ที่เก็บข้อมูลที่ปลอดภัย: ที่เก็บอาร์ติแฟกต์ส่วนกลาง
วิธีใช้ในการตั้งค่า
secure-genai-artifacts บัคเก็ตคือแหล่งข้อมูลที่ถูกต้องแห่งเดียวสำหรับข้อมูลของโปรเจ็กต์ ซึ่งไม่ได้ใช้กับชุดข้อมูลเริ่มต้นเท่านั้น คุณจะใช้เพื่อจัดเก็บสิ่งต่อไปนี้
- ข้อมูลการฝึกดิบและที่ประมวลผลล่วงหน้า
- จุดตรวจสอบโมเดลระหว่างการฝึกที่ใช้เวลานาน
- อาร์ติแฟกต์ของโมเดลที่ฝึกแล้วขั้นสุดท้าย (ไฟล์
.pkl,.pbหรือ.h5) - ผลการประเมินและบันทึก การตั้งค่าความปลอดภัยที่คุณใช้ (การป้องกันการเข้าถึงแบบสาธารณะ, การเข้าถึงระดับที่เก็บข้อมูลแบบเดียวกัน, การควบคุมเวอร์ชัน และการบันทึกการตรวจสอบ) หมายความว่าคุณใช้ที่เก็บข้อมูลนี้เป็นที่เก็บข้อมูลส่วนกลางได้อย่างมั่นใจ โดยได้รับการปกป้องจากการรั่วไหลและการลบโดยไม่ตั้งใจ
การเชื่อมต่อกับเวอร์ชันที่ใช้งานจริง
หากต้องการจัดการและควบคุมหลักการในสภาพแวดล้อมการใช้งานจริง คุณควรพิจารณาสิ่งต่อไปนี้ด้วย
- นโยบายวงจร: หากต้องการจัดการค่าใช้จ่าย คุณจะต้องตั้งค่านโยบายวงจรเพื่อย้ายเวอร์ชันโมเดลหรือชุดข้อมูลที่เก่ากว่าไปยังคลาสพื้นที่เก็บข้อมูลที่ถูกกว่า (เช่น Nearline หรือ Coldline) โดยอัตโนมัติ หรือลบออกหลังจากผ่านไประยะเวลาหนึ่ง
- สิทธิ์ข้ามโปรเจ็กต์: ในไปป์ไลน์การผลิต ทีมวิศวกรรมข้อมูลอาจป้อนข้อมูลลงในที่เก็บข้อมูลนี้จากโปรเจ็กต์ Google Cloud อื่น การเข้าถึงระดับที่เก็บข้อมูลแบบเดียวกันที่คุณเปิดใช้จะช่วยให้การจัดการสิทธิ์ IAM ข้ามโปรเจ็กต์เหล่านี้เป็นเรื่องง่ายและปลอดภัย โดยไม่ต้องใช้ ACL ที่ซับซ้อน (และจึงกำหนดค่าผิดได้ง่าย)
ภาพรวม: การตั้งค่าความปลอดภัยเป็นค่าเริ่มต้น
การใช้โมเดลนี้จะช่วยเปลี่ยนระดับความปลอดภัยจากสิ่งที่ต้องพิจารณาในภายหลังให้กลายเป็นรากฐาน คุณไม่ได้เป็นเพียงนักพัฒนาซอฟต์แวร์อีกต่อไป แต่เป็นแชมป์ด้านความปลอดภัยของทีม เมื่อมีสมาชิกในทีมรายใหม่เข้าร่วม คุณจะไม่มอบเครื่องที่ไม่ปลอดภัยและหันหน้าสู่สาธารณะให้ คุณให้สิทธิ์เข้าถึงสภาพแวดล้อมที่ปลอดภัยและกำหนดค่าไว้ล่วงหน้า ซึ่งวิธีทำงานที่ปลอดภัยก็เป็นวิธีที่ง่ายที่สุดด้วย แนวทางนี้ช่วยลดความเสี่ยงทางธุรกิจโดยตรงด้วยการป้องกันสาเหตุทั่วไปของการละเมิดข้อมูลและการประนีประนอมระบบ ซึ่งช่วยให้ทีมของคุณสร้างสรรค์และสร้างแอปพลิเคชัน AI ที่มีประสิทธิภาพได้อย่างมั่นใจ
8. ยินดีด้วย
ยินดีด้วย คุณสร้างและตรวจสอบโครงสร้างพื้นฐานที่ปลอดภัยแบบหลายชั้นสำหรับสภาพแวดล้อมการพัฒนา AI เรียบร้อยแล้ว คุณสร้างขอบเขตเครือข่ายที่ปลอดภัยด้วยท่าทางไฟร์วอลล์ "ปฏิเสธโดยค่าเริ่มต้น" ได้ติดตั้งอินสแตนซ์การประมวลผลที่ได้รับการเสริมความแข็งแกร่ง รักษาความปลอดภัยของที่เก็บข้อมูล และใช้บันทึกเพื่อยืนยันว่าการควบคุมทำงานได้ตามที่ต้องการทุกประการ
สรุป
ในห้องทดลองนี้ คุณได้ทำสิ่งต่อไปนี้
- จัดสรร VPC ที่ปลอดภัยด้วยเครือข่ายส่วนตัวเพื่อลดการรับส่งข้อมูลที่ไม่พึงประสงค์
- ติดตั้งใช้งานอินสแตนซ์ Vertex AI Workbench ที่ได้รับการเสริมความแข็งแกร่งเพื่อป้องกัน Bootkit และการโจมตีเพื่อยกระดับสิทธิ์
- รักษาความปลอดภัยให้ที่เก็บข้อมูล Cloud Storage เพื่อลดการโอนข้อมูลที่ไม่ได้ตรวจสอบและการเปิดเผยต่อสาธารณะโดยไม่ตั้งใจ
- ใช้บัญชีบริการที่มีสิทธิ์ขั้นต่ำเพื่อจำกัด "รัศมีการระเบิด" ที่อาจเกิดขึ้น
- เปิดใช้การกำหนดเวอร์ชันของออบเจ็กต์และบันทึกการเข้าถึงข้อมูลเพื่อการคุ้มครองข้อมูลและเส้นทางการตรวจสอบที่ไม่เปลี่ยนแปลง