1 / 29

אבטחת נתונים בסביבת SQL Data Security

אבטחת נתונים בסביבת SQL Data Security. מנגנון להגדרת הרשאות. בסיס הנתונים מספק מנגנון להגדרת הרשאות מגדיר לכל משתמש מה מותר לו מבחינת - * הטבלאות * הפעולות

allene
Download Presentation

אבטחת נתונים בסביבת SQL Data Security

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. אבטחת נתונים בסביבת SQLData Security

  2. מנגנון להגדרת הרשאות • בסיס הנתונים מספק מנגנון להגדרת הרשאות • מגדיר לכל משתמש מה מותר לו מבחינת - * הטבלאות * הפעולות • בנוסף ניתן להשתמש במנגנון הטבלה המדומה: * מגן על שורות מסוימות בתוך הטבלה * בונה הרשאות על צירופים שונים של טבלאות

  3. מנגנון להגדרת הרשאות • תפיסת ההרשאות מבוססת על שלושה מרכיבים: *משתמש (User) וזיהויו *אובייקט (Object) עליו מגינים, כגון: טבלה, טבלה מדומה, אינדקס, תוכנית ישום *זכויות (Privileges) - פעולות שמותר למשתמש לבצע על אובייקט כגון: אחזור, עדכון, הוספה, ביטול

  4. מנגנון להגדרת הרשאות

  5. זיהוי משתמש • לכל משתמש מוקצה שם משתמש חד-ערכי (User-Id): *מוקצה ע”י מנהל בסיס הנתונים * במערכת מסחרית DB2אורך שם המשתמש עד 8 תווים * ב- SQL Server - אורך שם המשתמש עד 30 תווים • לכל משתמש מוקצה סיסמא (Password) • חלק מהמערכות המסחריות לוקחות את שם המשתמש וסיסמתו ישירות ממערכת ההפעלה

  6. שם קבוצה (Group-Id) • ניתן להגדיר שם קבוצה (Group-Id) • מתאים למקרים בהם קבוצת משתמשים מקבלות אותן זכויות גישה

  7. אובייקטים מוגנים • תקן SQL2מרחיב את מושג האובייקטים גם למרחב הערכים (Domain) • במערכת מסחרית Oracleניתן להגן גם על פרוצדורות ואינדקסים • במערכת DB2ניתן להגן על שטחים פיסיים שבהם מאוחסנות טבלאות ומגדיר לאיזה משתמשים מותר להגדיר טבלאות חדשות ובאיזה שטח פיזי

  8. זכויות • זכויות : הפעולות שמותר למשתמש מורשה לבצע על אובייקט מוגן - *בחירה (Select)מתוך טבלה / טבלה מדומה התקן מאפשר גם להגדיר את העמודות בטבלה שמותר למשתמש לשלוף מהם *הוספה (Insert)של שורות חדשות בטבלה/טבלה מדומה *עדכון (Update)של שורות של טבלה/טבלה מדומה התקן מאפשר להגדיר גם את העמודות בטבלה שמותר למשתמש לעדכן

  9. זכויות • ביטול (Delete)של שורות בטבלה / טבלה מדומה • ייחוס (Reference) - זכות להתייחס לעמודות של טבלה בבדיקות תקינות או שלמות קשרים למרות שאינו מורשה לגשת לטבלה זו • REFERENCE privilege allows you to create referential constraints (such as foreign keys) on a database object.

  10. בעל האובייקט (Object Owner) • בהגדרה הראשונה של אובייקט מוצמד לו שם בעל האובייקט • לבעלים מוענק מיידית כל הזכויות לאובייקט שהוא הגדיר • בעל האובייקט יכול: * להעניק זכויות גישה לאובייקט שלו למשתמשים אחרים (פקודתGrant) *לסלק זכויות שהוענקו (פקודת Revoke) • אם משתמש מגדיר טבלה מדומה עליו להיות בעל זכויות גישה לכל טבלאות הבסיס שעליהן מושתתת הטבלה המדומה

  11. הענקת זכויות גישה (Grant)

  12. הענקת זכויות גישה (Grant) - דוגמא

  13. הענקת זכויות גישה (Grant) ,UPDATE

  14. הענקת זכויות גישה (Grant)

  15. תרשים זכויות גישה (Grant Diagram) • משמש להבנת מצב ההרשאות ומי העניק למי אילו זכויות

  16. תרשים זכויות גישה (Grant Diagram) • נניח עכשיו שדן מעניק זכות מחיקה לאבי • אזי עכשיו אבי הוא בעל זכויות שליפה והוספה אותן קבל מזאב וזכות מחיקה אותה קבל מדן

  17. ביטול זכויות גישה (Revoke) • הפרמטרRESTRICTמונע את ביטול זכות הגישה אם קיימת היררכיה של זכויות (ברירת מחדל) • הפרמטרCASCADEמבטל את כל היררכית הזכויות שהוענקו ע”י המשתמש שממנו נלקחו זכויות

  18. ביטול זכויות גישה - דוגמאות

  19. ביטול זכויות גישה - דוגמאות

  20. ביטול זכויות גישה - דוגמאות

  21. ביטול זכויות גישה (Revoke) • נניח שדן וזאב העניקו זכות גישה למשתמש אבי • כעת נבטל את זכות הגישה של זאב ע”י הפקודה: REVOKE SELECT, INSERT ON STUDENTS FROM ZEEV CASCADE • המשתמש אביעדיין יהיה בעל זכויות שליפה אותן קבל גם מדן • נציין שמערכות מסחריות מטפלות בצורה שונה בביטול זכויות בהיררכיה • חלקן מבטלות את כל ההיררכיה וחלקן - לא

  22. הענקת זכויות גישה ברמת ערכים בתוך עמודה • דוגמא: מתן אפשרות למשתמש בטבלת קורסים לשלוף שורות של קורסים מסוג מעבדה בלבד ?

  23. הענקת זכויות גישה ברמת ערכים בתוך עמודה • דוגמא: מתן אפשרות למשתמש בטבלת קורסים לשלוף שורות של קורסים מסוג מעבדה בלבד

  24. טבלאות מדומות ואבטחת נתונים • עכשיו נעניק למשתמש זאב זכות גישה לטבלה מדומה זו • GRANT SELECT ON LAB_COURSES TO ZEEV • מכיוון וטבלה מדומה יכולה להיות מבוססת גם על צירוף בין טבלאות שונות ניתן לתת הרשאות גישה למשתמשים דרך טבלה מדומה שמאחוריה מסתתרות מספר טבלאות בסיס

  25. טבלאות מדומות ואבטחת נתונים • דרך הטבלה המדומה (אם נתנה זכות הוספה) - ניתן לדוגמא להוסיף שורות לטבלאות הבסיס • זאת במגבלות ההגדרה של הטבלה המדומה ((WITH CHECK OPTION

  26. טבלאות מדומות ואבטחת נתונים • לדוגמא: נציג את הטבלה המדומה של ציוני הסטודנטים למדעי המחשב

  27. טבלאות מדומות ואבטחת נתונים • עכשיו נעניק זכות גישה לטבלה המדומה למשתמש דן ואבי GRANT SELECT ON CS_GRADESTO DAN, AVI WITH GRANT OPTION

  28. שאלות • 1. נתונה הטבלה הבאה: עובדים (מס’ עובד, שם עובד, עיר מגורים, כתובת, טלפון) כתוב פקודות SQLהמבצעות: א. הענקת זכות שליפה בלבד למשתמש רונן ב. הענקת זכויות: שליפה, יצירת שורות חדשות וביטול למשתמש אייל היכול מצידו להעניק זכויות גישה נוספות ג. הענקת זכות שליפה לכל העמודות וזכות עדכון לעמודות: עיר מגורים, ו- כתובת למשתמשים רותי ותמי

  29. שאלות • ד. המשתמש אייל מעניק זכויות שליפה וביטול למשתמש יורם היכול להעניק זכויות גישה נוספות ה. המשתמש יורם מעניק זכות שליפה למשתמש אריה. לאריה אסור להעניק זכויות גישה למשתמשים אחרים ו. בטל את כל זכויות הגישה של אייל 2. צייר את תרשים זכויות הגישה המתקבל מסעיפים א-ה 3. כתוב פקודות SQL להענקת זכויות SELECTו- UPDATE לאריה לגבי עובדים שעיר מגוריהם “הרצליה” בלבד

More Related