欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Microsoft .NET Framework 4.7.2 Web在線安裝包 簡(jiǎn)體中文正式版 32位/64位

.net 4.7.2官方下載

  • 軟件大小:1.28MB
  • 軟件語(yǔ)言:多國(guó)語(yǔ)言
  • 軟件類型:國(guó)外軟件
  • 軟件授權(quán):免費(fèi)軟件
  • 軟件類別:系統(tǒng)增強(qiáng)
  • 應(yīng)用平臺(tái):Windows平臺(tái)
  • 更新時(shí)間:2018-05-01
  • 網(wǎng)友評(píng)分:
360通過(guò) 騰訊通過(guò) 金山通過(guò)

情介紹

Microsoft .NET Framework 4.7.2是一款由微軟官方推出的最新版本,新版最大的改進(jìn)就是支持Azure Active Directory的通用和多重身份驗(yàn)證(MFA,Multi-factor authentication),同時(shí)兼容.NET 4.6、4.5及以下多個(gè)版本,兼容性良好,Web在線安裝包必須在聯(lián)網(wǎng)的情況下才能安裝,優(yōu)點(diǎn)就是安裝包體積較小,歡迎有需要此款工具的朋友們前來(lái)下載使用。

Microsoft .NET Framework 4.7.2介紹

Microsoft .NET Framework 4.7.2是與.NET Framework 4,4.5,4.5.1,4.5.2,4.6,4.6.1,4.6.2,4.7和4.7.1高度兼容的就地更新。

離線軟件包可用于由于缺乏互聯(lián)網(wǎng)連接而無(wú)法使用網(wǎng)絡(luò)安裝程序的情況。該軟件包比Web安裝程序更大,并且不包含語(yǔ)言包。我們建議您使用Web安裝程序而不是脫機(jī)安裝程序來(lái)獲得最佳效率和帶寬要求。

Microsoft .NET Framework 4.7.2 離線安裝程序:點(diǎn)擊下載

安裝此軟件包時(shí),將在您的操作系統(tǒng)上安裝以下軟件包或更新:

在Windows 7 Service Pack 1(SP1)和Windows Server 2008 R2 SP1中,.NET Framework 4.7.2在“控制面板”中的“程序和功能”項(xiàng)下列為已安裝的產(chǎn)品。

在Windows Server 2012中,Microsoft Windows更新(KB4054542)在“控制面板”中的“已安裝的更新”項(xiàng)下列出。

在Windows 8.1或Windows Server 2012 R2中,Microsoft Windows更新(KB4054566)顯示在“控制面板”中的“已安裝的更新”項(xiàng)下。

在Windows 10周年更新,Windows 10 Creators更新和Windows Server 2016中,Microsoft Windows更新(KB4054590)在“控制面板”中的“已安裝更新”項(xiàng)下列出。

在Windows 10 Fall Creators更新中,Microsoft Windows更新(KB4073120)在“控制面板”中的“已安裝更新”項(xiàng)下列出。

安裝教程

1、在本站下載Microsoft .NET Framework 4.7.2 Web在線安裝包,并解壓后,雙擊“NDP472-KB4054531-Web.exe”程序,等待片刻

2、勾選“我已閱讀并接受許可條款”并點(diǎn)擊安裝即可

官方介紹

.NET框架(.NET Framework) 是由微軟開發(fā),一個(gè)致力于敏捷軟件開發(fā)(Agile softwaredevelopment)、快速應(yīng)用開發(fā)(Rapidapplication development)、平臺(tái)無(wú)關(guān)性和網(wǎng)絡(luò)透明化的軟件開發(fā)平臺(tái)。.NET是微軟為下一個(gè)十年對(duì)服務(wù)器和桌面型軟件工程邁出的第一步。.NET包含許多有助于互聯(lián)網(wǎng)和內(nèi)部網(wǎng)應(yīng)用迅捷開發(fā)的技術(shù)。

.NET框架是一個(gè)多語(yǔ)言組件開發(fā)和執(zhí)行環(huán)境,它提供了一個(gè)跨語(yǔ)言的統(tǒng)一編程環(huán)境。.NET框架的目的是便于開發(fā)人員更容易地建立Web應(yīng)用程序和Web服務(wù),使得Internet上的各應(yīng)用程序之間,可以使用Web服務(wù)進(jìn)行溝通。從層次結(jié)構(gòu)來(lái)看,.NET框架又包括三個(gè)主要組成部分:公共語(yǔ)言運(yùn)行時(shí)(CLR:Common Language Runtime)、服務(wù)框架(Services Framework)和上層的兩類應(yīng)用模板——傳統(tǒng)的Windows應(yīng)用程序模板(Win Forms)和基于ASP NET的面向Web的網(wǎng)絡(luò)應(yīng)用程序模板(Web Forms和Web Services)。

公共語(yǔ)言運(yùn)行時(shí)(CLR),是一個(gè)運(yùn)行時(shí)環(huán)境,管理代碼的執(zhí)行并使開發(fā)過(guò)程變得更加簡(jiǎn)單。CLR是一種受控的執(zhí)行環(huán)境,其功能通過(guò)編譯器與其它工具共同展現(xiàn)。

在CLR之上的是服務(wù)框架,它提供了一套開發(fā)人員希望在標(biāo)準(zhǔn)語(yǔ)言庫(kù)中存在的基類庫(kù),包括集合、輸入/輸出、字符串及數(shù)據(jù)類。

那么,在Windows DNA(分布式集成網(wǎng)絡(luò)應(yīng)用體系結(jié)構(gòu))之后,微軟提出新的.NET框架(新托管代碼編程模型)的主要原因是什么?

問(wèn)題出現(xiàn)在已開發(fā)了多種技術(shù)的整合的一個(gè)單一應(yīng)用程序的子系統(tǒng)上。例如,一個(gè)制造企業(yè)有不同的系統(tǒng),如庫(kù)存管理系統(tǒng),物料清單系統(tǒng),財(cái)務(wù)總帳系統(tǒng),所有使用可用于應(yīng)用程序開發(fā)的各種技術(shù)實(shí)現(xiàn)的。這些系統(tǒng)需要集成在一起,從而形成一個(gè)更高級(jí)別的企業(yè)信息系統(tǒng)的組織。要做到這一點(diǎn),應(yīng)用程序開發(fā)人員必須使用如微 軟的分布式組件對(duì)象模型(DCOM),通用對(duì)象請(qǐng)求代理體系結(jié)構(gòu)(CORBA),Java遠(yuǎn)程方法調(diào)用(RMI)等技術(shù)。然而,這些分布的技術(shù)通過(guò)已開發(fā)的應(yīng)用程序編程語(yǔ)言非常緊密地耦合在一起。

跨語(yǔ)言的互操作性也是受限的。例如,如果在Visual C++類已經(jīng)被創(chuàng)建,那么不可能在Visual Basic開發(fā)新的類并將其擴(kuò)展到Visual C++。因此,開發(fā)者將不得不用每一種項(xiàng)目中用到的語(yǔ)言重新編寫同樣的邏輯的類。功能的可重用性得到了支持,但在早期的技術(shù),真正的代碼的可重用性是不可用。因此,開發(fā)人員不得不學(xué)習(xí)被用于應(yīng)用程序的開發(fā)組織用到的所有語(yǔ)言。注冊(cè)的COM組件。COM組件注冊(cè),才可以在目標(biāo)機(jī)器上使用的應(yīng)用程序。應(yīng)用程序必須查找Windows注冊(cè)表中查找并加載的COM組件。

.NET Framework 4.7.2新功能

ADO.NET

最大的改進(jìn)就是支持Azure Active Directory的通用和多重身份驗(yàn)證(MFA,Multi-factor authentication)。此外,預(yù)覽版中還修正了大量的驅(qū)動(dòng)缺陷,例如XEvents丟失、SqlBulkCopy的可靠性問(wèn)題等。

