2011-05-05 12 views
12

मैं डेटाबेस के लिए एक मॉडल बना रहा हूं और ADO.NET इकाई मॉडल विज़ार्ड में निम्न कथन पर उत्सुक था या हाँ चुनने का विकल्प नहीं है, जहां संवेदनशील डाटा स्टोर करने के रूप में -ADO.NET मॉडल बनाते समय एप्लिकेशन कोड में अपना संवेदनशील डेटा कैसे सेट करें? कुछ टैग

"। नहीं, कनेक्शन स्ट्रिंग से संवेदनशील डेटा को बाहर मैं इसे अपने आवेदन कोड में सेट हो जाएगा।"

मैंने कभी भी इस विकल्प का उपयोग नहीं किया है और सिर्फ यह जानना चाहता था कि मैंने ऐसा किया है जहां मुझे अपना संवेदनशील डेटा निर्दिष्ट करना होगा। कोई विचार?

+0

बहुत अच्छा सवाल! मैं भी उसे जानना चाहता हूं। – Jordan

उत्तर

-2

यह कनेक्शन स्ट्रिंग के लिए उपयोगकर्ता नाम और पासवर्ड है। यदि आपके पास कॉन्फ़िगरेशन फ़ाइल में नहीं है, तो आपको डेटा संदर्भ बनाते समय उन्हें प्रदान करना होगा।

+3

लेकिन आप यह कैसे करते हैं? –

7

सेट मॉडल निर्माता के कनेक्शन स्ट्रिंग तर्क:

MyEntities1 db = new MyEntities1 ("metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=';Data Source=localhost;Initial Catalog=myDb;User ID=user1;Password=myPass;MultipleActiveResultSets=True';"); 
3

धारण करने के लिए एन्क्रिप्टेड DLL बनायें कनेक्शन स्ट्रिंग

संस्थाओं के निर्माता को संशोधित

// Separate Encrypted DLL file 
public static class secureData() 
{ 
    public static string ConString = @"Data Source=YOUR_SERVER;Initial 
    Catalog=YOUR_DB;Persist Security Info=True;User 
    ID=YOUR_USER;Password=YOUR_PASSWORD"; 
} 


public sampleDBEntities() : base("name=sampleDBEntities") 
    { 
     this.Database.Connection.ConnectionString = secureData.ConString ; 
    } 
+0

ठीक है, यह इसे web.config से बाहर कर देता है, लेकिन मेरी समझ यह है कि यह बहुत अधिक है जैसा कि obfuscated C# कोड में दिखाई देता है, नहीं? –

+0

हां। लेकिन आप अपने कनेक्शन तारों की रक्षा के लिए ** एन्क्रिप्शन तकनीक ** का उपयोग कर सकते हैं। –

+0

@ विलियम टी। मल्लार्ड वैकल्पिक रूप से, आप पासवर्ड को कहीं और सुरक्षित से पढ़ने के लिए कुछ कोड लिख सकते हैं। – Dan

0

यह मैं क्या है अतीत में उपयोग किया जाता है, हालांकि कई लोग आपकी स्रोत फ़ाइलों में सादा पाठ पासवर्ड स्टोर करने के लिए असुरक्षित तर्क देंगे। अपने कनेक्शन तारों को एन्क्रिप्ट करके इसे सुरक्षित करने के तरीके हैं;

public db_entity() 
      : base("name=db_entity") 
     { 
      this.Database.Connection.ConnectionString= "server=localhost;user id=<USERNAME>;Password=<PASSWORD.;persistsecurityinfo=True;database=<DB_NAME>";    
     } 
संबंधित मुद्दे