Μετάβαση στο κύριο περιεχόμενο
Υποστήριξη
Είσοδος με Microsoft
Είσοδος ή δημιουργία λογαριασμού.
Γεια σας,
Επιλέξτε διαφορετικό λογαριασμό.
Έχετε πολλούς λογαριασμούς
Επιλέξτε τον λογαριασμό με τον οποίο θέλετε να εισέλθετε.

Συμπτώματα

Ας υποθέσουμε ότι έχετε κάνει αναβάθμιση σε Microsoft .NET Framework 4.6 στον υπολογιστή σας. Όταν χρησιμοποιείτε μια εφαρμογή που χρησιμοποιεί SSL 3.0 μαζί με ServicePointManager ή SslStream APIs για να συνδεθείτε με ένα διακομιστή, η σύνδεση αποτυγχάνει.

Αιτία

Αυτό το ζήτημα παρουσιάζεται επειδή έχει αλλάξει το προεπιλεγμένο σύνολο πρωτοκόλλων SSL/TLS που χρησιμοποιείται από ServicePointManager και SslStream .

Παλιά τιμή: Ssl 3.0 | TLS 1.0 | TLS 1.1


Νέα τιμή: Tls 1.0 | TLS 1.1 | TLS 1.2

Εναλλακτικός τρόπος αντιμετώπισης

Για να επιλύσετε αυτό το ζήτημα, θα πρέπει να ενημερώσετε το διακομιστή Tls 1.0, Tls 1.1 ή Tls 1.2, επειδή το SSL 3.0 έχει αποδειχθεί ότι είναι ασφαλές και ευάλωτος σε επιθέσεις όπως ΝΤΟΥΛΆΠΑ.

Σημείωση Εάν δεν μπορείτε να ενημερώσετε το διακομιστή, χρησιμοποιήστε AppContext η κλάση να εξαιρεθεί από αυτή τη δυνατότητα. Για να γίνει αυτό, χρησιμοποιήστε μία από τις ακόλουθες μεθόδους:

  • Μέσω προγραμματισμού: Πρέπει να είναι το πολύ πρώτο πράγμα την εφαρμογή επειδή ServicePointManager θα προετοιμαστεί μόνο μία φορά. Μπορείτε να χρησιμοποιήσετε το ακόλουθο παράδειγμα κώδικα στην εφαρμογή σας:

    private const string DisableCachingName = @"TestSwitch.LocalAppContext.DisableCaching";        private const string DontEnableSchUseStrongCryptoName = @"Switch.System.Net.DontEnableSchUseStrongCrypto";
    AppContext.SetSwitch(DisableCachingName, true);
    AppContext.SetSwitch(DontEnableSchUseStrongCryptoName, true);
  • Χρησιμοποιώντας το αρχείο AppConfig για την εφαρμογή σας: Προσθέστε την ακόλουθη γραμμή στο αρχείο Appconfig:
    < AppContextSwitchOverrides value="Switch.System.Net.DontEnableSchUseStrongCrypto=true"/ >



Για περισσότερες πληροφορίες σχετικά με τα γνωστά ζητήματα της 4.6 του .NET Framework, ανατρέξτε στο θέμα Γνωστά ζητήματα για το 4.6 του .NET Framework.

Περισσότερες πληροφορίες

Για περισσότερες πληροφορίες σχετικά με τις αλλαγές της τήρησης ιστορικού εκδόσεων προϊόντος και αντίκτυπο σε το 4.6 του .NET Framework, ανατρέξτε στο θέμα Συμβατότητα εφαρμογών στα το 4.6 του .NET Framework.

Σημειώσεις

  • Η νέα ρύθμιση παραμέτρων ισχύουν μόνο όταν η εφαρμογή είναι στόχευση του 4.6 του .NET Framework. Το .NET Framework 4.5.2 και παλαιότερες εκδόσεις δεν θα επηρεαστούν ακόμη και αν εκτελούνται σε περιβάλλον .NET Framework 4.6.

  • Μια λίστα των API του ανώτατου επιπέδου που επηρεάζονται:

    • HttpClient, HttpWebRequest

    • FtpClient

    • SmtpClient

    • SslStream

  • SCH_USE_STRONG_CRYPTO Αυτή η σημαία θα χρησιμοποιηθεί αυτόματα το 4.6 του .NET Framework και επηρεάζει τη συμπεριφορά καταργώντας μη ασφαλείς αλγόριθμοι κρυπτογράφησης και κλειδώματος. Για όλες τις πλατφόρμες λειτουργικό σύστημα πριν από τα Windows 10, ο αλγόριθμος RC4 θα καταργηθούν από τη χρήση. Από 10 των Windows, θα καταργηθούν οι ακόλουθοι αλγόριθμοι μη ασφαλή πρόσθετα: DES, NULL, ΕΞΑΓΩΓΉ και MD5


Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.

Σας βοήθησαν αυτές οι πληροφορίες;

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;
Πατώντας "Υποβολή" τα σχόλια σας θα χρησιμοποιηθούν για τη βελτίωση των προϊόντων και των υπηρεσιών της Microsoft. Ο διαχειριστής IT θα έχει τη δυνατότητα να συλλέξει αυτά τα δεδομένα. Δήλωση προστασίας προσωπικών δεδομένων.

Σας ευχαριστούμε για τα σχόλιά σας!

×