ASP.NET

ASP.NET中的主要改進(jìn)是支持Page、Custom Handler和User Control的依賴注入。但是這些改進(jìn)將如何影響設(shè)計(jì)模式和能力,具體的細(xì)節(jié)尚未公布。

另一個(gè)特性是可以控制cookies中SameSite屬性。以前只能使用URL重寫規(guī)則設(shè)置SameSite。

基類庫(kù)(BCL,Base Class Library)

HashSet得到了大量關(guān)注,其改進(jìn)包括在性能和內(nèi)存占用上的改進(jìn)、一種指定其默認(rèn)容量的方式、TryGetValue方法,以及用于LINQ支持的ToHashSet擴(kuò)展方法。

ConcurrentDictionary的性能也得到了改進(jìn),并給出了新的GetOrAdd和AddOrUpdate方法重載。

使用.NET Core給出的代碼,ReaderWriterLockSlim通過(guò)降低寫?zhàn)囸I(writer starvation)的可能性和避免喚醒多個(gè)寫,實(shí)現(xiàn)對(duì)競(jìng)爭(zhēng)問(wèn)題的更好處理。

此外還有其它一些小的性能改進(jìn),涉及DateTime、文件和目錄的枚舉、TextInfo、Comparer/EqualityComparer.Default、Buffer和ManualResetEventSlim。

CLR

就特性而言改進(jìn)很少,但是預(yù)覽版中包含了不少提高可靠性的修補(bǔ)程序,涉及代碼生成、垃圾回收和錯(cuò)誤恢復(fù)和報(bào)告等方面。

ClickOnce

現(xiàn)在支持在ClickOnce部署配置文件中啟用高DPI。高DPI支持對(duì)于高分辨率顯示器是必需的特性。Narrator作為一種重要的無(wú)障礙工具,現(xiàn)在可以和ClickOnce安裝程序一起正常工作。

網(wǎng)絡(luò)特性

對(duì)Uri、HttpClient、SmtpClient、Socket和WebSocket做了重大修正,但是沒有給出新的特性。

WCF

用于診斷WCF問(wèn)題的SvcTraceViewer工具在UI上做了改進(jìn),“更合乎邏輯”。其與SvcConfigEditor工具都做了改進(jìn),意在符合無(wú)障礙標(biāo)準(zhǔn)。

Windows Forms

在此次預(yù)覽版中,修正了一些長(zhǎng)期存在的軟件缺陷,例如DataGridView.Dispose拋出NullReferenceException異常(編者按:希望這正是我在2008年曾報(bào)告過(guò)的缺陷)。令人驚喜的是,DataGridView具有了一項(xiàng)新特性,即可使用F3可更新表中的排序順序。

更重要的是,該預(yù)覽版在無(wú)障礙問(wèn)題做了大量的工作,例如用于工具條的鍵盤無(wú)障礙支持。但是應(yīng)用如果要完全使用這些改進(jìn),必須使用.NET Framework 4.7.2重新編譯。

Windows Workflow

只給出了一些可靠性上的修正,并未提供新的特性。

WPF

只做了一些軟件缺陷的修正,涉及內(nèi)存泄漏、數(shù)據(jù)損害和崩潰等。

更新日志:

.NET Framework 4.7.2中的新增功能

.NET Framework 4.7.2包含以下幾個(gè)方面的新功能:

核心

ASP.NET

聯(lián)網(wǎng)

SQL

WPF

的ClickOnce

.NET Framework 4.7.2的持續(xù)關(guān)注點(diǎn)在于提高了可訪問(wèn)性,這使得應(yīng)用程序可以為輔助技術(shù)的用戶提供適當(dāng)?shù)捏w驗(yàn)。有關(guān).NET Framework 4.7.2中的輔助功能改進(jìn)的信息,請(qǐng)參閱.NET Framework中的輔助功能的新增功能。

核心

.NET Framework 4.7.2具有大量的加密增強(qiáng)功能,更好的ZIP壓縮解壓縮支持和其他收集API。

RSA.Create和DSA.Create的新重載

DSA.Create(DSAParameters)和RSA.Create(RSAParameters)方法讓您在實(shí)例化新的DSA或RSA密鑰時(shí)提供關(guān)鍵參數(shù)。它們?cè)试S您替換如下代碼:

C#

//在.NET Framework 4.7.2之前

使用(RSA rsa = RSA.Create())

{

rsa.ImportParameters(rsaParameters);

//使用RSA實(shí)例執(zhí)行的其他代碼。

}

與這樣的代碼:

C#

//從.NET Framework 4.7.2開始

使用(RSA rsa = RSA.Create(rsaParameters))

{

//使用rsa實(shí)例執(zhí)行的其他代碼。

}

使用DSA.Create(Int32)和RSA.Create(Int32)方法可以生成具有特定密鑰大小的新DSA或RSA密鑰。例如:

C#

使用(DSA dsa = DSA.Create(2048))

{

//使用dsa實(shí)例執(zhí)行的其他代碼。

}

Rfc2898DeriveBytes構(gòu)造函數(shù)接受一個(gè)哈希算法名稱

Rfc2898DeriveBytes類有三個(gè)帶有HashAlgorithmName參數(shù)的新構(gòu)造函數(shù),用于標(biāo)識(shí)派生密鑰時(shí)要使用的HMAC算法。開發(fā)人員不應(yīng)使用SHA-1,而應(yīng)使用基于SHA-2的HMAC,如SHA-256,如以下示例所示:

C#

private static byte [] DeriveKey(字符串密碼,out int迭代,out byte [] salt,

out HashAlgorithmName算法)

{

迭代= 100000;

algorithm = HashAlgorithmName.SHA256;

const int SaltSize = 32;

const int DerivedValueSize = 32;

使用(Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password,SaltSize,

迭代,算法))

{

salt = pbkdf2.Salt;

返回pbkdf2.GetBytes(DerivedValueSize);

}

}

支持臨時(shí)密鑰

PFX導(dǎo)入可以選擇直接從內(nèi)存加載私鑰,繞過(guò)硬盤驅(qū)動(dòng)器。當(dāng)在X509Certificate2構(gòu)造函數(shù)或X509Certificate2.Import方法的重載中指定了新的X509KeyStorageFlags.EphemeralKeySet標(biāo)志時(shí),私鑰將作為臨時(shí)密鑰加載。這可以防止密鑰在磁盤上可見。然而:

由于密鑰沒有保存到磁盤,因此使用此標(biāo)志加載的證書不適合添加到X509Store。

以這種方式加載的密鑰幾乎總是通過(guò)Windows CNG加載。因此,調(diào)用者必須通過(guò)調(diào)用擴(kuò)展方法(如cert.GetRSAPrivateKey())來(lái)訪問(wèn)私鑰。 X509Certificate2.PrivateKey屬性不起作用。

由于舊版X509Certificate2.PrivateKey屬性不適用于證書,因此開發(fā)人員在切換到臨時(shí)密鑰之前應(yīng)執(zhí)行嚴(yán)格的測(cè)試。

編程創(chuàng)建PKCS#10認(rèn)證簽名請(qǐng)求和X.509公鑰證書

從.NET Framework 4.7.2開始,工作負(fù)載可以生成證書簽名請(qǐng)求(CSR),該請(qǐng)求允許將證書請(qǐng)求生成分級(jí)到現(xiàn)有工具中。這在測(cè)試場(chǎng)景中通常很有用。

有關(guān)更多信息和代碼示例,請(qǐng)參閱.NET博客中的“編程創(chuàng)建PKCS#10認(rèn)證簽名請(qǐng)求和X.509公鑰證書”。

新的SignerInfo成員

