תופעות
נניח שיש לך הרשאת בחירה בטבלה הכוללת סכימה שאינה של dbo ב-Microsoft SQL Server 2012 או SQL Server 2014. כאשר אתה מבצע שאילתה מתוך התצוגה sys.column_store_segments , העמודה has_nulls, base_id, גודל, min_data_id, max_data_idוnull_value מציגה ערך null .הערה
-
התצוגה sys.column_store_segments מבצעת את בדיקת האבטחה באמצעות הפונקציה הבאה:
HAS_PERMS_BY_NAME ( securable , securable_class , permission [ , sub-securable ] [ , sub-securable_class ] )
-
העמודה has_nulls, base_id, גודל, min_data_id, max_data_idוהnull_value מחזירה ערך null , אלא אם המשתמש בוחר באפשרות הרשאה.
סיבה
הבעיה מתרחשת מאחר שבדיקת האבטחה של התצוגה אינה מתחשבת בסכימה שאינה dbo. לכן, למרות שיש לך הרשאת בחירה בטבלה עם סכימה שאינה dbo, אתה עדיין מקבל ערך NULL מהתצוגה.
פתרון
הבעיה נפתרה לראשונה בעדכון המצטבר הבא של SQL Server.
עדכון מצטבר 2 עבור SQL Server 2012 SP2 /en-us/help/2983175
עדכון מצטבר 12 עבור SQL Server 2012 SP1 /en-us/help/2991533
עדכון מצטבר 3 עבור SQL Server 2014 /en-us/help/2984923
כל עדכון מצטבר חדש עבור SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:
מצב
Microsoft אישרה שזוהי בעיה במוצרי Microsoft המופיעים בסעיף "חל על".