Prima di tutto il consiglio "issuedTokenAuthentication" di Oleg non ha funzionato per me poiché la mia applicazione è un MVC asp.net. Presumo che questo elemento non sia supportato nell'applicazione asp.net MVC, ma potrebbe essere supportato nella configurazione del servizio WCF.
Dopo molte ore di lotta con questo errore su localhost e altri errori come ID1024 ho dovuto annullare alcune cose che avevo fatto seguendo consigli come dare a tutti leggere tutti i file all'interno di% ALLUSERSPROFILE% \ Microsoft \ Crypto \ RSA \ MachineKeys come per il blog this (ho letto sull'intera cartella MachineKeys che non era una buona idea!). In questo modo, tutte le concessioni alle chiavi private hanno smesso di funzionare tramite la console MMC!
mia soluzione era quella di creare un nuovo certificato auto firmato secondo le istruzioni da here
Poi ho fatto un'importazione fresca del certificato appena creato al negozio corretto e ha dato l'utente che esegue le applicazioni web leggono i diritti alla chiave privata. Il mio problema era con il certificato che usavo prima del quale è stato firmato sé, deve essere stato qualcosa che non va ..
Questa sezione è stata assolutamente necessario sul lato client:
<serviceCertificate>
<certificateReference x509FindType="FindByThumbprint" findValue="41A8A59E537D4A00A8C4FA8DC2522388DBD13D27" storeLocation="LocalMachine" storeName="My" />
</serviceCertificate>
Quando si tratta di certificati questo è anche un buon consiglio da tenere a mente:
se prima importare il certificato nell'archivio PERSONALE pER LO SVILUPPO, quindi importarlo in negozio MACCHINA per la distribuzione, la chiave privata rimarrà nella PERSONALE NEGOZIO DOVE SO NESSUN ACCOUNT DI SERVIZIO PU CAN UTILIZZARLO ANCHE SE SONO STATI CONCESSI PERMESSO.
E infine lo strumento FindPrivateKey.exe è stata molto utile per individuare il file della chiave privata reale e per aiutare a risolvere il problema, può essere scaricato da here, con buone istruzioni here.
ho notato durante l'eliminazione dei certificati tramite la console MMC ho dovuto rimuovere il file della chiave privata manualmente dal
C: \ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys
se la cancellazione dal negozio localMachine e da
C: \ Users [nome utente] \ AppData \ Roaming \ Microsoft \ Crypto \ RSA \ S-1-5-21-2106337540-114255811-1274951907-65121
se la cancellazione dal negozio CurrentUser
Avevo aggiunto il certificato nella sezione dei provider di fiducia e non era ancora trovato. In ogni caso ho creato un'altra soluzione semplice con nuovi certificati autoprodotti e il progetto ha funzionato! – Kjaneb
E questa soluzione era? Che ne dici di aiutare la comunità quando puoi ..../brontolare – VulgarBinary
Sono solo io, o non è affatto chiaro? Puoi per favore pubblicare un frammento XML più grande che mostri meglio questo? – Bryan