2010-12-09 15 views
8

में उपयोगकर्ता के पास सिस्टम व्यवस्थापकीय विशेषाधिकार हैं या नहीं, मेरे पास एक ऐसा एप्लिकेशन है जो केवल उन उपयोगकर्ताओं तक पहुंच की अनुमति दे सकता है जो डीबी पर सिस्टम प्रशासक हैं। क्या एसक्यूएल स्क्रिप्ट या क्वेरी मैं सी # कोड है कि, एक उपयोगकर्ता नाम दिया से निष्पादित कर सकते हैं, निर्धारित कर सकते हैं वह/वह प्रणाली व्यवस्थापक विशेषाधिकारों प्रणाली ऐनक है: sql2008R2 db, .net 2.0, सी #SQL सर्वर 2008 R2

उत्तर

5

उपयोग IS_SRVROLEMEMBER

SELECT IS_SRVROLEMEMBER('sysadmin', 'YourLogin') 
+3

यह समाधान सही परिणाम प्रदान नहीं करता है यदि खाता sysadmin भूमिका में मौजूद कुछ समूह का सदस्य है। DOMAIN \ user1 DOMAIN \ DBA का सदस्य है, DOMAIN \ DBAs sysadmin भूमिका में है, इसलिए DOMAIN \ user1 sysadmin है। चयन IS_SRVROLEMEMBER ('sysadmin', 'DOMAIN \ user1') को जांचने के परिणामस्वरूप न्यूल होगा। – meir

+0

@meir - सही क्वेरी क्या है? – Steam

+0

जो की पूछताछ मुझे 1 देती है और मेरी पूछताछ क्वेरी मुझे शून्य देती है। – Steam

संबंधित मुद्दे