หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
บทบาทความปลอดภัยของ OneLake ควบคุมว่าใครสามารถเข้าถึงข้อมูลในรายการ Fabric ของคุณได้ บางครั้งการอนุญาตหรือปฏิเสธการเข้าถึงทั้งรายการก็หยาบคายเกินไป คุณอาจต้องซ่อนคอลัมน์ที่ละเอียดอ่อน จํากัดแถวที่ผู้ใช้จะเห็น หรือเปิดเผยเฉพาะตารางบางตารางเท่านั้น ภายในบทบาท คุณสามารถปรับแต่งการเข้าถึงได้สามระดับของความละเอียด ได้แก่ ความปลอดภัยระดับวัตถุสําหรับตารางและโฟลเดอร์, ความปลอดภัยระดับคอลัมน์ (CLS) สําหรับแต่ละคอลัมน์ และความปลอดภัยระดับแถว (RLS) สําหรับแต่ละแถว
บทความนี้อธิบายว่าการควบคุมแต่ละตัวทําอะไรและ OneLake บังคับใช้อย่างไร หากต้องการสร้างคอนโทรลเหล่านี้ ดูที่ การสร้างและจัดการบทบาทความปลอดภัยของ OneLake
บทบาทด้านความปลอดภัยของ OneLake ใช้โมเดลการให้สิทธิ์เข้าถึงข้อมูล คุณไม่สามารถปฏิเสธการเข้าถึงที่ได้รับผ่านบทบาทหรือรูปแบบสิทธิ์ที่แตกต่างกันได้ ด้วยเหตุนี้ การควบคุมเหล่านี้จึงไม่จํากัดการเข้าถึงของผู้ใช้ในบทบาทผู้ดูแลระบบ สมาชิก และผู้มีส่วนร่วมในระดับพื้นที่ทํางาน
ความปลอดภัยของตารางและโฟลเดอร์
ความปลอดภัยระดับตารางและระดับโฟลเดอร์ หรือที่เรียกว่าความปลอดภัยระดับวัตถุ (OLS) ช่วยให้คุณอนุญาตให้เข้าถึงตารางหรือโฟลเดอร์เฉพาะในรายการข้อมูล ด้วย OLS คุณจะสร้างสิทธิ์สําหรับทั้งข้อมูลที่มีโครงสร้างและไม่มีโครงสร้างในระดับโฟลเดอร์ เนื่องจากตาราง Delta Parquet ใน OneLake ถูกแสดงเป็นโฟลเดอร์ คุณจึงสามารถรักษาความปลอดภัยตารางได้เหมือนกับการรักษาความปลอดภัยโฟลเดอร์ สคีมาก็เป็นโฟลเดอร์เช่นกัน ดังนั้นคุณสามารถรักษาความปลอดภัยในลักษณะเดียวกันได้
ความปลอดภัยระดับคอลัมน์และระดับแถว
ความปลอดภัยของ OneLake บังคับใช้ความปลอดภัยระดับคอลัมน์และระดับแถวในสองวิธี:
- ตารางกรอง: ผู้ใช้ที่สืบค้นตารางโดยใช้เอนจิน Fabric เช่น โน้ตบุ๊ก Spark หรือเอนจินของบุคคลที่สามที่ได้รับอนุญาต จะเห็นเฉพาะคอลัมน์หรือแถวที่กฎ CLS หรือ RLS อนุญาตเท่านั้น
- ตารางบล็อก: ผู้ใช้ที่สืบค้นตารางโดยใช้เครื่องมือของบุคคลที่สามที่ไม่ได้รับอนุญาตจะไม่สามารถอ่านตารางได้
ความปลอดภัยของ OneLake สามารถบังคับใช้กฎ CLS และ RLS สําหรับโต๊ะ Delta Parquet หรือ โต๊ะ Iceberg แบบเสมือนจริง กฎที่ใช้กับประเภทตารางอื่น ๆ จะบล็อกการเข้าถึงตารางทั้งหมดสําหรับสมาชิกของบทบาทนั้น
หากกฎ CLS หรือ RLS มีความไม่ตรงกันกับตารางที่กําหนดไว้ การสืบค้นจะล้มเหลวและไม่คืนค่าข้อมูล ตัวอย่างเช่น ความไม่ตรงกันเกิดขึ้นเมื่อกฎอ้างอิงถึงคอลัมน์ที่ไม่มีในตาราง
ความปลอดภัยระดับคอลัมน์
ความปลอดภัยระดับคอลัมน์ (CLS) ให้สิทธิ์เข้าถึงคอลัมน์ที่เลือกในตารางแทนตารางเต็ม ข้อมูลในคอลัมน์ที่คุณลบออกจากรายการที่อนุญาตจะไม่ปรากฏให้ผู้ใช้เห็น
สําหรับตารางที่กรองด้วย CLS พฤติกรรมต่อไปนี้จะใช้:
- หากผู้ใช้รัน
select *คําสั่งค้นหาบนตารางที่เข้าถึงได้เพียงบางส่วนของคอลัมน์ กฎ CLS จะทํางานแตกต่างกันขึ้นอยู่กับเอนจิน Fabric:- สมุดบันทึก Spark: การค้นหาสําเร็จและแสดงเฉพาะคอลัมน์ที่อนุญาตเท่านั้น
- ปลายทางการวิเคราะห์ SQL: การค้นหาจะส่งคืนข้อผิดพลาดและบล็อกการเข้าถึงคอลัมน์ที่ผู้ใช้ไม่สามารถเข้าถึงได้
- โมเดลเชิงความหมาย: คําค้นจะคืนค่าข้อผิดพลาดและบล็อกการเข้าถึงคอลัมน์ที่ผู้ใช้ไม่สามารถเข้าถึงได้
- ชื่อของคอลัมน์ที่ปลอดภัยอาจปรากฏในบางประสบการณ์ แต่ค่าข้อมูลจะไม่ปรากฏ
การรักษาความปลอดภัยระดับต่ำ
ความปลอดภัยระดับแถว (RLS) กําหนดข้อจํากัดข้อมูลระดับแถวสําหรับข้อมูลตารางที่จัดเก็บใน OneLake คุณกําหนดบทบาทที่มีกฎสําหรับการกรองแถวข้อมูลสําหรับสมาชิกของบทบาทนั้น เมื่อสมาชิกของบทบาท RLS สอบถามข้อมูล OneLake จะประเมินกฎ RLS และคืนเฉพาะแถวที่อนุญาตเท่านั้น แถวเป็นแนวคิดที่เกี่ยวข้องกับข้อมูลแบบตารางเท่านั้น ดังนั้นคุณไม่สามารถกําหนด RLS สําหรับโฟลเดอร์ที่ไม่ใช่ตารางหรือข้อมูลที่ไม่มีโครงสร้างได้
สําหรับตารางที่กรองด้วย RLS พฤติกรรมต่อไปนี้จะใช้:
- การเข้าถึงตารางอาจถูกบล็อก ถ้าคําสั่ง RLS มีข้อผิดพลาดทางไวยากรณ์ที่ป้องกันไม่ให้มีการประเมิน
สําหรับไวยากรณ์ที่ใช้เขียนกฎ RLS ดูที่ อ้างอิงไวยากรณ์ความปลอดภัยระดับแถว
รวมการรักษาความปลอดภัยระดับแถวและระดับคอลัมน์
การรักษาความปลอดภัยระดับแถวและระดับคอลัมน์สามารถใช้ร่วมกันเพื่อจํากัดการเข้าถึงตารางของผู้ใช้ อย่างไรก็ตาม ต้องมีการใช้นโยบายสองข้อโดยใช้บทบาทความปลอดภัย OneLake เดียว ในสถานการณ์นี้ การเข้าถึงข้อมูลจะถูกจํากัดตามกฎที่กําหนดไว้ในบทบาทเดียว
การรักษาความปลอดภัย OneLake ไม่สนับสนุนการรวมบทบาทสองบทบาทหรือมากกว่าโดยที่บทบาทหนึ่งมีกฎ RLS และอีกอันมีกฎ CLS ผู้ใช้ที่พยายามเข้าถึงตารางที่เป็นส่วนหนึ่งของชุดบทบาทที่ไม่สนับสนุนจะได้รับข้อผิดพลาดในการคิวรี