從.NET Framework 4.7.2開始,SignerInfo類公開了有關(guān)簽名的更多信息。您可以檢索System.Security.Cryptography.Pkcs.SignerInfo.SignatureAlgorithm屬性的值以確定簽名者使用的簽名算法。可以調(diào)用SignerInfo.GetSignature來(lái)獲取簽名者的加密簽名的副本。

處理CryptoStream后,保留打開的流

從.NET Framework 4.7.2開始,CryptoStream類有一個(gè)額外的構(gòu)造函數(shù),允許Dispose不關(guān)閉包裝流。在處理CryptoStream實(shí)例后,要打開包裝流,請(qǐng)按如下所示調(diào)用新的CryptoStream構(gòu)造函數(shù):

C#

var cStream = new CryptoStream(stream,transform,mode,leaveOpen:true);

DeflateStream中的解壓縮更改

從.NET Framework 4.7.2開始,默認(rèn)情況下,DeflateStream類中的解壓縮操作的實(shí)現(xiàn)已更改為使用本機(jī)Windows API。通常,這會(huì)導(dǎo)致性能的顯著改善。

默認(rèn)情況下,對(duì)于面向.NET Framework 4.7.2的應(yīng)用程序,支持使用Windows API進(jìn)行解壓縮。面向早期版本的.NET Framework但在.NET Framework 4.7.2下運(yùn)行的應(yīng)用程序可以通過(guò)將以下AppContext開關(guān)添加到應(yīng)用程序配置文件中來(lái)選擇此行為:

XML

<AppContextSwitchOverrides value =“Switch.System.IO.Compression.DoNotUseNativeZipLibraryForDecompression = false”/>

其他收集API

.NET Framework 4.7.2為SortedSet <T>和HashSet <T>類型添加了一些新的API。這些包括:

TryGetValue方法,它將其他集合類型中使用的try模式擴(kuò)展為這兩種類型。方法是:

`public bool HashSet.TryGetValue(T equalValue,out T actualValue);

`public bool SortedSet.TryGetValue(T equalValue,out T actualValue);

Enumerable.To *擴(kuò)展方法,將集合轉(zhuǎn)換為HashSet <T>:

公共靜態(tài)HashSet ToHashSet(此IEnumerable源);

公共靜態(tài)HashSet ToHashSet(此IEnumerable來(lái)源,IEqualityComparer比較器);

使用新的HashSet <T>構(gòu)造函數(shù)可以設(shè)置集合的容量,當(dāng)您事先知道HashSet <T>的大小時(shí)會(huì)產(chǎn)生性能優(yōu)勢(shì):

公共HashSet(int容量)

公共HashSet(int容量,IEqualityComparer比較器)

ConcurrentDictionary <TKey,TValue>類包含AddOrUpdate和GetOrAdd方法的新重載,用于從字典中檢索值或添加它(如果找不到),并向字典中添加值或在字典中已存在時(shí)更新它。

C#

public TValue AddOrUpdate <TArg>(TKey key,F(xiàn)unc <TKey,TArg,TValue> addValueFactory,F(xiàn)unc <TKey,TValue,TArg,TValue> updateValueFactory,TArg factoryArgument)

public TValue GetOrAdd <TArg>(TKey key,F(xiàn)unc <TKey,TArg,TValue> valueFactory,TArg factoryArgument)

ASP.NET

支持Web窗體中的依賴注入

依賴注入(DI)將對(duì)象及其依賴關(guān)系解耦,以便僅僅因?yàn)橐蕾囮P(guān)系已更改而不再需要更改對(duì)象的代碼。在開發(fā)面向.NET Framework 4.7.2的ASP.NET應(yīng)用程序時(shí),您可以:

在處理程序和模塊,頁(yè)面實(shí)例以及ASP.NET Web應(yīng)用程序項(xiàng)目的用戶控件中使用基于setter,基于接口和基于構(gòu)造函數(shù)的注入。

在ASP.NET網(wǎng)站項(xiàng)目的處理程序和模塊,頁(yè)面實(shí)例和用戶控件中使用基于setter和基于接口的注入。

插入不同的依賴注入框架。

支持同一站點(diǎn)的cookies

SameSite可防止瀏覽器隨同跨站點(diǎn)請(qǐng)求一起發(fā)送cookie。 .NET Framework 4.7.2添加了一個(gè)HttpCookie.SameSite屬性,其值是一個(gè)System.Web.SameSiteMode枚舉成員。如果它的值是SameSiteMode.Strict或SameSiteMode.Lax,則ASP.NET會(huì)將SameSite屬性添加到set-cookie標(biāo)頭。 SameSite支持適用于HttpCookie對(duì)象,以及FormsAuthentication和System.Web.SessionState cookie。

您可以為HttpCookie對(duì)象設(shè)置SameSite,如下所示:

C#

var c = new HttpCookie(“secureCookie”,“同源”);

c.SameSite = SameSiteMode.Lax;

您還可以通過(guò)修改web.config文件在應(yīng)用程序級(jí)配置SameSite cookie:

XML

在<system.web>

<httpCookies sameSite =“嚴(yán)格”/>

</system.web>

您可以通過(guò)修改Web配置文件來(lái)為FormsAuthentication和System.Web.SessionState cookies添加SameSite:

XML

在<system.web>

<authentication mode =“Forms”>

<形式cookieSameSite =“Lax”>

<! - ... - >

</表格>

<認(rèn)證/>

<sessionSate cookieSameSite =“Lax”> </ sessionState>

</system.web>

聯(lián)網(wǎng)

實(shí)現(xiàn)HttpClientHandler屬性

.NET Framework 4.7.1向System.Net.Http.HttpClientHandler類添加了八個(gè)屬性。但是,兩個(gè)拋出了PlatformNotSupportedException。 .NET Framework 4.7.2現(xiàn)在為這些屬性提供了一個(gè)實(shí)現(xiàn)。這些屬性是:

CheckCertificateRevocationList

SslProtocols

SQLCLIENT

支持Azure Active Directory通用身份驗(yàn)證和多因素身份驗(yàn)證

不斷增長(zhǎng)的合規(guī)性和安全性要求要求許多客戶使用多因素認(rèn)證(MFA)。另外,目前的最佳實(shí)踐不鼓勵(lì)直接在連接字符串中包含用戶密碼。為了支持這些更改,.NET Framework 4.7.2通過(guò)為現(xiàn)有的“Authentication”關(guān)鍵字添加新值“Active Directory Interactive”來(lái)擴(kuò)展SQLClient連接字符串,以支持MFA和Azure AD身份驗(yàn)證。新的交互式方法支持本地和聯(lián)合Azure AD用戶以及Azure AD來(lái)賓用戶。使用此方法時(shí),SQL數(shù)據(jù)庫(kù)支持由Azure AD強(qiáng)制實(shí)施的MFA身份驗(yàn)證。另外,認(rèn)證過(guò)程要求用戶密碼遵守安全最佳實(shí)踐。

在以前版本的.NET Framework中,SQL連接僅支持SqlAuthenticationMethod.ActiveDirectoryPassword和SqlAuthenticationMethod.ActiveDirectoryIntegrated選項(xiàng)。這兩者都是非交互式ADAL協(xié)議的一部分,不支持MFA。使用新的SqlAuthenticationMethod.ActiveDirectoryInteractive選項(xiàng),SQL連接支持MFA以及現(xiàn)有的身份驗(yàn)證方法(密碼和集成身份驗(yàn)證),它允許用戶以交互方式輸入用戶密碼,而無(wú)需在連接字符串中保留密碼。

有關(guān)更多信息和示例,請(qǐng)參閱.NET博客中的“SQL - Azure AD通用和多因素身份驗(yàn)證支持”。

支持始終加密版本2

