चूंकि आपके पास सर्वर तक पहुंच नहीं है, इसलिए आपको कोड के माध्यम से अपने web.config के अनुभागों को एन्क्रिप्ट करने के लिए कमांड चलाने की आवश्यकता होगी। आप इसे एक साधारण वेब पेज बनाकर और पेज लोड पर या बटन क्लिक पर चलाकर ऐसा कर सकते हैं। नीचे कोड ब्लॉक है जिसे आपको चलाने की आवश्यकता होगी, माइक्रोसॉफ्ट (http://msdn.microsoft.com/en-us/library/system.configuration.sectioninformation.protectsection.aspx) से लिया गया स्रोत से केवल थोड़ा संशोधित किया गया है। हालांकि ... यह कोड वास्तव में मेरे लिए काम नहीं करता था। यह नहीं कि कोड सही नहीं है, लेकिन क्योंकि मेरे खाते में आरए कुंजी स्टोर की अनुमति नहीं है, इसलिए आपके परिणाम अलग-अलग हो सकते हैं। यदि यह काम नहीं होता है विकल्प के लिए 2.
' Get the current configuration file.'
Dim config As System.Configuration.Configuration = Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Nothing)
' Get the section.'
Dim section As AppSettingsSection = CType(config.GetSection("appSettings"), AppSettingsSection)
' Protect (encrypt) the section.'
section.SectionInformation.ProtectSection("RSAProtectedConfigurationProvider")
' Save the encrypted section.'
section.SectionInformation.ForceSave = True
config.Save(ConfigurationSaveMode.Full)
क्रेडिट पर पढ़ें: मैं Need Encrypted connection string and stmp information in the web.config के माध्यम से कोड के साथ कि लिंक मिल गया।
विकल्प 2: सुरक्षा कारणों से आप अभी भी मशीन कुंजी का उपयोग करना चाहते हैं, इसलिए यदि कोई व्यक्ति आपकी web.config फ़ाइल डाउनलोड करने का प्रबंधन करता है तो वे आपकी सेटिंग्स को डिक्रिप्ट नहीं कर पाएंगे। ऐसा करने का एक तरीका हाथ से मशीन कुंजी का उपयोग करके अपनी सभी सेटिंग्स को एन्क्रिप्ट करना है, और प्रत्येक बार उन्हें उपयोग करने की आवश्यकता होने पर उन्हें डिक्रिप्ट करना है, या आप उन्हें प्रत्येक ऐप स्टार्टअप पर कैश में स्टोर कर सकते हैं।
एन्क्रिप्टेड करने के लिए
हो और ऐप कुंजी मान आप इस तरह कोड का इस्तेमाल कर सकते डिक्रिप्ट:
Dim encryptedString As String = Convert.ToBase64String(ProtectedData.Protect(System.Text.UTF8Encoding.UTF32.GetBytes("Testing"), Nothing, DataProtectionScope.LocalMachine))
Dim decryptedString As String = System.Text.UTF8Encoding.UTF32.GetString(ProtectedData.Unprotect(Convert.FromBase64String(encryptedString), Nothing, DataProtectionScope.LocalMachine))
Response.Write(encryptedString + " - " + decryptedString)
कैसे आप एक तरीका है कि आवेदन एक असुरक्षित स्थिति में कुंजी से बाहर निकले बिना पासवर्ड का उपयोग करने की अनुमति देता में महत्वपूर्ण स्टोर करते हैं ? – Tyrsius
इसके लिए कुछ विकल्प हैं .... आप web.config (MachineKey) में मौजूद कुंजी का उपयोग कर सकते हैं, या आप अपनी खुद की कुंजी बना सकते हैं, और इसे एन्क्रिप्टेड web.config विकल्प में डाल सकते हैं। –
@ टियरियस - मैंने कुछ विचार देने के लिए विकल्पों के साथ-साथ कुछ विवरण भी जोड़े। –