System.Security.Cryptography.CryptographicException: Keyset does not exist or Access is denied issue.

This issue is related to permission on MachineKeys folder. I think this is right place where you should know what the determination of MachineKeys folder is.

**What is MachineKeys Folder?
**

The MachineKeys folder stores certificate pair keys for both the computer and users. Both Certificate services and Internet Explorer use this folder. 

Possible reasons for getting this error message in your application are, may be your application using a certificate or your application trying to access a private key.

There are two ways through which you can solve this error.
**
First Way (When you don’t know the certificate key)
**
Open this folder **C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys

Windows Server 202008 R2 x64 2011 10 12 10 20 11
Fig 1: MachineKeys Folder is protected and showing lock sign.

Give “Read and Write” and “List Folder Contents” permissions in Security tab to the IIS worker processes impersonated account (IUSER_MachineName or Network Service or any other account) to below folderWindows Server 202008 R2 x64 2011 10 12 10 29 51
Fig 2: Giving Rights to MachineKeys Folder.
**
Windows Server 202008 R2 x64 2011 10 12 10 31 28
Fig 3: MachineKeys folder is granted for **IIS worker processes impersonated account and lock sign has gone.

Second Way (When you certificate key)

**Open mmc from Start menu. Add certificates snap-In and open the respective certificate store folder and then follow the step.

“Certificate Name” -> (Right-click) -> All Tasks -> Manage private keys

Add the IIS worker processes impersonated account (IUSER_MachineName or Network Service or any other account).

Windows Server 202008 R2 x64 2011 10 12 11 29 49
Fig 4: Certificate Manage private keys property.

This article is part of the GWB Archives. Original Author: Saqib Ullah

New on Geeks with Blogs

  • We Won The One Award I Actually Care About

    Full Scale made the Inc. 5000 for the fifth year straight, the 12th listing across my three companies. Here is why the one award you cannot buy is worth stopping for.

  • Your Customers Build the Features Now

    I let a tool I liked sit dead for a year rather than build the features I wanted. An MCP server meant I never had to, and your customers can do the same to your product.

  • Get the Size of a Directory in Linux the Easy Way

    du -sh for the quick answer, ncdu for the cleanup, df for the disk itself: every command for checking directory size in Linux, plus why du and df never agree.

  • Vim Search and Replace: The Ultimate Guide

    One :%s command replaces every match in a file before a find dialog would even open. The Vim substitute patterns worth the muscle memory: flags, ranges, capture groups, and multi-file edits.