1 <?xml version="1.0" encoding="utf-8"?>
2 <RuleSet Name="Rules for Security Issues" Description="Code analysis rules for Security Issues." ToolsVersion="14.0">
3 <Rules AnalyzerId="Desktop.Analyzers" RuleNamespace="Desktop.Analyzers">
4 <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
5 <Rule Id="CA5351" Action="Error" />
6 <Rule Id="CA2153" Action="Error"/> <!-- Do not catch corrupted process state exceptions -->
8 <Rules AnalyzerId="Desktop.CSharp.Analyzers" RuleNamespace="Desktop.Analyzers">
9 <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
10 <Rule Id="CA5351" Action="Error" />
11 <Rule Id="CA2153" Action="Error"/> <!-- Do not catch corrupted process state exceptions -->
13 <Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
14 <Rule Id="CA1001" Action="None" /> <!-- Non disposable class owns disposable fields -->
15 <Rule Id="CA1018" Action="None" /> <!-- Specify attribute usage on attribute -->
16 <Rule Id="CA1036" Action="None" /> <!-- Overload comparison operators when implementing System.IComparable -->
17 <Rule Id="CA1715" Action="None" /> <!-- Type parameters names should be prefixed with T -->
18 <Rule Id="CA2213" Action="None" /> <!-- Disposable Fields should be disposed -->
19 <Rule Id="CA2229" Action="None" /> <!-- Serializable type doesn't have a serialization constructor -->
20 <Rule Id="CA2235" Action="None" /> <!-- Serializable type has non serializable field -->
21 <Rule Id="CA2231" Action="None" /> <!-- Overload operator equals when overriding ValueType.Equals -->
22 <Rule Id="CA2237" Action="None" /> <!-- Add [Serializable] to types that implement ISerializable -->
24 <Rule Id="CA2200" Action="None"/> <!-- Rethrowing caught exception changes stack information -->
26 <Rule Id="CA2101" Action="None" /> <!-- Specify marshaling for P/Invoke string arguments -->
27 <Rule Id="CA1401" Action="None" /> <!-- P/Invoke method should not be visible -->
29 <Rule Id="CA2214" Action="None" /> <!-- Do not call overridable methods in constructors -->
31 <Rules AnalyzerId="System.Runtime.Analyzers" RuleNamespace="System.Runtime.Analyzers">
32 <Rule Id="CA2002" Action="None" /> <!-- Do not lock on objects with weak identity -->
34 <Rules AnalyzerId="System.Runtime.CSharp.Analyzers" RuleNamespace="System.Runtime.CSharp.Analyzers">
35 <Rule Id="CA2002" Action="None" /> <!-- Do not lock on objects with weak identity -->
37 <Rules AnalyzerId="System.Security.Cryptography.Hashing.Algorithms.Analyzers" RuleNamespace="System.Security.Cryptography.Hashing.Algorithms.Analyzers">
38 <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
39 <Rule Id="CA5351" Action="Error" />