Modify File Permissions
הפעם נראה כיצד בקלות ניתן לשנות הרשאות של קובץ דרך הקוד. השימוש הוא די קל וברור.
אנו נשתמש במחלקה FileSecurity.
FileSecurity fs =
File.GetAccessControl(this.filename);
אנו בעצם מושכים את המידע עבור הקובץ שאנו רוצים. כעת אנו יכולים או לבדוק את ההרשאות דרך פונקציות שונות במחלקה הזאת, או שניתן לשנות אותן. כדי לשנות נוסיף חוק חדש שאוסר על כולם לקרוא מהקובץ
FileSystemAccessRule ar = new
FileSystemAccessRule("Everyone",
FileSystemRights.FullControl,
AccessControlType.Deny);
המחלקה זאת מקבלת את שם הקבוצה שעליה יחול הכלל - EVERYONE, את סוג הגישה לקובץ -
FULLCONTROL, והאם להרשות/לאסור - DENY
נוסיף את הכלל החדש לרשימת הכללים של הקובץ
fs.AddAccessRule(ar);
כעת רק נשאר לשמור את הכלל החדש
File.SetAccessControl(this.filename, fs);
והתוצאה

כעת כדי להסיר את הכלל שעשינו נבצע את אותו התהליך, רק הפוך
FileSecurity fs = File.GetAccessControl(this.filename);
FileSystemAccessRule ar = new
FileSystemAccessRule("Everyone",
FileSystemRights.FullControl,
AccessControlType.Deny);
fs.RemoveAccessRule(ar );
File.SetAccessControl(this.filename, fs);
שימו לב שבנינו שוב את הכלל הזה שאוסר גישה לקובץ, רק הפעם השתמשנו בפונקציה RemoveAccessRule כדי להוריד אותו מהקובץ
להורדת פרוייקט דוגמה