Huomautus
Julkaisupäivä:
Kesäkuu 22, 2022
[07/04/2023] Päivitetty sisältämään Windows 10:n versioiden 1607 ja 1507 puuttuvat versiot
[24.7.2023] Päivitetty 11. heinäkuuta 2023 suojaus- ja laatukoontiversion ratkaisun julkaisutietojen lisäämiseksi
Yhteenveto
Tässä artikkelissa on ohjeita ongelman lieventämiseen, kun 13. kesäkuuta 2023 julkaistujen .NET Framework- ja .NET-päivitysten asentamisen jälkeen käyttäjät saattavat kohdata ongelmia siinä, miten .NET Framework Runtime tuo X.509-varmenteita.
Oire
Kun käytät X509Certificate, X509Certificate2, tai X509Certificate2Collection luokkaa tuodakseen yksityisen avaimen sisältävän PKCS#12-blob-objektin, kutsuva sovellus saattaa havaita alla olevan poikkeuksen.
- System.Security.Cryptography.CryptographicException: PKCS12 (PFX) ilman annettua salasanaa on ylittänyt iteraatioiden enimmäismäärän. Lisätietoja on https://go.microsoft.com/fwlink/?linkid=2233907.
Tämä virhe vaikuttaa PKCS#12-blob-objekteihin, jotka on viety [esimerkiksi kautta X509Certificate.Export(X509ContentType.Pfx)] ilman salasanaa. Virhe voi tapahtua ei-deterministisesti.
Ongelman kiertotapa
Microsoft on julkaissut päivitetyt asennusohjelmat .NET Framework- ja .NET -versioille tämän ongelman ratkaisemiseksi. Nämä asennusohjelmat voidaan ottaa käyttöön koneessa, johon ongelma vaikuttaa, riippumatta siitä, onko kone jo ottanut käyttöön alkuperäiset 13. kesäkuuta 2023 julkaistut .NET Framework- ja .NET Security -päivitykset.
Tärkeää
- Jos olet aiemmin käyttänyt rekisterivalitsimia, jotka on dokumentoitu artikkelissa KB5025823 .NET-sovellusten X.509-varmenteiden tuontitavan muuttaminen ongelman kiertämiseksi, poista kyseiset rekisterikytkimet ennen uuden korjaustiedoston asentamista. Poista rekisterivalitsimet suorittamalla kaksi alla olevaa komentoa järjestelmänvalvojan oikeuksin suoritettavasta komentokehotteesta.
reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:32reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:64
Ratkaisu
Tämä ongelma korjattiin 22. kesäkuuta 2023 julkaistuissa päivitystiheyden ulkopuolisissa päivityksissä .NET Framework 4.6.2:lle ja uudemmille versioille Windowsille ja Windows Server -versioille, joihin ongelma vaikuttaa. Jos haluat hankkia erillisen paketin näitä vanhentuneita päivityksiä varten, etsi KB-numero Microsoft Update -luettelosta. Voit tuoda nämä päivitykset manuaalisesti Windows Server Update Servicesiin (WSUS) ja Microsoft Endpoint Configuration Manageriin. WSUS-ohjeet ovat kohdassa WSUS ja luettelosivusto. Configuration Manger -ohjeet ovat kohdassa Päivitysten tuominen Microsoft Update -luettelosta.
Jos käytit tähän ongelmaan vaihtoehtoisia menetelmiä tai lievennyksiä, niitä ei enää tarvita, ja suosittelemme, että poistat ne. Voit poistaa vaihtoehtoisen menetelmän tutustumalla vaihtoehtoiseen menetelmään tai vaihtoehtoiseen menetelmään, jota käytettiin ohjeiden mukaisesti.
| Tuoteversio | Päivitä | Knowledge Base -artikkeli |
|---|---|---|
| Windows 11:n versio 22H2 | ||
| .NET Framework 4.8.1 | Luettelo | 5028576 |
| Windows 11:n versio 21H2 | ||
| .NET Framework 4.8 | Luettelo | 5028582 |
| .NET Framework 4.8.1 | Luettelo | 5028575 |
| Windows Server 2022 | ||
| .NET Framework 4.8 | Luettelo | 5028584 |
| .NET Framework 4.8.1 | Luettelo | 5028578 |
| Azure Stack HCI, versio 22H2 | ||
| .NET Framework 4.8 | Luettelo | 5028584 |
| Azure Stack HCI, versio 21H2 | ||
| .NET Framework 4.8 | Luettelo | 5028584 |
| Windows 10 -versio 22H2 | ||
| .NET Framework 4.8 | Luettelo | 5028579 |
| .NET Framework 4.8.1 | Luettelo | 5028574 |
| Windows 10:n versio 21H2 | ||
| .NET Framework 4.8 | Luettelo | 5028579 |
| .NET Framework 4.8.1 | Luettelo | 5028574 |
| Windows 10 1809 (lokakuun 2018 päivitys) ja Windows Server 2019 | ||
| .NET Framework 4.7.2 | Luettelo | 5028588 |
| .NET Framework 4.8 | Luettelo | 5028581 |
| Windows 10 1607 (Anniversary Update) ja Windows Server 2016 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028623 |
| .NET Framework 4.8 | Luettelo | 5028580 |
| Windows 10 1507 | ||
| .NET Framework 4.6, 4.6.2 | Luettelo | 5028622 |
| Windows Embedded 8.1 ja Windows Server 2012 R2 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028590 |
| .NET Framework 4.8 | Luettelo | 5028585 |
| Windows Embedded 8 ja Windows Server 2012 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028589 |
| .NET Framework 4.8 | Luettelo | 5028583 |
| Windows Embedded 7 Standard ja Windows Server 2008 R2 SP1 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028591 |
| .NET Framework 4.8 | Luettelo | 5028586 |
| kaikki tuetut Windows-versiot | ||
| .NET 6.0.19 | Luettelo | 5028613 |
| .NET 7.0.8 | Luettelo | 5028614 |
Tämä ongelma korjattiin 11. heinäkuuta 2023 julkaistussa säännöllisessä kumulatiivisessa koontiversiossa kaikille tuetuille .NET Framework -versioille Windowsille ja Windows Server -versioille, joihin ongelma vaikuttaa. Suojaus- ja laatukokoelma on saatavana Windows Update-, Windows Server Update Services- ja Microsoft Update -luettelon kautta.
Huomautus: Windows Update- ja Windows Server Update Services -palvelut käyttävät asiakkaat saavat .NET Framework -versiokohtaiset päivitykset automaattisesti. Kokeneet järjestelmänvalvojat voivat myös käyttää alla olevia suoria Microsoft Update -luettelon latauslinkkejä .NET Framework -päivityksiin. Ennen kuin asennat nämä päivitykset, varmista, että tarkistat huolellisesti .NET Framework -version soveltuvuuden varmistaaksesi, että asennat päivitykset vain järjestelmiin, joissa ne toimivat.
Jos käytit tähän ongelmaan vaihtoehtoisia menetelmiä tai lievennyksiä, niitä ei enää tarvita, ja suosittelemme, että poistat ne. Voit poistaa vaihtoehtoisen menetelmän tutustumalla vaihtoehtoiseen menetelmään tai vaihtoehtoiseen menetelmään, jota käytettiin ohjeiden mukaisesti.
| Tuoteversio | Päivitä | Knowledge Base -artikkeli |
|---|---|---|
| Windows 11:n versio 22H2 | ||
| .NET Framework 3.5, 4.8.1 | Luettelo | 5028851 |
| Windows 11:n versio 21H2 | ||
| .NET Framework 3.5, 4.8 | Luettelo | 5028856 |
| .NET Framework 3.5, 4.8.1 | Luettelo | 5028850 |
| Windows Server 2022 | ||
| .NET Framework 3.5, 4.8 | Luettelo | 5028858 |
| .NET Framework 3.5, 4.8.1 | Luettelo | 5028852 |
| Azure Stack HCI, versio 22H2 | 5028935 | |
| .NET Framework 3.5, 4.8 | Luettelo | 5028858 |
| Azure Stack HCI, versio 21H2 | 5028943 | |
| .NET Framework 3.5, 4.8 | Luettelo | 5028858 |
| Windows 10 -versio 22H2 | 5028937 | |
| .NET Framework 3.5, 4.8 | Luettelo | 5028853 |
| .NET Framework 3.5, 4.8.1 | Luettelo | 5028849 |
| Windows 10:n versio 21H2 | 5028944 | |
| .NET Framework 3.5, 4.8 | Luettelo | 5028853 |
| .NET Framework 3.5, 4.8.1 | Luettelo | 5028849 |
| Windows 10 1809 (lokakuun 2018 päivitys) ja Windows Server 2019 | 5028936 | |
| .NET Framework 3.5, 4.7.2 | Luettelo | 5028862 |
| .NET Framework 3.5, 4.8 | Luettelo | 5028855 |
| Windows 10 1607 (Anniversary Update) ja Windows Server 2016 | ||
| .NET Framework 3.5, 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028169 |
| .NET Framework 4.8 | Luettelo | 5028854 |
| Windows 10 1507 | ||
| .NET Framework 3.5, 4.6, 4.6.2 | Luettelo | 5028186 |
| Windows Embedded 8.1 ja Windows Server 2012 R2 | 5028941 | |
| .NET Framework 3.5 | Luettelo | 5028872 |
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028864 |
| .NET Framework 4.8 | Luettelo | 5028859 |
| Windows Embedded 8 ja Windows Server 2012 | 5028940 | |
| .NET Framework 3.5 | Luettelo | 5028869 |
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028863 |
| .NET Framework 4.8 | Luettelo | 5028857 |
| Windows Embedded 7 Standard ja Windows Server 2008 R2 SP1 | 5028939 | |
| .NET Framework 3.5.1 | Luettelo | 5028871 |
| .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2 | Luettelo | 5028865 |
| .NET Framework 4.8 | Luettelo | 5028860 |
| Windows Server 2008 SP2 | 5028942 | |
| .NET Framework 2.0, 3.0 | Luettelo | 5028870 |
| .NET Framework 4.6.2 | Luettelo | 5028865 |
Päivitykset, joihin ongelma vaikuttaa
Tämä koskee seuraavia .NET Framework- ja .NET -versioita:
- .NET Framework 4.6.2, 4.7, 4.7.1 ja 4.7.2, kun 13. kesäkuuta 2022 julkaistu suojauspäivitys on asennettu.
- .NET Framework 4.8, kun 13. kesäkuuta 2022 julkaistu suojauspäivitys asennetaan.
- .NET Framework 4.8.1, kun 13. kesäkuuta 2022 julkaistu suojauspäivitys asennetaan.
- .NET 6.0.18.
- .NET 7.0.7.
Usein kysytyt kysymykset
Milloin tämä muutos otettiin käyttöön?
Tämä toimintatavan muutos otettiin käyttöön 13. kesäkuuta 2022 julkaistuissa .NET- ja .NET Framework -tietoturvapäivityksissä.
Onko minun asennettava tämä uusi päivitys?
Tämän uuden päivityksen asentaminen on tarpeen vain, jos sovelluksessasi ilmenee tämän artikkelin yläosan Oire-otsikossa kuvattu ongelma. Jos tätä ongelmaa ei ilmene, sinun ei tarvitse asentaa tätä päivitystä.
Korvaako tämä uusi päivitys 13. kesäkuuta 2023 julkaistun .NET Framework -päivityksen?
Ei. Jos käytössäsi on .NET Framework, asenna ensin 13. kesäkuuta 2023 julkaistu koontiversio tai vain suojauspäivitykset ennen uuden 22. kesäkuuta 2023 julkaistun päivityksen asentamista.
Korvaako tämä uusi päivitys .NET 6.0.18:n tai .NET 7.0.7:n?
Kyllä. Osana tätä päivitystä julkaisemme myös .NET 6.0.19- ja .NET 7.0.8 -versiot, jotka molemmat ovat ladattavissa https://get.dot.net/. Nämä versiot on tarkoitettu korvaamaan .NET 6.0.18 ja .NET 7.0.7, jotka julkaistiin 13. kesäkuuta 2023.
Ainoa ero .NET 6.0.19:n / 7.0.8:n ja .NET 6.0.18:n / 7.0.7 välillä on edellä mainittu yhteensopivuuskorjaus. .NET 6.0.19 / 7.0.8 eivät sisällä muita suojauskorjauksia kuin ne, jotka on jo julkaistu .NET 6.0.18:ssa / 7.0.7:ssä.
Suojausta koskevat tiedot
- Suojaa itsesi verkossa: Windowsin suojaus -tuki
- Lue, miten suojaudumme kyberuhilta: Microsoft Security