जब मैं कहता प्रभावी अनुमतियाँ, मैं सूचीबद्ध अनुमतियों की चर्चा करते हुए कर रहा हूँ जब आप SQL सर्वर प्रबंधन स्टूडियो में एक डेटाबेस के गुणों में जाते हैं, "अनुमतियां" क्लिक करें और फिर "प्रभावी" टैब पर क्लिक करें।सी # के माध्यम से SQL सर्वर डेटाबेस के उपयोगकर्ता के लिए प्रभावी अनुमतियों को कैसे निर्धारित करें?
अब तक, मैं निम्नलिखित कोड के साथ स्पष्ट अनुमतियां निर्धारित करने के लिए सक्षम किया गया है:
using Microsoft.SqlServer.Management.Smo;
...
DatabasePermissionInfo[] permissions = database.EnumDatabasePermissions("username");
हालांकि, मैं अब भी प्रभावी अनुमति प्राप्त करने की आवश्यकता है। इस परिदृश्य में, मैंने उपयोगकर्ता के लिए लॉगिन जोड़ा और इसे उपयोगकर्ता मानचित्रण के माध्यम से डेटाबेस के लिए db_datareader
और db_datawriter
की भूमिका दी।
डेटाबेस के लिए अनुमतियों में, सूचीबद्ध प्रभावी अनुमतियां CONNECT, DELETE, INSERT, SELECT,
और UPDATE
हैं, लेकिन स्पष्ट अनुमतियां केवल सूची कनेक्ट करती हैं (जो एकमात्र चीज है जो उपरोक्त कोड वापस खींचती है)। तो क्या प्रभावी अनुमतियों को प्रोग्रामेटिक रूप से पुनर्प्राप्त करने का कोई तरीका है?
धन्यवाद।
इस स्टैक ओवरफ्लो को पिछली पोस्टिंग करने में मदद करें http://stackoverflow.com/questions/962482/sql-permissions-to-add-data-and-how-to-verify – MethodMan