NET Framework 4.7.2增加了對(duì)基于飛地的Always Encrypted的支持。 Always Encrypted的原始版本是客戶端加密技術(shù),加密密鑰永遠(yuǎn)不會(huì)離開客戶端。在基于飛域的始終加密中,客戶端可以選擇將加密密鑰發(fā)送到安全飛地,這是一個(gè)安全的計(jì)算實(shí)體,可被視為SQL Server的一部分,但SQL Server代碼無(wú)法篡改。要支持基于區(qū)域的始終加密,.NET Framework 4.7.2將以下類型和成員添加到System.Data.SqlClient命名空間中:

SqlConnectionStringBuilder.EnclaveAttestationUrl,它為基于飛機(jī)的總是加密指定Uri。

SqlColumnEncryptionEnclaveProvider,它是派生所有飛地提供者的抽象類。

SqlEnclaveSession,它封裝了給定飛地會(huì)話的狀態(tài)。

SqlEnclaveAttestationParameters,它提供SQL Server用于獲取執(zhí)行特定證明協(xié)議所需信息的證明參數(shù)。

應(yīng)用程序配置文件然后指定提供包圍提供程序功能的抽象System.Data.SqlClient.SqlColumnEncryptionEnclaveProvider類的具體實(shí)現(xiàn)。例如:

XML

<結(jié)構(gòu)>

<configSections>

<section name =“SqlColumnEncryptionEnclaveProviders”type =“System.Data.SqlClient.SqlColumnEncryptionEnclaveProviderConfigurationSection,System.Data,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”/>

</ configSections>

<SqlColumnEncryptionEnclaveProviders>

<提供商>

<add name =“Azure”type =“Microsoft.SqlServer.Management.AlwaysEncrypted.AzureEnclaveProvider,MyApp”/>

<add name =“HGS”type =“Microsoft.SqlServer.Management.AlwaysEncrypted.HGSEnclaveProvider,MyApp”/>

</提供商>

</ SqlColumnEncryptionEnclaveProviders>

</配置>

基于飛地的總是加密的基本流程是:

用戶創(chuàng)建一個(gè)AlwaysEncrypted連接到SQL Server,支持基于飛地的Always Encrypted。司機(jī)聯(lián)系證明服務(wù),以確保它連接到正確的飛地。

一旦飛地被證實(shí),驅(qū)動(dòng)程序就會(huì)與SQL Server上托管的安全區(qū)域建立安全通道。

在SQL連接期間,驅(qū)動(dòng)程序共享客戶端授權(quán)的加密密鑰和安全區(qū)域。

Windows Presentation Foundation

按源查找資源詞典

從.NET Framework 4.7.2開始,診斷助理可以找到從給定源Uri創(chuàng)建的ResourceDictionaries。 (此功能僅供診斷助理使用,不能由生產(chǎn)應(yīng)用程序使用。)Visual Studio的“編輯并繼續(xù)”功能等診斷助理允許其用戶編輯ResourceDictionary,其目的是將更改應(yīng)用于正在運(yùn)行的應(yīng)用程序。實(shí)現(xiàn)這一目標(biāo)的一個(gè)步驟是查找正在編輯的字典中正在運(yùn)行的應(yīng)用程序創(chuàng)建的所有ResourceDictionaries。例如,應(yīng)用程序可以聲明一個(gè)ResourceDictionary,其內(nèi)容是從給定的源URI中復(fù)制的:

XML

<ResourceDictionary Source =“MyRD.xaml”>

在MyRD.xaml中編輯原始標(biāo)記的診斷助理可以使用新功能來(lái)查找字典。該功能由一個(gè)新的靜態(tài)方法ResourceDictionaryDiagnostics.GetResourceDictionariesForSource實(shí)現(xiàn)。診斷助理使用標(biāo)識(shí)原始標(biāo)記的絕對(duì)URI來(lái)調(diào)用新方法,如以下代碼所示:

C#

IEnumerable <ResourceDictionary> dictionaries = ResourceDictionaryDiagnostics.GetResourceDictionariesForSource(new Uri(“pack:// application:,,, / MyApp; component / MyRD.xaml”));

該方法返回一個(gè)空的枚舉值,除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量。

查找ResourceDictionary所有者

從.NET Framework 4.7.2開始,診斷助理可以找到給定ResourceDictionary的所有者。 (此功能僅供診斷助理使用,不供生產(chǎn)應(yīng)用程序使用。)每當(dāng)對(duì)ResourceDictionary進(jìn)行更改時(shí),WPF都會(huì)自動(dòng)查找可能受更改影響的所有DynamicResource引用。

診斷助理(如Visual Studio的“編輯并繼續(xù)”工具)可能希望將其擴(kuò)展為處理StaticResource引用。這個(gè)過(guò)程的第一步是找到字典的所有者;即查找Resources屬性引用詞典的所有對(duì)象(直接或間接通過(guò)ResourceDictionary.MergedDictionaries屬性)。 System.Windows.Diagnostics.ResourceDictionaryDiagnostics類實(shí)現(xiàn)了三個(gè)新的靜態(tài)方法,每個(gè)具有Resources屬性的基類型都支持此步驟:

公共靜態(tài)IEnumerable <FrameworkElement> GetFrameworkElementOwners(ResourceDictionary字典);

公共靜態(tài)IEnumerable <FrameworkContentElement> GetFrameworkContentElementOwners(ResourceDictionary字典);

公共靜態(tài)IEnumerable <Application> GetApplicationOwners(ResourceDictionary字典);

除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量,否則這些方法將返回空的枚舉。

查找StaticResource引用

無(wú)論什么時(shí)候解決StaticResource引用,診斷助理現(xiàn)在都可以收到通知。 (此功能供診斷助理使用,而非生產(chǎn)應(yīng)用程序。)Visual Studio的“編輯并繼續(xù)”工具等診斷助理可能希望在ResourceDictionary中的值更改時(shí)更新資源的所有用途。 WPF為DynamicResource引用自動(dòng)執(zhí)行此操作,但它對(duì)靜態(tài)資源引用不會(huì)這樣做。從.NET Framework 4.7.2開始,診斷助理可以使用這些通知來(lái)查找這些靜態(tài)資源的用途。

通知由新的ResourceDictionaryDiagnostics.StaticResourceResolved事件實(shí)現(xiàn):

C#

公共靜態(tài)事件EventHandler <StaticResourceResolvedEventArgs> StaticResourceResolved;

只要運(yùn)行時(shí)解析了StaticResource引用,就會(huì)引發(fā)此事件。 StaticResourceResolvedEventArgs參數(shù)描述分辨率,并指出承載StaticResource引用的對(duì)象和屬性以及用于解決方案的ResourceDictionary和密鑰:

C#

公共類StaticResourceResolvedEventArgs:EventArgs

{

public Object TargetObject {get; }

public Object TargetProperty {get; }

public ResourceDictionary ResourceDictionary {get; }

公共對(duì)象ResourceKey {get; }

}

除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量,否則不會(huì)引發(fā)該事件(并且忽略其addor訪問(wèn)器)。

的ClickOnce

Windows Forms,Windows Presentation Foundation(WPF)和Visual Studio Tools for Office(VSTO)的支持HDPI的應(yīng)用程序都可以使用ClickOnce進(jìn)行部署。如果在應(yīng)用程序清單中找到以下條目,則在.NET Framework 4.7.2下部署將會(huì)成功:

XML

<windowsSettings>

<dpiAware xmlns =“http://schemas.microsoft.com/SMI/2005/WindowsSettings”> true </ dpiAware>

</ windowsSettings>

對(duì)于Windows窗體應(yīng)用程序,在應(yīng)用程序配置文件而不是應(yīng)用程序清單中設(shè)置DPI感知的以前解決方法不再需要ClickOnce部署成功。

Microsoft .NET Framework 4.7.2是一款由微軟官方推出的最新版本,新版最大的改進(jìn)就是支持Azure Active Directory的通用和多重身份驗(yàn)證(MFA,Multi-factor authentication),同時(shí)兼容.NET 4.6、4.5及以下多個(gè)版本,兼容性良好,離線安裝包可以在無(wú)網(wǎng)絡(luò)的情況下載安裝使用,歡迎有需要此款工具的朋友們前來(lái)下載使用。

Microsoft .NET Framework 4.7.2介紹

Microsoft .NET Framework 4.7.2是與.NET Framework 4,4.5,4.5.1,4.5.2,4.6,4.6.1,4.6.2,4.7和4.7.1高度兼容的就地更新。

離線軟件包可用于由于缺乏互聯(lián)網(wǎng)連接而無(wú)法使用網(wǎng)絡(luò)安裝程序的情況。該軟件包比Web安裝程序更大,并且不包含語(yǔ)言包。我們建議您使用Web安裝程序而不是脫機(jī)安裝程序來(lái)獲得最佳效率和帶寬要求。

Microsoft .NET Framework 4.7.2 Web在線安裝程序:點(diǎn)擊下載

安裝此軟件包時(shí),將在您的操作系統(tǒng)上安裝以下軟件包或更新:

在Windows 7 Service Pack 1(SP1)和Windows Server 2008 R2 SP1中,.NET Framework 4.7.2在“控制面板”中的“程序和功能”項(xiàng)下列為已安裝的產(chǎn)品。

在Windows Server 2012中,Microsoft Windows更新(KB4054542)在“控制面板”中的“已安裝的更新”項(xiàng)下列出。

在Windows 8.1或Windows Server 2012 R2中,Microsoft Windows更新(KB4054566)顯示在“控制面板”中的“已安裝的更新”項(xiàng)下。

在Windows 10周年更新,Windows 10 Creators更新和Windows Server 2016中,Microsoft Windows更新(KB4054590)在“控制面板”中的“已安裝更新”項(xiàng)下列出。

在Windows 10 Fall Creators更新中,Microsoft Windows更新(KB4073120)在“控制面板”中的“已安裝更新”項(xiàng)下列出。

安裝教程

1、在本站下載Microsoft .NET Framework 4.7.2離線安裝包,并解壓后,雙擊“NDP472-KB4054530-x86-x64-AllOS-ENU.exe”程序,等待片刻

2、勾選“我已閱讀并接受許可條款”并點(diǎn)擊安裝即可

官方介紹

.NET框架(.NET Framework) 是由微軟開發(fā),一個(gè)致力于敏捷軟件開發(fā)(Agile softwaredevelopment)、快速應(yīng)用開發(fā)(Rapidapplication development)、平臺(tái)無(wú)關(guān)性和網(wǎng)絡(luò)透明化的軟件開發(fā)平臺(tái)。.NET是微軟為下一個(gè)十年對(duì)服務(wù)器和桌面型軟件工程邁出的第一步。.NET包含許多有助于互聯(lián)網(wǎng)和內(nèi)部網(wǎng)應(yīng)用迅捷開發(fā)的技術(shù)。

.NET框架是一個(gè)多語(yǔ)言組件開發(fā)和執(zhí)行環(huán)境,它提供了一個(gè)跨語(yǔ)言的統(tǒng)一編程環(huán)境。.NET框架的目的是便于開發(fā)人員更容易地建立Web應(yīng)用程序和Web服務(wù),使得Internet上的各應(yīng)用程序之間,可以使用Web服務(wù)進(jìn)行溝通。從層次結(jié)構(gòu)來(lái)看,.NET框架又包括三個(gè)主要組成部分:公共語(yǔ)言運(yùn)行時(shí)(CLR:Common Language Runtime)、服務(wù)框架(Services Framework)和上層的兩類應(yīng)用模板——傳統(tǒng)的Windows應(yīng)用程序模板(Win Forms)和基于ASP NET的面向Web的網(wǎng)絡(luò)應(yīng)用程序模板(Web Forms和Web Services)。

公共語(yǔ)言運(yùn)行時(shí)(CLR),是一個(gè)運(yùn)行時(shí)環(huán)境,管理代碼的執(zhí)行并使開發(fā)過(guò)程變得更加簡(jiǎn)單。CLR是一種受控的執(zhí)行環(huán)境,其功能通過(guò)編譯器與其它工具共同展現(xiàn)。

在CLR之上的是服務(wù)框架,它提供了一套開發(fā)人員希望在標(biāo)準(zhǔn)語(yǔ)言庫(kù)中存在的基類庫(kù),包括集合、輸入/輸出、字符串及數(shù)據(jù)類。

那么,在Windows DNA(分布式集成網(wǎng)絡(luò)應(yīng)用體系結(jié)構(gòu))之后,微軟提出新的.NET框架(新托管代碼編程模型)的主要原因是什么?

問(wèn)題出現(xiàn)在已開發(fā)了多種技術(shù)的整合的一個(gè)單一應(yīng)用程序的子系統(tǒng)上。例如,一個(gè)制造企業(yè)有不同的系統(tǒng),如庫(kù)存管理系統(tǒng),物料清單系統(tǒng),財(cái)務(wù)總帳系統(tǒng),所有使用可用于應(yīng)用程序開發(fā)的各種技術(shù)實(shí)現(xiàn)的。這些系統(tǒng)需要集成在一起,從而形成一個(gè)更高級(jí)別的企業(yè)信息系統(tǒng)的組織。要做到這一點(diǎn),應(yīng)用程序開發(fā)人員必須使用如微 軟的分布式組件對(duì)象模型(DCOM),通用對(duì)象請(qǐng)求代理體系結(jié)構(gòu)(CORBA),Java遠(yuǎn)程方法調(diào)用(RMI)等技術(shù)。然而,這些分布的技術(shù)通過(guò)已開發(fā)的應(yīng)用程序編程語(yǔ)言非常緊密地耦合在一起。

跨語(yǔ)言的互操作性也是受限的。例如,如果在Visual C++類已經(jīng)被創(chuàng)建,那么不可能在Visual Basic開發(fā)新的類并將其擴(kuò)展到Visual C++。因此,開發(fā)者將不得不用每一種項(xiàng)目中用到的語(yǔ)言重新編寫同樣的邏輯的類。功能的可重用性得到了支持,但在早期的技術(shù),真正的代碼的可重用性是不可用。因此,開發(fā)人員不得不學(xué)習(xí)被用于應(yīng)用程序的開發(fā)組織用到的所有語(yǔ)言。注冊(cè)的COM組件。COM組件注冊(cè),才可以在目標(biāo)機(jī)器上使用的應(yīng)用程序。應(yīng)用程序必須查找Windows注冊(cè)表中查找并加載的COM組件。

.NET Framework 4.7.2新功能

ADO.NET

最大的改進(jìn)就是支持Azure Active Directory的通用和多重身份驗(yàn)證(MFA,Multi-factor authentication)。此外,預(yù)覽版中還修正了大量的驅(qū)動(dòng)缺陷,例如XEvents丟失、SqlBulkCopy的可靠性問(wèn)題等。

ASP.NET

ASP.NET中的主要改進(jìn)是支持Page、Custom Handler和User Control的依賴注入。但是這些改進(jìn)將如何影響設(shè)計(jì)模式和能力,具體的細(xì)節(jié)尚未公布。

另一個(gè)特性是可以控制cookies中SameSite屬性。以前只能使用URL重寫規(guī)則設(shè)置SameSite。

基類庫(kù)(BCL,Base Class Library)

HashSet得到了大量關(guān)注,其改進(jìn)包括在性能和內(nèi)存占用上的改進(jìn)、一種指定其默認(rèn)容量的方式、TryGetValue方法,以及用于LINQ支持的ToHashSet擴(kuò)展方法。

ConcurrentDictionary的性能也得到了改進(jìn),并給出了新的GetOrAdd和AddOrUpdate方法重載。

使用.NET Core給出的代碼,ReaderWriterLockSlim通過(guò)降低寫?zhàn)囸I(writer starvation)的可能性和避免喚醒多個(gè)寫,實(shí)現(xiàn)對(duì)競(jìng)爭(zhēng)問(wèn)題的更好處理。

此外還有其它一些小的性能改進(jìn),涉及DateTime、文件和目錄的枚舉、TextInfo、Comparer/EqualityComparer.Default、Buffer和ManualResetEventSlim。

CLR

就特性而言改進(jìn)很少,但是預(yù)覽版中包含了不少提高可靠性的修補(bǔ)程序,涉及代碼生成、垃圾回收和錯(cuò)誤恢復(fù)和報(bào)告等方面。

ClickOnce

現(xiàn)在支持在ClickOnce部署配置文件中啟用高DPI。高DPI支持對(duì)于高分辨率顯示器是必需的特性。Narrator作為一種重要的無(wú)障礙工具,現(xiàn)在可以和ClickOnce安裝程序一起正常工作。

網(wǎng)絡(luò)特性

對(duì)Uri、HttpClient、SmtpClient、Socket和WebSocket做了重大修正,但是沒有給出新的特性。

WCF

用于診斷WCF問(wèn)題的SvcTraceViewer工具在UI上做了改進(jìn),“更合乎邏輯”。其與SvcConfigEditor工具都做了改進(jìn),意在符合無(wú)障礙標(biāo)準(zhǔn)。

Windows Forms

在此次預(yù)覽版中,修正了一些長(zhǎng)期存在的軟件缺陷,例如DataGridView.Dispose拋出NullReferenceException異常(編者按:希望這正是我在2008年曾報(bào)告過(guò)的缺陷)。令人驚喜的是,DataGridView具有了一項(xiàng)新特性,即可使用F3可更新表中的排序順序。

更重要的是,該預(yù)覽版在無(wú)障礙問(wèn)題做了大量的工作,例如用于工具條的鍵盤無(wú)障礙支持。但是應(yīng)用如果要完全使用這些改進(jìn),必須使用.NET Framework 4.7.2重新編譯。

Windows Workflow

只給出了一些可靠性上的修正,并未提供新的特性。

WPF

只做了一些軟件缺陷的修正,涉及內(nèi)存泄漏、數(shù)據(jù)損害和崩潰等。

更新日志:

.NET Framework 4.7.2中的新增功能

.NET Framework 4.7.2包含以下幾個(gè)方面的新功能:

核心

ASP.NET

聯(lián)網(wǎng)

SQL

WPF

的ClickOnce

.NET Framework 4.7.2的持續(xù)關(guān)注點(diǎn)在于提高了可訪問(wèn)性,這使得應(yīng)用程序可以為輔助技術(shù)的用戶提供適當(dāng)?shù)捏w驗(yàn)。有關(guān).NET Framework 4.7.2中的輔助功能改進(jìn)的信息,請(qǐng)參閱.NET Framework中的輔助功能的新增功能。

核心

.NET Framework 4.7.2具有大量的加密增強(qiáng)功能,更好的ZIP壓縮解壓縮支持和其他收集API。

RSA.Create和DSA.Create的新重載

DSA.Create(DSAParameters)和RSA.Create(RSAParameters)方法讓您在實(shí)例化新的DSA或RSA密鑰時(shí)提供關(guān)鍵參數(shù)。它們?cè)试S您替換如下代碼:

C#

//在.NET Framework 4.7.2之前

使用(RSA rsa = RSA.Create())

{

rsa.ImportParameters(rsaParameters);

//使用RSA實(shí)例執(zhí)行的其他代碼。

}

與這樣的代碼:

C#

//從.NET Framework 4.7.2開始

使用(RSA rsa = RSA.Create(rsaParameters))

{

//使用rsa實(shí)例執(zhí)行的其他代碼。

}

使用DSA.Create(Int32)和RSA.Create(Int32)方法可以生成具有特定密鑰大小的新DSA或RSA密鑰。例如:

C#

使用(DSA dsa = DSA.Create(2048))

{

//使用dsa實(shí)例執(zhí)行的其他代碼。

}

Rfc2898DeriveBytes構(gòu)造函數(shù)接受一個(gè)哈希算法名稱

Rfc2898DeriveBytes類有三個(gè)帶有HashAlgorithmName參數(shù)的新構(gòu)造函數(shù),用于標(biāo)識(shí)派生密鑰時(shí)要使用的HMAC算法。開發(fā)人員不應(yīng)使用SHA-1,而應(yīng)使用基于SHA-2的HMAC,如SHA-256,如以下示例所示:

C#

private static byte [] DeriveKey(字符串密碼,out int迭代,out byte [] salt,

out HashAlgorithmName算法)

{

迭代= 100000;

algorithm = HashAlgorithmName.SHA256;

const int SaltSize = 32;

const int DerivedValueSize = 32;

使用(Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password,SaltSize,

迭代,算法))

{

salt = pbkdf2.Salt;

返回pbkdf2.GetBytes(DerivedValueSize);

}

}

支持臨時(shí)密鑰

PFX導(dǎo)入可以選擇直接從內(nèi)存加載私鑰,繞過(guò)硬盤驅(qū)動(dòng)器。當(dāng)在X509Certificate2構(gòu)造函數(shù)或X509Certificate2.Import方法的重載中指定了新的X509KeyStorageFlags.EphemeralKeySet標(biāo)志時(shí),私鑰將作為臨時(shí)密鑰加載。這可以防止密鑰在磁盤上可見。然而:

由于密鑰沒有保存到磁盤,因此使用此標(biāo)志加載的證書不適合添加到X509Store。

以這種方式加載的密鑰幾乎總是通過(guò)Windows CNG加載。因此,調(diào)用者必須通過(guò)調(diào)用擴(kuò)展方法(如cert.GetRSAPrivateKey())來(lái)訪問(wèn)私鑰。 X509Certificate2.PrivateKey屬性不起作用。

由于舊版X509Certificate2.PrivateKey屬性不適用于證書,因此開發(fā)人員在切換到臨時(shí)密鑰之前應(yīng)執(zhí)行嚴(yán)格的測(cè)試。

編程創(chuàng)建PKCS#10認(rèn)證簽名請(qǐng)求和X.509公鑰證書

從.NET Framework 4.7.2開始,工作負(fù)載可以生成證書簽名請(qǐng)求(CSR),該請(qǐng)求允許將證書請(qǐng)求生成分級(jí)到現(xiàn)有工具中。這在測(cè)試場(chǎng)景中通常很有用。

有關(guān)更多信息和代碼示例,請(qǐng)參閱.NET博客中的“編程創(chuàng)建PKCS#10認(rèn)證簽名請(qǐng)求和X.509公鑰證書”。

新的SignerInfo成員

從.NET Framework 4.7.2開始,SignerInfo類公開了有關(guān)簽名的更多信息。您可以檢索System.Security.Cryptography.Pkcs.SignerInfo.SignatureAlgorithm屬性的值以確定簽名者使用的簽名算法??梢哉{(diào)用SignerInfo.GetSignature來(lái)獲取簽名者的加密簽名的副本。

處理CryptoStream后,保留打開的流

從.NET Framework 4.7.2開始,CryptoStream類有一個(gè)額外的構(gòu)造函數(shù),允許Dispose不關(guān)閉包裝流。在處理CryptoStream實(shí)例后,要打開包裝流,請(qǐng)按如下所示調(diào)用新的CryptoStream構(gòu)造函數(shù):

C#

var cStream = new CryptoStream(stream,transform,mode,leaveOpen:true);

DeflateStream中的解壓縮更改

從.NET Framework 4.7.2開始,默認(rèn)情況下,DeflateStream類中的解壓縮操作的實(shí)現(xiàn)已更改為使用本機(jī)Windows API。通常,這會(huì)導(dǎo)致性能的顯著改善。

默認(rèn)情況下,對(duì)于面向.NET Framework 4.7.2的應(yīng)用程序,支持使用Windows API進(jìn)行解壓縮。面向早期版本的.NET Framework但在.NET Framework 4.7.2下運(yùn)行的應(yīng)用程序可以通過(guò)將以下AppContext開關(guān)添加到應(yīng)用程序配置文件中來(lái)選擇此行為:

XML

<AppContextSwitchOverrides value =“Switch.System.IO.Compression.DoNotUseNativeZipLibraryForDecompression = false”/>

其他收集API

.NET Framework 4.7.2為SortedSet <T>和HashSet <T>類型添加了一些新的API。這些包括:

TryGetValue方法,它將其他集合類型中使用的try模式擴(kuò)展為這兩種類型。方法是:

`public bool HashSet.TryGetValue(T equalValue,out T actualValue);

`public bool SortedSet.TryGetValue(T equalValue,out T actualValue);

Enumerable.To *擴(kuò)展方法,將集合轉(zhuǎn)換為HashSet <T>:

公共靜態(tài)HashSet ToHashSet(此IEnumerable源);

公共靜態(tài)HashSet ToHashSet(此IEnumerable來(lái)源,IEqualityComparer比較器);

使用新的HashSet <T>構(gòu)造函數(shù)可以設(shè)置集合的容量,當(dāng)您事先知道HashSet <T>的大小時(shí)會(huì)產(chǎn)生性能優(yōu)勢(shì):

公共HashSet(int容量)

公共HashSet(int容量,IEqualityComparer比較器)

ConcurrentDictionary <TKey,TValue>類包含AddOrUpdate和GetOrAdd方法的新重載,用于從字典中檢索值或添加它(如果找不到),并向字典中添加值或在字典中已存在時(shí)更新它。

C#

public TValue AddOrUpdate <TArg>(TKey key,F(xiàn)unc <TKey,TArg,TValue> addValueFactory,F(xiàn)unc <TKey,TValue,TArg,TValue> updateValueFactory,TArg factoryArgument)

public TValue GetOrAdd <TArg>(TKey key,F(xiàn)unc <TKey,TArg,TValue> valueFactory,TArg factoryArgument)

ASP.NET

支持Web窗體中的依賴注入

依賴注入(DI)將對(duì)象及其依賴關(guān)系解耦,以便僅僅因?yàn)橐蕾囮P(guān)系已更改而不再需要更改對(duì)象的代碼。在開發(fā)面向.NET Framework 4.7.2的ASP.NET應(yīng)用程序時(shí),您可以:

在處理程序和模塊,頁(yè)面實(shí)例以及ASP.NET Web應(yīng)用程序項(xiàng)目的用戶控件中使用基于setter,基于接口和基于構(gòu)造函數(shù)的注入。

在ASP.NET網(wǎng)站項(xiàng)目的處理程序和模塊,頁(yè)面實(shí)例和用戶控件中使用基于setter和基于接口的注入。

插入不同的依賴注入框架。

支持同一站點(diǎn)的cookies

SameSite可防止瀏覽器隨同跨站點(diǎn)請(qǐng)求一起發(fā)送cookie。 .NET Framework 4.7.2添加了一個(gè)HttpCookie.SameSite屬性,其值是一個(gè)System.Web.SameSiteMode枚舉成員。如果它的值是SameSiteMode.Strict或SameSiteMode.Lax,則ASP.NET會(huì)將SameSite屬性添加到set-cookie標(biāo)頭。 SameSite支持適用于HttpCookie對(duì)象,以及FormsAuthentication和System.Web.SessionState cookie。

您可以為HttpCookie對(duì)象設(shè)置SameSite,如下所示:

C#

var c = new HttpCookie(“secureCookie”,“同源”);

c.SameSite = SameSiteMode.Lax;

您還可以通過(guò)修改web.config文件在應(yīng)用程序級(jí)配置SameSite cookie:

XML

在<system.web>

<httpCookies sameSite =“嚴(yán)格”/>

</system.web>

您可以通過(guò)修改Web配置文件來(lái)為FormsAuthentication和System.Web.SessionState cookies添加SameSite:

XML

在<system.web>

<authentication mode =“Forms”>

<形式cookieSameSite =“Lax”>

<! - ... - >

</表格>

<認(rèn)證/>

<sessionSate cookieSameSite =“Lax”> </ sessionState>

</system.web>

聯(lián)網(wǎng)

實(shí)現(xiàn)HttpClientHandler屬性

.NET Framework 4.7.1向System.Net.Http.HttpClientHandler類添加了八個(gè)屬性。但是,兩個(gè)拋出了PlatformNotSupportedException。 .NET Framework 4.7.2現(xiàn)在為這些屬性提供了一個(gè)實(shí)現(xiàn)。這些屬性是:

CheckCertificateRevocationList

SslProtocols

SQLCLIENT

支持Azure Active Directory通用身份驗(yàn)證和多因素身份驗(yàn)證

不斷增長(zhǎng)的合規(guī)性和安全性要求要求許多客戶使用多因素認(rèn)證(MFA)。另外,目前的最佳實(shí)踐不鼓勵(lì)直接在連接字符串中包含用戶密碼。為了支持這些更改,.NET Framework 4.7.2通過(guò)為現(xiàn)有的“Authentication”關(guān)鍵字添加新值“Active Directory Interactive”來(lái)擴(kuò)展SQLClient連接字符串,以支持MFA和Azure AD身份驗(yàn)證。新的交互式方法支持本地和聯(lián)合Azure AD用戶以及Azure AD來(lái)賓用戶。使用此方法時(shí),SQL數(shù)據(jù)庫(kù)支持由Azure AD強(qiáng)制實(shí)施的MFA身份驗(yàn)證。另外,認(rèn)證過(guò)程要求用戶密碼遵守安全最佳實(shí)踐。

在以前版本的.NET Framework中,SQL連接僅支持SqlAuthenticationMethod.ActiveDirectoryPassword和SqlAuthenticationMethod.ActiveDirectoryIntegrated選項(xiàng)。這兩者都是非交互式ADAL協(xié)議的一部分,不支持MFA。使用新的SqlAuthenticationMethod.ActiveDirectoryInteractive選項(xiàng),SQL連接支持MFA以及現(xiàn)有的身份驗(yàn)證方法(密碼和集成身份驗(yàn)證),它允許用戶以交互方式輸入用戶密碼,而無(wú)需在連接字符串中保留密碼。

有關(guān)更多信息和示例,請(qǐng)參閱.NET博客中的“SQL - Azure AD通用和多因素身份驗(yàn)證支持”。

支持始終加密版本2

NET Framework 4.7.2增加了對(duì)基于飛地的Always Encrypted的支持。 Always Encrypted的原始版本是客戶端加密技術(shù),加密密鑰永遠(yuǎn)不會(huì)離開客戶端。在基于飛域的始終加密中,客戶端可以選擇將加密密鑰發(fā)送到安全飛地,這是一個(gè)安全的計(jì)算實(shí)體,可被視為SQL Server的一部分,但SQL Server代碼無(wú)法篡改。要支持基于區(qū)域的始終加密,.NET Framework 4.7.2將以下類型和成員添加到System.Data.SqlClient命名空間中:

SqlConnectionStringBuilder.EnclaveAttestationUrl,它為基于飛機(jī)的總是加密指定Uri。

SqlColumnEncryptionEnclaveProvider,它是派生所有飛地提供者的抽象類。

SqlEnclaveSession,它封裝了給定飛地會(huì)話的狀態(tài)。

SqlEnclaveAttestationParameters,它提供SQL Server用于獲取執(zhí)行特定證明協(xié)議所需信息的證明參數(shù)。

應(yīng)用程序配置文件然后指定提供包圍提供程序功能的抽象System.Data.SqlClient.SqlColumnEncryptionEnclaveProvider類的具體實(shí)現(xiàn)。例如:

XML

<結(jié)構(gòu)>

<configSections>

<section name =“SqlColumnEncryptionEnclaveProviders”type =“System.Data.SqlClient.SqlColumnEncryptionEnclaveProviderConfigurationSection,System.Data,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”/>

</ configSections>

<SqlColumnEncryptionEnclaveProviders>

<提供商>

<add name =“Azure”type =“Microsoft.SqlServer.Management.AlwaysEncrypted.AzureEnclaveProvider,MyApp”/>

<add name =“HGS”type =“Microsoft.SqlServer.Management.AlwaysEncrypted.HGSEnclaveProvider,MyApp”/>

</提供商>

</ SqlColumnEncryptionEnclaveProviders>

</配置>

基于飛地的總是加密的基本流程是:

用戶創(chuàng)建一個(gè)AlwaysEncrypted連接到SQL Server,支持基于飛地的Always Encrypted。司機(jī)聯(lián)系證明服務(wù),以確保它連接到正確的飛地。

一旦飛地被證實(shí),驅(qū)動(dòng)程序就會(huì)與SQL Server上托管的安全區(qū)域建立安全通道。

在SQL連接期間,驅(qū)動(dòng)程序共享客戶端授權(quán)的加密密鑰和安全區(qū)域。

Windows Presentation Foundation

按源查找資源詞典

從.NET Framework 4.7.2開始,診斷助理可以找到從給定源Uri創(chuàng)建的ResourceDictionaries。 (此功能僅供診斷助理使用,不能由生產(chǎn)應(yīng)用程序使用。)Visual Studio的“編輯并繼續(xù)”功能等診斷助理允許其用戶編輯ResourceDictionary,其目的是將更改應(yīng)用于正在運(yùn)行的應(yīng)用程序。實(shí)現(xiàn)這一目標(biāo)的一個(gè)步驟是查找正在編輯的字典中正在運(yùn)行的應(yīng)用程序創(chuàng)建的所有ResourceDictionaries。例如,應(yīng)用程序可以聲明一個(gè)ResourceDictionary,其內(nèi)容是從給定的源URI中復(fù)制的:

XML

<ResourceDictionary Source =“MyRD.xaml”>

在MyRD.xaml中編輯原始標(biāo)記的診斷助理可以使用新功能來(lái)查找字典。該功能由一個(gè)新的靜態(tài)方法ResourceDictionaryDiagnostics.GetResourceDictionariesForSource實(shí)現(xiàn)。診斷助理使用標(biāo)識(shí)原始標(biāo)記的絕對(duì)URI來(lái)調(diào)用新方法,如以下代碼所示:

C#

IEnumerable <ResourceDictionary> dictionaries = ResourceDictionaryDiagnostics.GetResourceDictionariesForSource(new Uri(“pack:// application:,,, / MyApp; component / MyRD.xaml”));

該方法返回一個(gè)空的枚舉值,除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量。

查找ResourceDictionary所有者

從.NET Framework 4.7.2開始,診斷助理可以找到給定ResourceDictionary的所有者。 (此功能僅供診斷助理使用,不供生產(chǎn)應(yīng)用程序使用。)每當(dāng)對(duì)ResourceDictionary進(jìn)行更改時(shí),WPF都會(huì)自動(dòng)查找可能受更改影響的所有DynamicResource引用。

診斷助理(如Visual Studio的“編輯并繼續(xù)”工具)可能希望將其擴(kuò)展為處理StaticResource引用。這個(gè)過(guò)程的第一步是找到字典的所有者;即查找Resources屬性引用詞典的所有對(duì)象(直接或間接通過(guò)ResourceDictionary.MergedDictionaries屬性)。 System.Windows.Diagnostics.ResourceDictionaryDiagnostics類實(shí)現(xiàn)了三個(gè)新的靜態(tài)方法,每個(gè)具有Resources屬性的基類型都支持此步驟:

公共靜態(tài)IEnumerable <FrameworkElement> GetFrameworkElementOwners(ResourceDictionary字典);

公共靜態(tài)IEnumerable <FrameworkContentElement> GetFrameworkContentElementOwners(ResourceDictionary字典);

公共靜態(tài)IEnumerable <Application> GetApplicationOwners(ResourceDictionary字典);

除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量,否則這些方法將返回空的枚舉。

查找StaticResource引用

無(wú)論什么時(shí)候解決StaticResource引用,診斷助理現(xiàn)在都可以收到通知。 (此功能供診斷助理使用,而非生產(chǎn)應(yīng)用程序。)Visual Studio的“編輯并繼續(xù)”工具等診斷助理可能希望在ResourceDictionary中的值更改時(shí)更新資源的所有用途。 WPF為DynamicResource引用自動(dòng)執(zhí)行此操作,但它對(duì)靜態(tài)資源引用不會(huì)這樣做。從.NET Framework 4.7.2開始,診斷助理可以使用這些通知來(lái)查找這些靜態(tài)資源的用途。

通知由新的ResourceDictionaryDiagnostics.StaticResourceResolved事件實(shí)現(xiàn):

C#

公共靜態(tài)事件EventHandler <StaticResourceResolvedEventArgs> StaticResourceResolved;

只要運(yùn)行時(shí)解析了StaticResource引用,就會(huì)引發(fā)此事件。 StaticResourceResolvedEventArgs參數(shù)描述分辨率,并指出承載StaticResource引用的對(duì)象和屬性以及用于解決方案的ResourceDictionary和密鑰:

C#

公共類StaticResourceResolvedEventArgs:EventArgs

{

public Object TargetObject {get; }

public Object TargetProperty {get; }

public ResourceDictionary ResourceDictionary {get; }

公共對(duì)象ResourceKey {get; }

}

除非啟用了VisualDiagnostics并設(shè)置了ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO環(huán)境變量,否則不會(huì)引發(fā)該事件(并且忽略其addor訪問(wèn)器)。

的ClickOnce

Windows Forms,Windows Presentation Foundation(WPF)和Visual Studio Tools for Office(VSTO)的支持HDPI的應(yīng)用程序都可以使用ClickOnce進(jìn)行部署。如果在應(yīng)用程序清單中找到以下條目,則在.NET Framework 4.7.2下部署將會(huì)成功:

XML

<windowsSettings>

<dpiAware xmlns =“http://schemas.microsoft.com/SMI/2005/WindowsSettings”> true </ dpiAware>

</ windowsSettings>

對(duì)于Windows窗體應(yīng)用程序,在應(yīng)用程序配置文件而不是應(yīng)用程序清單中設(shè)置DPI感知的以前解決方法不再需要ClickOnce部署成功。

載地址

下載錯(cuò)誤?【投訴報(bào)錯(cuò)】

Microsoft .NET Framework 4.7.2 Web在線安裝包 簡(jiǎn)體中文正式版 32位/64位

      氣軟件

      關(guān)文章

      載聲明

      ☉ 解壓密碼:www.dbjr.com.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
      ☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
      ☉ 如果這個(gè)軟件總是不能下載的請(qǐng)?jiān)谠u(píng)論中留言,我們會(huì)盡快修復(fù),謝謝!
      ☉ 下載本站資源,如果服務(wù)器暫不能下載請(qǐng)過(guò)一段時(shí)間重試!或者多試試幾個(gè)下載地址
      ☉ 如果遇到什么問(wèn)題,請(qǐng)?jiān)u論留言,我們定會(huì)解決問(wèn)題,謝謝大家支持!
      ☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請(qǐng)購(gòu)買正版。
      ☉ 本站提供的Microsoft .NET Framework 4.7.2 Web在線安裝包 簡(jiǎn)體中文正式版 32位/64位資源來(lái)源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。