An error occurs while opening the specified store

In our website we are using a certificate which was given to us by a bank to use when we do the online payment.
if we run a standalone page/test page which use this certificate, it works fine.  But when we run our website, then we get the error "An error occurs while opening the specified store".  Our website we run as user "selfcare".  Is this something to do with security or permission.

Please help us

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Sam PanwarSr. Server AdministratorCommented:

I think you are talking about SSl certificate for encryption data or ma be paypal.
1.Use the https:// instead of the http:// and try
2. May be SSL not install proper contact to your host company
3. Delete cookies and internet temporary file then try
Sam PanwarSr. Server AdministratorCommented:
Suggestion 2
The error may occur because the language-setting in
Internet Explorer is missing.  To add a language, in
Internet Explorer, select Tools-->Internet Options, and
click the "Languages" button.  Add a language to the list
if empty.
Suggestion 3
Check the system time.  SSL will not function if the
system time is more than 100 days off.
Suggestion 4
Please uncheck "Check for server certificate revocation":

1.  Open Internet Explorer
2.  Click on Tools
3.  Click on Internet Option from the drop down menu
4.  Click on the Advanced tab
5.  Scroll down to the Security Section
6.  Unselect "Check for server certificate revocation"
7.  Reboot the machine
We may be able to resolve this issue by adding (Note: The https
is correct)
to the trusted sites list in the Internet Options.  
To access the Exceptions settings.  
1. Open Internet Explorer
2. Click Tools / Internet Options
3. Click the Security Tab
4. Click on the Trusted Sites Icon
5. Click on the Sites button
6. Unselect the check box "Require server verification
(https:)for all sites in this zone"
7. Add all 4 sites listed above
>  But when we run our website, ..
could you please post the command and the resulting error messages verbatime how you do that
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

indikadAuthor Commented:
in the web.config file we have this line :
<identity impersonate="true" userName="selfcare" password="c9112f31" />

if we set the impersonate="false" then this works.  Then this website runs as default ASP user.
So I thing this is something to do with the user "selfcare".  But I do not know what to do.

We have this user created on the web server and has the administrative wrights.
Sam PanwarSr. Server AdministratorCommented:
Hi ,

Make the virtual directory the folder in which the webconfig.sys file existyour problem should be rresolved
indikadAuthor Commented:

If you are talking about the web.config file then that is already in the virtual directory.
Sam PanwarSr. Server AdministratorCommented:
Recreate it and check and also check the you have select windows authentication user the directory security of your website.
Sam PanwarSr. Server AdministratorCommented:
Check the directory security setting of the that folder and website if you use any other password check and tell me
indikadAuthor Commented:
it has the anon. access and the integrated windows authentication checked
in anon.access unchecked the "Allow IIS to control password" and the user is default ASP.NET user
Sam PanwarSr. Server AdministratorCommented:
1.Check with the administrator password ainstead of selfcare use then try.
 And also try with the anonomous user
Another method

1. assign ASPNET account used by with Administrator right
2. modify <winnt>\Microsoft.NET\Framework\<version>\CONFIG\machine.config
    change <processModel ... /> to: <processModel userName="machine"
password="AutoGenerate" />
Here is more infos:
In the RTM version of ASP.NET the ASP.NET worker process runs under a special ASPNET account that has limited priveleges. For impersonation to work the security context must have "Act as part of the operating system" priveleges.  There are a couple workarounds:
1.) Change the userName attribute of the <processModel> tag in your machine.config file to SYSTEM rather than its default which is MACHINE.
2.) Impersonate programatically which is demonstrated in this KB article:;en-us;Q306158 
I'll bet that your developer machine is running pre-RTM .NET Framework bits or you have already reverted to the SYSTEM account on that machine.

Please see the following information on Impersonation in ASP.NET.
When you want to Impersonate a thread with a user in ASP.NET, you can do that in any of the following ways based on your requirment.
 - Impersonate the IIS Authenticating user
 - Impersonate a Specific user for all the requests on all the pages of an
   ASP.NET application
 - Impersonate the Authenticating user whereever required within the code
 - Impersonate a Specific user whereever required within the code
Impersonate the IIS Authenticating User
To Impersonate the IIS Authenticating user on every request for every page
in an
ASP.NET application, you need to have an identity tag in the web.config file of this application and set its impersonate attribute to True.
   <identity impersonate="True" />
Impersonate a Specific user for all the requests on all the pages of an ASP.NET application
To impersonate a specific user for all the requests on all the pages of an ASP.NET application, you can specify that userName and password in the identity tag of the web.config file for that application as shown below.
   <identity impersonate="True" userName="accountname" password="password"
Impersonate the Authenticating user whereever required within the code
When you want to Impersonate the IIS authenticating user only during execution of a piece of code, you can use the following code to perform that. VB
   Dim impCtx as System.Security.Principal.WindowsImpersonationContext()
   impCtx =
   'Your code that runs under the security context of the IIS
authenticating user goes here.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Servers

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.