Default schema för SQL Server användargrupper

Oopps! Upgrade your browser pretty please. Oopps! Upgrade your browser pretty please.

Till min förvåning ser jag att “default schema för windows AD grupper i SQL Server”-problemet ännu inte blivit löst. Det är kvar även i SQL Server 2008 R2!

I och för sig inte ett lätt problem att lösa, men ändå ett viktigt sådant för att underlätta för alla administratörs-DBA:er “out there” att hålla en bra och sund säkerhetsstruktur för sina databasanvändare/grupper. Problemet är att det inte finns något sätt att sätta default schema för grupper. Det i sin tur beror på att en user kan ha flera grupptillhörigheter samtidigt. Och vilken av en användares potentiellt flera användargrupper ska då sql server välja default schema ifrån, varje gång SQL koden inte har databasschema specificerat (i formen db.schema.objectnamn)?

Jag fick själv problemet idag i mitt uppdrag som SQL Server konsult då jag skulle köra följande kommando, som är inbäddat i ett, till kunden levererat, ramverk: CREATE XML SCHEMA COLLECTION anObfuscatedSchemaName AS ''; och får felmeddelandet Msg 2797, Level 16, State 2, Server thenamehasbeenchangedtoprotecttheinnocent, Line 49 The default schema does not exist. Man kan kringgå problemet genom att lägga upp varje user individuellt, men det är inte bästa sättet att jobba på, speciellt inte i en stor organisation med många användare, vilket ger mertid för DBA att hantera på user nivå.

Om ni håller med om att det här är ett stort problem så gå gärna in på connect ärendet och hjälp till att lösa det eller uppmärksamma Microsoft på att det behöver lösas. default-schema-for-windows-group

/Jonas Bergström