Technical Questions
 Crystal Reports Forum : Crystal Reports 9 through 2022 : Technical Questions
Message Icon Topic: CRUFL Functions And Web.config Post Reply Post New Topic
Author Message
mhbcedu
Newbie
Newbie
Avatar

Joined: 03 Nov 2009
Location: United States
Online Status: Offline
Posts: 4
Quote mhbcedu Replybullet Topic: CRUFL Functions And Web.config
     Posted: 05 Nov 2009 at 10:33am
Hi,
       I have Created a CRUFL function in C# .This function gets the encrypted item and decrypt it  by using Microsoft Enterprise library algo "RijndaelManaged" its working fine if I have called web.config file by hard coded path using the below code (I am using Crystal Report ver 11.5 and  C# 2.0)

FileConfigurationSource fileSource = new FileConfigurationSource("Web.config file hard coded path");

SymmetricCryptoProviderFactory factory =
                        new SymmetricCryptoProviderFactory(fileSource);

 ISymmetricCryptoProvider provider =
                        factory.Create("RijndaelManaged");

 byte[] encryptedByteArray2 =
                           Convert.FromBase64String(EncryptedText;
 
byte[] unencryptedByteArray2 =
                         provider.Decrypt(encryptedByteArray2);

 string unencryptedText = Encoding.Unicode.
                       GetString(unencryptedByteArray2);

But its unable to find  securityCryptographyConfiguration from web.config file when I'm trying to use (I already have defined that securityCryptographyConfiguration  block in web.config and it's working when I was trying to access web.config file by using hard coded path )

Cryptographer.DecryptSymmetric("RijndaelManaged", EncryptedText)

It gives me the following error (it seems to be that its not able to access web.config in CRUFL function)


System.Configuration.ConfigurationErrorsException: The configuration section securityCryptographyConfiguration is not defined in the current configuration for the AppDomain.
   at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.CryptographyConfigurationView.get_CryptographySettings()
   at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.CryptographyConfigurationView.GetSymetricCryptoProviderData(String symetricCryptoProviderName)
   at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricCryptoProviderCustomFactory.GetConfiguration(String name, IConfigurationSource configurationSource)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedCustomFactory`2.Create(IBuilderContext context, String name, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedCustomFactory`2.CreateObject(IBuilderContext context, String name, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy.BuildUp(IBuilderContext context, Type t, Object existing, String id)
   at Microsoft.Practices.ObjectBuilder.BuilderStrategy.BuildUp(IBuilderContext context, Type typeToBuild, Object existing, String idToBuild)
   at Microsoft.Practices.ObjectBuilder.SingletonStrategy.BuildUp(IBuilderContext context, Type typeToBuild, Object existing, String idToBuild)
   at Microsoft.Practices.ObjectBuilder.BuilderStrategy.BuildUp(IBuilderContext context, Type typeToBuild, Object existing, String idToBuild)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfigurationNameMappingStrategy.BuildUp(IBuilderContext context, Type t, Object existing, String id)
   at Microsoft.Practices.ObjectBuilder.BuilderBase`1.DoBuildUp(IReadWriteLocator locator, Type typeToBuild, String idToBuild, Object existing, PolicyList[] transientPolicies)
   at Microsoft.Practices.ObjectBuilder.BuilderBase`1.BuildUp(IReadWriteLocator locator, Type typeToBuild, String idToBuild, Object existing, PolicyList[] transientPolicies)
   at Microsoft.Practices.ObjectBuilder.BuilderBase`1.BuildUp[TTypeToBuild](IReadWriteLocator locator, String idToBuild, Object existing, PolicyList[] transientPolicies)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.EnterpriseLibraryFactory.BuildUp[T](IReadWriteLocator locator, String id, IConfigurationSource configurationSource)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.EnterpriseLibraryFactory.BuildUp[T](String id, IConfigurationSource configurationSource)
   at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.NameTypeFactoryBase`1.Create(String name)
   at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(String symmetricInstance, Byte[] ciphertext)
   at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(String symmetricInstance, String ciphertextBase64)
   at CRUFL_SSNTest.SSNTestingUfl.TestSSNVersion4(String ssn)


Edited by mhbcedu - 05 Nov 2009 at 10:33am
Muhammad Hassan Bari
IP IP Logged
mhbcedu
Newbie
Newbie
Avatar

Joined: 03 Nov 2009
Location: United States
Online Status: Offline
Posts: 4
Quote mhbcedu Replybullet Posted: 09 Nov 2009 at 11:09am
no buddy have answer of this post  ?????????
Muhammad Hassan Bari
IP IP Logged
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum