הרשאות ברמת שורה: Row Level Permission

יום חמישי, פברואר 12, 2015

בעוונותי, רק לפני מספר חודשים התחלתי להשתמש בסמארטפון, ואני מרגיש כמו דוב המנגן בפסנתר בשעה שאני מקליד: מנסה לנגן “דו” בכפו המגושמת, ומקבל קקפוניה שלמה. מה רבה הייתה שמחתי עת גיליתי לאחרונה שניתן להתחבר מהמחשב האישי ל-”ווצאפ”, ולרכל ולקשקש הבלים כמשתמש מיומן.בצד ההקלה הטכנית שבדבר יש כאן חידוש בכך שלראשונה ישום שנועד לסמארטפון זכה לשידרוג לגרסת PC (ולא להיפך).כל זה אינו אלא הקדמה ל-feature הנ”ל : עד כה התרגלנו שבגרסאות הרגילות של SQL Server מופיעים חידושים כאלה ואחרים, ואילו ב-Azure מדדים הרחק מאחור ומנסים לצמצם פערים, אך הנה בגרסה האחרונה של Azure – לא רק שהתיימרו להשלים את כל...
אין תגובות

הרשאות חסר ויתר בהרצת קוד דינמי

יום חמישי, נובמבר 14, 2013

הפוסט הזה הוא בהמשך לקודם שסיכם את ההרצאה ב-ISUG. בין היתר הוצע שם פתרון לבעיית ההרשאות בפרוצדורות הכוללות קוד דינמי (שאינו מקבל בירושה את ההרשאה לפרוצדורה) בעזרת Execute As Owner או כל הרשאה אחרת שתאפשר את הקוד הדינמי. כמקובל בעולמנו – לפתרון הזה יש חסרונות משלו, למשל – המשתמש מאבד את זהותו וכעת המערכת תזהה אותו בתור dbo או מישהו אחר, וזה יאפשר לו להגיע למידע שהוא לא אמור היה להגיע אליו. דוגמה שתבהיר את הבעייה המקורית, את הפתרון, את הבעייה בפתרון, ואת הפתרון לבעייה בפתרון.. נתחיל מליצור Login ו-User מעוטי הרשאות להמחשה: --Mixed mode!Use tempdb;Go If Exists (Select...
אין תגובות

הרשאות צפיה בטבלאות מערכת

יום ראשון, ינואר 16, 2011

הרשאה לעיין בטבלאות המערכת או באובייקטים כדוגמת פרוצדורות ו-Views ניתנת על ידי View Definition. ניצור Login ו-User ב-tempdb, ופרוצדורה סתמית לצורך ההדגמה: Use tempdb; Go   Create Login MyLogin With Password='1234',Check_Policy=Off; Go   Create User MyUser For Login MyLogin; Go   Create Proc MyProc As Select GetDate() Taarih; Go כעת ננסה לעיין בטבלת המערכת sys.objects ולקבל את ההגדרה...
אין תגובות

הרשאות ל-Agent ול-Jobs

יום חמישי, אוקטובר 14, 2010

כל עוד יש שניים-שלושה מפתחים על שרתי הארגון – מקובל לתת לכולם הרשאות sa מלאות בלי להסתבך יותר מדי, אך כשמדובר בארגונים גדולים ובצוותים גדולים – זה כבר לא ראוי: המפתחים יקבלו הרשאות dbo מלאות על הדטבייס שעליו הם עובדים ותו לא, וזה יספיק לטיפול בטבלאות, בפרוצדורות, באינדקסים וכו'. הבעייה שצריך לטפל גם באובייקטים שהם ברמת השרת, למשל – יצירה והפעלה של ג'ובים, וללא הרשאות מתאימות לא ניתן אף לראות אותם (תחת Agent). ההרשאות לטיפול ב-Agent ובג'ובים הם בדטבייס msdb בו גם נמצאות כל טבלאות המערכת הרלוונטיות, ויש שלוש אופציות רלוונטיות:...