.NET Framework 4.7.2 est disponible
Avec le support de l'injection de dépendance dans les Web Forms et la sécurisation de cookies avec SameSite

Le , par Michael Guilloux, Chroniqueur Actualités
Microsoft vient d'annoncer la sortie de .NET Framework 4.7.2, la deuxième mise à jour apportée .NET Framework 4.7 - disponible depuis maintenant un an. La version 4.7.2 de .NET Framework vient avec un bon nombre d'améliorations cryptographiques, une meilleure prise en charge de la décompression pour les archives ZIP et d'autres API aux types de collections. Ci-dessous un aperçu des principales nouveautés :

ASP.NET

Pour ASP.NET, cette version de .NET Framework introduit deux changements notables. Le premier est la prise en charge de l'injection de dépendance dans les Web Forms. Précisons que l'intérêt de l'injection de dépendance est qu'elle permet de découpler les objets et leurs dépendances de sorte que le code d'un objet n'a plus besoin d'être modifié simplement parce qu'une dépendance a changé.

L'autre changement est la prise en charge de SameSite pour la gestion des cookies. SameSite permet de contrôler le comportement des cookies, en définissant quand ces derniers peuvent être envoyés et quand ils ne le doivent pas. .NET Framework 4.7.2 ajoute une propriété HttpCookie.SameSite qui peut prendre les valeurs SameSiteMode.Strict ou SameSiteMode.Lax.

Lorsque la valeur est Strict, cela empêchera le cookie d'être envoyé par le navigateur au site cible dans un contexte de navigation cross-site. Autrement dit, le cookie ne sera envoyé que pour les requêtes du même site. Pour un site comme GitHub, cela signifie que si un utilisateur connecté suit un lien vers un projet GitHub privé posté sur un forum de discussion ou reçu par email, GitHub ne recevra pas le cookie de session et l'utilisateur ne pourra pas pour accéder au projet. La valeur Strict sera donc plus appropriée pour un site Web de banque par exemple qui ne souhaite probablement pas permettre la liaison de pages de transactions à des sites externes. La valeur Lax, quant à elle, vise à fournir un équilibre raisonnable entre la sécurité et la facilité d'utilisation pour les sites Web qui souhaitent gérer la session de connexion de l'utilisateur après que l'utilisateur arrive à partir d'un lien externe.

La prise en charge de SameSite s'applique aux objets HttpCookie, ainsi qu'aux cookies FormsAuthentication et System.Web.SessionState. Vous pouvez définir SameSite pour un objet HttpCookie comme suit :

Code C# : Sélectionner tout
1
2
 var c = new HttpCookie("secureCookie", "same origin"); 
c.SameSite = SameSiteMode.Lax;

Vous pouvez configurer HttpCookie SameSite au niveau de l'application en modifiant le fichier de configuration Web comme suit :

Code XML : Sélectionner tout
1
2
3
 <system.web> 
   <httpCookies sameSite="Strict" /> 
</system.web>

Vous pouvez ajouter SameSite pour les des cookies FormsAuthentication et SessionState en modifiant le fichier de configuration Web comme suit :

Code XML : Sélectionner tout
1
2
3
4
5
6
7
8
 <system.web> 
   <authentication mode="Forms"> 
      <forms cookieSameSite="Lax"> 
         <!-- ...   --> 
      </forms> 
   <authentication /> 
   <sessionSate cookieSameSite="Lax"></sessionState> 
</system.web>

SQL

L'une des principales nouveautés ici est la prise en charge d'Azure Active Directory Authentication (mécanisme de connexion à Azure SQL Database et SQL Data Warehouse à l'aide d'identités dans Azure Active Directory) et l'authentification multifacteur. À propos, Microsoft explique que les exigences croissantes en matière de conformité et de sécurité veulent que de nombreux clients utilisent l'authentification multifacteur (MFA). En outre, les meilleures pratiques actuelles découragent l'inclusion de mots de passe utilisateur directement dans les chaînes de connexion. Pour ces raisons, Microsoft a étendu les chaînes de connexion SqlClient en introduisant un nouveau mot clé d'authentification Azure AD Interactive pour prendre en charge l'authentification multifacteur et Azure AD Authentication.

