• [ArgumentException: 可能证书“CN=JRNet01-PC”没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限。有关详细信息,请参见内部异常。]


    堆栈跟踪:

    [CryptographicException: 密钥集不存在。
    ]
       System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer) +450
       System.Security.Cryptography.Utils.GetKeyPairHelper(CspAlgorithmType keyType, CspParameters parameters, Boolean randomKeyContainer, Int32 dwKeySize, SafeProvHandle& safeProvHandle, SafeKeyHandle& safeKeyHandle) +158
       System.Security.Cryptography.RSACryptoServiceProvider.GetKeyPair() +231
       System.Security.Cryptography.X509Certificates.X509Certificate2.get_PrivateKey() +537
       System.ServiceModel.Security.SecurityUtils.EnsureCertificateCanDoKeyExchange(X509Certificate2 certificate) +78
    
    [ArgumentException: 可能证书“CN=JRNet01-PC”没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限。有关详细信息,请参见内部异常。]
       System.ServiceModel.Security.SecurityUtils.EnsureCertificateCanDoKeyExchange(X509Certificate2 certificate) +16627277
       System.ServiceModel.Security.ServiceCredentialsSecurityTokenManager.CreateLocalSecurityTokenProvider(RecipientServiceModelSecurityTokenRequirement recipientRequirement) +137
       System.ServiceModel.Security.ServiceCredentialsSecurityTokenManager.CreateSecurityTokenProvider(SecurityTokenRequirement requirement) +50
       System.ServiceModel.Security.ServiceCredentialsSecurityTokenManager.CreateTlsnegoServerX509TokenProvider(RecipientServiceModelSecurityTokenRequirement recipientRequirement) +289
       System.ServiceModel.Security.ServiceCredentialsSecurityTokenManager.CreateTlsnegoSecurityTokenAuthenticator(RecipientServiceModelSecurityTokenRequirement recipientRequirement, Boolean requireClientCertificate, SecurityTokenResolver& sctResolver) +638
       System.ServiceModel.Security.ServiceCredentialsSecurityTokenManager.CreateSecurityTokenAuthenticator(SecurityTokenRequirement tokenRequirement, SecurityTokenResolver& outOfBandTokenResolver) +16627516
       System.ServiceModel.Security.SessionRenewSecurityTokenManager.CreateSecurityTokenAuthenticator(SecurityTokenRequirement tokenRequirement, SecurityTokenResolver& outOfBandTokenResolver) +176
       System.ServiceModel.Security.SymmetricSecurityProtocolFactory.OnOpen(TimeSpan timeout) +220
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Security.SecurityListenerSettingsLifetimeManager.Open(TimeSpan timeout) +81
       System.ServiceModel.Channels.SecurityChannelListener`1.OnOpen(TimeSpan timeout) +398
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout) +283
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout) +126
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Security.SecuritySessionSecurityTokenAuthenticator.OnOpen(TimeSpan timeout) +141
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Security.SecurityUtils.OpenTokenAuthenticatorIfRequired(SecurityTokenAuthenticator tokenAuthenticator, TimeSpan timeout) +50
       System.ServiceModel.Security.SecuritySessionServerSettings.OnOpen(TimeSpan timeout) +923
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Security.SecurityListenerSettingsLifetimeManager.Open(TimeSpan timeout) +124
       System.ServiceModel.Channels.SecurityChannelListener`1.OnOpen(TimeSpan timeout) +398
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout) +283
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout) +126
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
       System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +255
       System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +1172
    
    [ServiceActivationException: 由于编译过程中出现异常,无法激活服务“/Service1.svc”。异常消息为: 可能证书“CN=JRNet01-PC”没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限。有关详细信息,请参见内部异常。。]
       System.Runtime.AsyncResult.End(IAsyncResult result) +900192
       System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +192830
       System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar) +107
    

     win7解决方式:

     1.运行mmc打开 控制台

    2. 添加删除单元

    3.导入证书

    4.右键点击所选证书->所有任务->管理密钥->添加授权用户

    5. 哦了

    windows server 解决方式:

    以windows server 2003为例:

    1.打开证书存储目录:C:Documents and SettingsAll UsersApplication DataMicrosoftCryptoRSAMachineKeys

    2. 根据修改时间找到要设置的证书,右键赋予访问权限即可

    3.参考文件:http://msdn.microsoft.com/zh-cn/library/aa702621.aspx

  • 相关阅读:
    K好数
    最大最小公倍数
    十六进制转十进制
    利用malloc定义数组
    01字串
    ubuntu 14.04 下jdk和sdk+eclipse 的配置
    Mysql3
    求最大连续子串
    UC笔试
    java实现随机洗牌算法
  • 原文地址:https://www.cnblogs.com/yf2011/p/4164195.html
Copyright © 2020-2023  润新知