J'installe un service Windows sur une nouvelle machine. Le service effectue diverses opérations sur SslStream sur TCP, qui utilise le certificat en question.Problème de certificat avec une nouvelle machine - les informations d'identification fournies au package ne sont pas reconnues
Le service fonctionne correctement avec le même code et le même certificat sur les deux autres machines Windows 2003. Mais, cette nouvelle machine est Windows 2003 avec un processeur 64 bits aussi.
Je rencontre ce problème lorsque j'essaie d'exécuter le service avec une identité de «compte de service». Cela fonctionne bien avec mes propres informations d'identification. (Encore une fois, cela fonctionne très bien sur les 2 autres machines avec ce compte de service)
Je n'ai pas de 'protection forte' activée lors de l'importation du certificat.
Voici la trace de la pile.
System.ComponentModel.Win32Exception: Les informations d'identification fournies à l'emballage ne sont pas reconnus au System.Net.SSPIWrapper.AcquireCredentialsHandle (SSPIInterface SecModule, paquet String, intention de CredentialUse, SecureCredential scc) à System.Net.Security.SecureChannel.AcquireCredentialsHandle (CredentialUse credUsage, secureCredential & secureCredential) à System.Net.Security.SecureChannel.AcquireClientCredentials (byte [] & empreinte numérique) à System.Net.Security.SecureChannel.GenerateToken (byte [] entrée , Int32 offset, Int32 compter, byte [] sortie &) à System.Net.Security.SecureChannel.NextMessage (byte [] le nombre des arrivants, Int32 offset, Int32)
à System.Net.Security.SslState.StartSendBlob (byte [] entrant, compte Int32, AsyncProtocolRequest asyncRequest)
à System.Net.Security.SslState.ProcessReceivedBlob (Byte [] buffer, comptage Int32, AsyncProtocolRequest asyncRequest)
à System.Net.Security.SslState.StartReadFrame (byte [] buffer , Int32 readBytes, AsyncProtocolRequest asyncRequest)
à System.Net.Security.SslState.StartReceiveBlob (byte [] tampon, AsyncProtocolRequest asyncRequest) à System.Net.Security.SslState.CheckCompletionBeforeNextReceive (message de ProtocolToken , AsyncProtocolRequest asyncRequest) à System.Net.Security.SslState.StartSendBlob (byte [] entrant, Int32 compter, AsyncProtocolRequest asyncRequest)
à System.Net.Security.SslState.ForceAuthentication (Boolean receiveFirst, byte [] buffer, AsyncProtocolRequest asyncRequest)
à System.Net.Security.SslState.ProcessAuthentication (LazyAsyncResult lazyResult) à System.Net.Security. SslStream.AuthenticateAsClient (String targetHost, X509CertificateCollection ClientCertificates, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation)
Regardez le premier résultat de recherche: http://www.google .com/search? q = "Les + informations d'identification + fournies + au + paquet + + n'ont pas été reconnues" –
J'avais regardé ce fil de discussion, Wim.Et c'est correctement expliquer ce qui se passe ici. La raison pour laquelle cela ne fonctionnerait pas pour moi était que je devais résoudre cela pour un «compte de service» qui ne peut pas être utilisé pour se connecter à la machine et installer le certificat sous cette identité. Mais la bonne façon de le résoudre pour 'tout le monde' est mentionné dans l'article suivant que j'ai posté dans 'réponse'. – cdpnet