Cette fonctionnalité introduit une nouvelle valeur pour le mot clé « Authentication » existant, en spécifiant une nouvelle méthode d'authentification appelée « Active Directory Interactive ». Cette fonctionnalité peut être configurée avec des outils tels que SQL Server Data Tools (SSDT), comme illustré ci-dessous. Dans la dernière préversion de Visual Studio 15.7 également, une nouvelle option d'authentification appelée « Active Directory Interactive Authentication » peut être utilisée pour prendre en charge l'authentification MFA dans SQL Database.


Microsoft met également en avant des améliorations pour la fonctionnalité Always Encrypted conçue pour protéger les données sensibles, telles que les numéros de carte de crédit, qui sont stockées dans des bases de données Azure SQL Database ou SQL Server. Rappelons que la fonctionnalité Always Encrypted déjà permet aux clients de chiffrer des données sensibles dans des applications clientes et de ne jamais révéler les clés de chiffrement au moteur de base de données.

Autres changements

Il y a également des changements concernant l'implémentation des propriétés HttpClientHandler. .NET Framework 4.7.1 a ajouté huit propriétés à la classe HttpClientHandler, le gestionnaire de message par défaut utilisé par HttpClient. Cependant, deux d'entre elles lançaient une exception PlatformNotSupportedException, exception levée lorsqu'une fonctionnalité ne s'exécute pas sur une plateforme particulière. .NET Framework 4.7.2 fournit maintenant une implémentation pour ces propriétés. Les propriétés en question sont :
  • CheckCertificateRevocationList : qui permet d'obtenir ou définir une valeur qui indique si le certificat est vérifié dans la liste de révocation de l'autorité de certification ;
  • SslProtocols : qui permet d'obtenir ou définir le protocole TLS/SSL utilisé par les objets HttpClient gérés par l'objet HttpClientHandler.

Pour Windows Presentation Foundation (WPF), Microsoft parle essentiellement de nouvelles fonctionnalités qui permettent d'améliorer les diagnostics. Notons en outre que les applications compatibles HDPI pour Windows Forms, Windows Presentation Foundation (WPF) et Visual Studio Tools pour Office (VSTO) peuvent toutes être déployées à l'aide de ClickOnce, la technologie Microsoft qui permet à un utilisateur de Windows d'installer et de lancer une application en cliquant sur un lien dans une page Web. Vous trouverez plus de détails sur les nouveautés dans les notes de version de .NET Framework 4.7.2.

.NET Framework 4.7.2 est inclus dans Windows 10 April 2018 Update. Il est aussi disponible pour Windows 7 SP1 et les versions ultérieures de Windows, mais également Windows Server 2008 R2 et les versions ultérieures.

Sources : Blog Microsoft, Notes de version de .NET Framework 4.7.2

Et vous ?

Que pensez-vous des nouveautés de .NET Framework 4.7.2 ?
Lesquelles appréciez-vous le plus ? Pourquoi ?
Qu'attendez-vous encore de .NET Framework ?

Voir aussi :

.NET Framework 4.7.1 est disponible, avec le support de .NET Standard 2.0 et une amélioration des performances du ramasse-miettes
Microsoft publie la deuxième préversion de Blazor, son framework web .NET expérimental qui s'exécute au sein du navigateur
Microsoft annonce la sortie de la deuxième préversion de .NET Core 2.1, cette version est prête pour des tests plus larges
.NET Framework 4.7.2 Developer Pack Early Access build 3056 est disponible, et apporte les injections de dépendance dans WebForms


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse Signaler un problème

Avatar de redcurve redcurve - Membre averti https://www.developpez.com
le 01/05/2018 à 22:21
Même après installation du dev pack pas moyen de cibler le framework dans visual studio 2017

 
Contacter le responsable de la rubrique Accueil