Link to home
Start Free TrialLog in
Avatar of john8098
john8098

asked on

hide or encrypt connection string in asp.net applicaiton

Hi expert, please help.
    I have try using code as follow, it encrypt well in my laptop, but after i upload to shard hosting envelopment. encrypt fail shown as follow.

System.Configuration.ConfigurationErrorsException: An error occurred loading a configuration file: Access to the path 'C:\Domains\domainname.com.my\httpdocs\8kgs3u4_.tmp' is denied. (C:\Domains\domainname.com.my\httpdocs\web.config) ---> System.UnauthorizedAccessException: Access to the path 'C:\Domains\domainname.com.my\httpdocs\8kgs3u4_.tmp' is denied. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) at System.CodeDom.Compiler.TempFileCollection.EnsureTempNameCreated() at System.CodeDom.Compiler.TempFileCollection.AddExtension(String fileExtension, Boolean keepFile) at System.CodeDom.Compiler.TempFileCollection.AddExtension(String fileExtension) at System.Configuration.Internal.WriteFileContext..ctor(String filename, String templateFilename) at System.Configuration.Internal.InternalConfigHost.StaticOpenStreamForWrite(String streamName, String templateStreamName, Object& writeContext, Boolean assertPermissions) at System.Configuration.Internal.InternalConfigHost.System.Configuration.Internal.IInternalConfigHost.OpenStreamForWrite(String streamName, String templateStreamName, Object& writeContext, Boolean assertPermissions) at System.Configuration.Internal.InternalConfigHost.System.Configuration.Internal.IInternalConfigHost.OpenStreamForWrite(String streamName, String templateStreamName, Object& writeContext) at System.Configuration.Internal.DelegatingConfigHost.OpenStreamForWrite(String streamName, String templateStreamName, Object& writeContext) at System.Configuration.UpdateConfigHost.OpenStreamForWrite(String streamName, String templateStreamName, Object& writeContext) at System.Configuration.MgmtConfigurationRecord.SaveAs(String filename, ConfigurationSaveMode saveMode, Boolean forceUpdateAll) --- End of inner exception stack trace --- at System.Configuration.MgmtConfigurationRecord.SaveAs(String filename, ConfigurationSaveMode saveMode, Boolean forceUpdateAll) at System.Configuration.Configuration.SaveAsImpl(String filename, ConfigurationSaveMode saveMode, Boolean forceSaveAll) at System.Configuration.Configuration.Save() at test.EncryptConfig(Boolean bEncrypt)

I think the problem is show when the config.save is execute.
if i miss something or i there a way to get what appSettings.SectionInformation.ProtectSection("DataProtectionConfigurationProvider") have encrypt to show on label, so i can copy and paste it myself.

if can not be done, if there any way i can place it on my app_code by inherit ConfigurationSection or something to hide it from hacker. experts pls help.
Try
            Dim config As Configuration = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath)
            Dim appSettings As ConfigurationSection = config.GetSection("connectionStrings")
            If bEncrypt Then
                appSettings.SectionInformation.ProtectSection("DataProtectionConfigurationProvider")
 
                
                'appSettings.SectionInformation.ProtectSection("RSAProtectedConfigurationProvider")
 
                config.Save()
            End If

Open in new window

Avatar of veed
veed

Seems permission is not provided to your folder. Pease grant permission to AspNet(IIS 5.x) user account or Networkservices(IIS 6) to your root folder.

Avatar of john8098

ASKER

If there possible to grant the permission on shared hosting?
ASKER CERTIFIED SOLUTION
Avatar of veed
veed

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial