2017-04-18 07:52:04 +08:00
|
|
|
## SignedXml and EncryptedXml Breaking Changes
|
2017-04-06 04:52:19 +08:00
|
|
|
|
|
|
|
### Scope
|
|
|
|
Minor
|
|
|
|
|
|
|
|
### Version Introduced
|
|
|
|
4.6.2
|
|
|
|
|
|
|
|
### Source Analyzer Status
|
|
|
|
Planned
|
|
|
|
|
|
|
|
### Change Description
|
|
|
|
|
2017-04-21 02:19:05 +08:00
|
|
|
In .NET Framework 4.6.2, Security fixes in
|
|
|
|
<xref:System.Security.Cryptography.Xml.SignedXml?displayProperty=name> and
|
|
|
|
<xref:System.Security.Cryptography.Xml.EncryptedXml?displayProperty=name> lead
|
2017-04-06 04:52:19 +08:00
|
|
|
to different run-time behaviors. For example,
|
|
|
|
|
|
|
|
* If a document has multiple elements with the same `id` attribute and a
|
|
|
|
signature targets one of those elements as the root of the signature, the
|
|
|
|
document will now be considered invalid.
|
|
|
|
* Documents using non-canonical XPath transform algorithms in references are now
|
|
|
|
considered invalid.
|
|
|
|
* Documents using non-canonical XSLT transform algorithms in references are now
|
|
|
|
consider invalid.
|
|
|
|
* Any program making use of external resource detached signatures will be unable
|
|
|
|
to do so.
|
|
|
|
|
|
|
|
- [ ] Quirked
|
|
|
|
- [ ] Build-time break
|
|
|
|
|
|
|
|
### Recommended Action
|
|
|
|
|
|
|
|
Developers might want to review the usage of
|
2017-04-21 02:19:05 +08:00
|
|
|
<xref:System.Security.Cryptography.Xml.XmlDsigXsltTransform> and
|
|
|
|
<xref:System.Security.Cryptography.Xml.XmlDsigXsltTransform>, as well as types
|
|
|
|
derived from <xref:System.Security.Cryptography.Xml.Transform> since a document
|
2017-04-06 04:52:19 +08:00
|
|
|
receiver may not be able to process it.
|
|
|
|
|
|
|
|
### Affected APIs
|
|
|
|
|
|
|
|
* `T:System.Security.Cryptography.Xml.Transform`
|
|
|
|
* `T:System.Security.Cryptography.Xml.XmlDsigXPathTransform`
|
|
|
|
* `T:System.Security.Cryptography.Xml.XmlDsigXsltTransform`
|
|
|
|
|
|
|
|
### Category
|
|
|
|
Security
|
|
|
|
|
|
|
|
[More information](https://github.com/Microsoft/dotnet/blob/master/releases/net462/dotnet462-changes.md)
|
2017-04-18 07:52:04 +08:00
|
|
|
|
|
|
|
<!-- breaking change id: 156 -->
|