From 2b3b106f004b38a6f8aea42819f7156155700c24 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Mon, 6 May 2024 12:50:44 +0200 Subject: [PATCH 01/15] Updated version to 2.2.2. --- .../ThreatsManager.AIAssistant/ExtensionsContainer.cs | 2 +- .../ThreatsManager.AIAssistant.csproj | 6 +++--- .../ThreatsManager.AutoGenRules/ExtensionsContainer.cs | 2 +- .../ThreatsManager.AutoGenRules.csproj | 6 +++--- .../ExtensionsContainer.cs | 2 +- .../ThreatsManager.AutoThreatGeneration.csproj | 6 +++--- .../Extensions/ThreatsManager.DevOps/ExtensionsContainer.cs | 2 +- .../ThreatsManager.DevOps/ThreatsManager.DevOps.csproj | 6 +++--- .../ThreatsManager.Extensions.Client.csproj | 6 +++--- .../ThreatsManager.Extensions/ExtensionsContainer.cs | 2 +- .../ThreatsManager.Extensions.csproj | 6 +++--- .../Extensions/ThreatsManager.Mitre/ExtensionsContainer.cs | 2 +- .../ThreatsManager.Mitre/ThreatsManager.Mitre.csproj | 6 +++--- .../Extensions/ThreatsManager.MsTmt/ExtensionsContainer.cs | 2 +- .../ThreatsManager.MsTmt/ThreatsManager.MsTmt.csproj | 6 +++--- .../ThreatsManager.PackageManagers/ExtensionsContainer.cs | 2 +- .../ThreatsManager.PackageManagers.csproj | 6 +++--- .../ThreatsManager.Quality/ExtensionsContainer.cs | 2 +- .../ThreatsManager.Quality/ThreatsManager.Quality.csproj | 6 +++--- .../ThreatsManager.QuantitativeRisk/ExtensionsContainer.cs | 2 +- .../ThreatsManager.QuantitativeRisk.csproj | 6 +++--- Sources/ThreatsManager.Engine/ThreatsManager.Engine.csproj | 6 +++--- .../ThreatsManager.Interfaces.csproj | 6 +++--- .../ThreatsManager.Utilities.csproj | 6 +++--- 24 files changed, 52 insertions(+), 52 deletions(-) diff --git a/Sources/Extensions/ThreatsManager.AIAssistant/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.AIAssistant/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.AIAssistant/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.AIAssistant/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.AIAssistant/ThreatsManager.AIAssistant.csproj b/Sources/Extensions/ThreatsManager.AIAssistant/ThreatsManager.AIAssistant.csproj index 6a2d48bf..190d7639 100644 --- a/Sources/Extensions/ThreatsManager.AIAssistant/ThreatsManager.AIAssistant.csproj +++ b/Sources/Extensions/ThreatsManager.AIAssistant/ThreatsManager.AIAssistant.csproj @@ -2,15 +2,15 @@ net481 Threats Manager Platform AI Assistant library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.AutoGenRules/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.AutoGenRules/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.AutoGenRules/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.AutoGenRules/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.AutoGenRules/ThreatsManager.AutoGenRules.csproj b/Sources/Extensions/ThreatsManager.AutoGenRules/ThreatsManager.AutoGenRules.csproj index 13c69b5f..cf80f6e5 100644 --- a/Sources/Extensions/ThreatsManager.AutoGenRules/ThreatsManager.AutoGenRules.csproj +++ b/Sources/Extensions/ThreatsManager.AutoGenRules/ThreatsManager.AutoGenRules.csproj @@ -2,15 +2,15 @@ net481 Threats Manager Platform Auto Generation Rules library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ThreatsManager.AutoThreatGeneration.csproj b/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ThreatsManager.AutoThreatGeneration.csproj index 4820e97a..6d5ffe02 100644 --- a/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ThreatsManager.AutoThreatGeneration.csproj +++ b/Sources/Extensions/ThreatsManager.AutoThreatGeneration/ThreatsManager.AutoThreatGeneration.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Auto Threat Generation library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.DevOps/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.DevOps/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.DevOps/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.DevOps/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.DevOps/ThreatsManager.DevOps.csproj b/Sources/Extensions/ThreatsManager.DevOps/ThreatsManager.DevOps.csproj index 4ff48c05..e9d5a947 100644 --- a/Sources/Extensions/ThreatsManager.DevOps/ThreatsManager.DevOps.csproj +++ b/Sources/Extensions/ThreatsManager.DevOps/ThreatsManager.DevOps.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform DevOps Integration library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.Extensions.Client/ThreatsManager.Extensions.Client.csproj b/Sources/Extensions/ThreatsManager.Extensions.Client/ThreatsManager.Extensions.Client.csproj index 1d8e0597..60f343cb 100644 --- a/Sources/Extensions/ThreatsManager.Extensions.Client/ThreatsManager.Extensions.Client.csproj +++ b/Sources/Extensions/ThreatsManager.Extensions.Client/ThreatsManager.Extensions.Client.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Extensions Client library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk ThreatsManager.Extensions diff --git a/Sources/Extensions/ThreatsManager.Extensions/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.Extensions/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.Extensions/ThreatsManager.Extensions.csproj b/Sources/Extensions/ThreatsManager.Extensions/ThreatsManager.Extensions.csproj index 72f7e511..6c2fed5c 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/ThreatsManager.Extensions.csproj +++ b/Sources/Extensions/ThreatsManager.Extensions/ThreatsManager.Extensions.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Extensions library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.Mitre/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.Mitre/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.Mitre/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.Mitre/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.Mitre/ThreatsManager.Mitre.csproj b/Sources/Extensions/ThreatsManager.Mitre/ThreatsManager.Mitre.csproj index d089dc64..4192d535 100644 --- a/Sources/Extensions/ThreatsManager.Mitre/ThreatsManager.Mitre.csproj +++ b/Sources/Extensions/ThreatsManager.Mitre/ThreatsManager.Mitre.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform MITRE Extensions library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.MsTmt/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.MsTmt/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.MsTmt/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.MsTmt/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.MsTmt/ThreatsManager.MsTmt.csproj b/Sources/Extensions/ThreatsManager.MsTmt/ThreatsManager.MsTmt.csproj index 04ee5d53..897c0179 100644 --- a/Sources/Extensions/ThreatsManager.MsTmt/ThreatsManager.MsTmt.csproj +++ b/Sources/Extensions/ThreatsManager.MsTmt/ThreatsManager.MsTmt.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Microsoft Threat Modeling Tool Import library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505;CS3021 diff --git a/Sources/Extensions/ThreatsManager.PackageManagers/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.PackageManagers/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.PackageManagers/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.PackageManagers/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.PackageManagers/ThreatsManager.PackageManagers.csproj b/Sources/Extensions/ThreatsManager.PackageManagers/ThreatsManager.PackageManagers.csproj index 2d02d21a..350914fb 100644 --- a/Sources/Extensions/ThreatsManager.PackageManagers/ThreatsManager.PackageManagers.csproj +++ b/Sources/Extensions/ThreatsManager.PackageManagers/ThreatsManager.PackageManagers.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Package Managers library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.Quality/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.Quality/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.Quality/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.Quality/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.Quality/ThreatsManager.Quality.csproj b/Sources/Extensions/ThreatsManager.Quality/ThreatsManager.Quality.csproj index 4cc80f71..382f3e6b 100644 --- a/Sources/Extensions/ThreatsManager.Quality/ThreatsManager.Quality.csproj +++ b/Sources/Extensions/ThreatsManager.Quality/ThreatsManager.Quality.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Quality library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/Extensions/ThreatsManager.QuantitativeRisk/ExtensionsContainer.cs b/Sources/Extensions/ThreatsManager.QuantitativeRisk/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Sources/Extensions/ThreatsManager.QuantitativeRisk/ExtensionsContainer.cs +++ b/Sources/Extensions/ThreatsManager.QuantitativeRisk/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.QuantitativeRisk/ThreatsManager.QuantitativeRisk.csproj b/Sources/Extensions/ThreatsManager.QuantitativeRisk/ThreatsManager.QuantitativeRisk.csproj index a13e5d79..2af90aa5 100644 --- a/Sources/Extensions/ThreatsManager.QuantitativeRisk/ThreatsManager.QuantitativeRisk.csproj +++ b/Sources/Extensions/ThreatsManager.QuantitativeRisk/ThreatsManager.QuantitativeRisk.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Quantitative Risk Extensions library. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ..\..\ThreatsManager.Engine\ThreatsManager.snk $(NoWarn);NU1505 diff --git a/Sources/ThreatsManager.Engine/ThreatsManager.Engine.csproj b/Sources/ThreatsManager.Engine/ThreatsManager.Engine.csproj index c8b01b6d..a1d1406e 100644 --- a/Sources/ThreatsManager.Engine/ThreatsManager.Engine.csproj +++ b/Sources/ThreatsManager.Engine/ThreatsManager.Engine.csproj @@ -3,15 +3,15 @@ net481 Threats Manager Platform Engine. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Engine/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 true ThreatsManager.snk false diff --git a/Sources/ThreatsManager.Interfaces/ThreatsManager.Interfaces.csproj b/Sources/ThreatsManager.Interfaces/ThreatsManager.Interfaces.csproj index 1bb59569..666de6aa 100644 --- a/Sources/ThreatsManager.Interfaces/ThreatsManager.Interfaces.csproj +++ b/Sources/ThreatsManager.Interfaces/ThreatsManager.Interfaces.csproj @@ -3,15 +3,15 @@ net481 Common Interfaces used to define the object, entities and extensions that compose the Threats Manager Platform and allow to extend it. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Interfaces/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 false false $(NoWarn);NU1505 diff --git a/Sources/ThreatsManager.Utilities/ThreatsManager.Utilities.csproj b/Sources/ThreatsManager.Utilities/ThreatsManager.Utilities.csproj index bab0a330..7fca20f4 100644 --- a/Sources/ThreatsManager.Utilities/ThreatsManager.Utilities.csproj +++ b/Sources/ThreatsManager.Utilities/ThreatsManager.Utilities.csproj @@ -3,15 +3,15 @@ net481 Library to manage the solution files at a low level. - 2.2.1.0 + 2.2.2.0 Simone Curzi Simone Curzi Threats Manager Platform Copyright © Simone Curzi, 2018-2024. All Rights Reserved. https://www.nuget.org/packages/ThreatsManager.Utilities/ https://github.com/simonec73/threatsmanager - 2.2.1.0 - 2.2.1 + 2.2.2.0 + 2.2.2 $(NoWarn);NU1505 From aa25301b713bfc71a3d77d3ff735de548a2a0242 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Mon, 13 May 2024 19:29:05 +0200 Subject: [PATCH 02/15] Cleanup --- Sources/ThreatsManager.Engine/Manager.cs | 1 - .../ThreatModelManager.cs | 52 +++++++------------ 2 files changed, 18 insertions(+), 35 deletions(-) diff --git a/Sources/ThreatsManager.Engine/Manager.cs b/Sources/ThreatsManager.Engine/Manager.cs index 4dd9ab80..b6b6913b 100644 --- a/Sources/ThreatsManager.Engine/Manager.cs +++ b/Sources/ThreatsManager.Engine/Manager.cs @@ -5,7 +5,6 @@ using System.Reflection; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; -using System.Xml; using Newtonsoft.Json; using PostSharp.Patterns.Contracts; using ThreatsManager.Engine.Config; diff --git a/Sources/ThreatsManager.Utilities/ThreatModelManager.cs b/Sources/ThreatsManager.Utilities/ThreatModelManager.cs index 06e2d0b5..f4cadf58 100644 --- a/Sources/ThreatsManager.Utilities/ThreatModelManager.cs +++ b/Sources/ThreatsManager.Utilities/ThreatModelManager.cs @@ -111,7 +111,7 @@ public static bool Remove(Guid id) /// Optional identifier to be used for the Threat Model replacing its configured one. /// The deserialized Threat Model. public static IThreatModel Deserialize([NotNull] byte[] json, - bool ignoreMissingMembers = false, Guid? newThreatModelId = null)//, bool addToKnownInstances = true) + bool ignoreMissingMembers = false, Guid? newThreatModelId = null) { IThreatModel result = null; @@ -139,47 +139,31 @@ public static IThreatModel Deserialize([NotNull] byte[] json, if (result != null) { - try + if (_instances.Any(x => x.Id == result.Id)) { - //if (!binder.HasUnknownTypes) - // result.ResetDirty(); - - //result.SuspendDirty(); - - if (_instances.Any(x => x.Id == result.Id)) - { - throw new ExistingModelException(result); - } - else - { - result.Cleanup(); - result.PropertySchemasNormalization(); + throw new ExistingModelException(result); + } + else + { + result.Cleanup(); + result.PropertySchemasNormalization(); - _instances.Add(result); + _instances.Add(result); - var method = result.GetType() - .GetMethod("RegisterEvents", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.InvokeMethod, null, new Type[] { }, null); - if (method != null) - method.Invoke(result, null); + var method = result.GetType() + .GetMethod("RegisterEvents", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.InvokeMethod, null, new Type[] { }, null); + if (method != null) + method.Invoke(result, null); - var processors = ExtensionUtils.GetExtensions()?.ToArray(); - if (processors?.Any() ?? false) + var processors = ExtensionUtils.GetExtensions()?.ToArray(); + if (processors?.Any() ?? false) + { + foreach (var processor in processors) { - foreach (var processor in processors) - { - processor.Process(result); - } + processor.Process(result); } } } - catch (JsonSerializationException e) - { - throw new ThreatModelOpeningFailureException("A serialization issue has occurred.", e); - } - finally - { - //result.ResumeDirty(); - } } } From 0458080908f92d402b9d59ff9349c839ae400ae5 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Mon, 13 May 2024 19:29:32 +0200 Subject: [PATCH 03/15] Improved error management --- .../Manager.ThreatModel.cs | 42 +++++++------------ 1 file changed, 15 insertions(+), 27 deletions(-) diff --git a/Sources/ThreatsManager.Engine/Manager.ThreatModel.cs b/Sources/ThreatsManager.Engine/Manager.ThreatModel.cs index aca3defd..d9979053 100644 --- a/Sources/ThreatsManager.Engine/Manager.ThreatModel.cs +++ b/Sources/ThreatsManager.Engine/Manager.ThreatModel.cs @@ -1,14 +1,9 @@ -using Newtonsoft.Json.Linq; -using Newtonsoft.Json; +using Newtonsoft.Json; using PostSharp.Patterns.Contracts; using System.IO; -using System.Reflection; -using System.Text; -using System; using ThreatsManager.Engine.ObjectModel; using ThreatsManager.Interfaces.Extensions; using ThreatsManager.Interfaces.ObjectModel; -using ThreatsManager.Utilities.Exceptions; using ThreatsManager.Utilities; using ThreatsManager.Interfaces.Exceptions; using System.Linq; @@ -58,29 +53,22 @@ public static IThreatModel Deserialize(string json, bool ignoreMissingMembers = if (!string.IsNullOrWhiteSpace(json)) { - try - { - var binder = new KnownTypesBinder(); + var binder = new KnownTypesBinder(); - using (var textReader = new StringReader(json)) - using (var reader = new JsonTextReader(textReader)) - { - var serializer = new JsonSerializer - { - TypeNameHandling = TypeNameHandling.None, - DefaultValueHandling = DefaultValueHandling.Ignore, - SerializationBinder = binder, - MaxDepth = 128, - MissingMemberHandling = ignoreMissingMembers - ? MissingMemberHandling.Ignore - : MissingMemberHandling.Error - }; - result = serializer.Deserialize(reader); - } - } - catch (JsonSerializationException e) + using (var textReader = new StringReader(json)) + using (var reader = new JsonTextReader(textReader)) { - throw new ThreatModelOpeningFailureException("A serialization issue has occurred.", e); + var serializer = new JsonSerializer + { + TypeNameHandling = TypeNameHandling.None, + DefaultValueHandling = DefaultValueHandling.Ignore, + SerializationBinder = binder, + MaxDepth = 128, + MissingMemberHandling = ignoreMissingMembers + ? MissingMemberHandling.Ignore + : MissingMemberHandling.Error + }; + result = serializer.Deserialize(reader); } } From 181122852584c84371830bd674f489ad118f9137 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Mon, 13 May 2024 19:29:53 +0200 Subject: [PATCH 04/15] Fixed assignment of icons when cloning entities --- .../CloningExtensions.cs | 29 ++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/Sources/ThreatsManager.Utilities/CloningExtensions.cs b/Sources/ThreatsManager.Utilities/CloningExtensions.cs index ed79012c..b90b7777 100644 --- a/Sources/ThreatsManager.Utilities/CloningExtensions.cs +++ b/Sources/ThreatsManager.Utilities/CloningExtensions.cs @@ -1,6 +1,7 @@ using System.Linq; using System.Reflection; using PostSharp.Patterns.Contracts; +using ThreatsManager.Interfaces; using ThreatsManager.Interfaces.ObjectModel; using ThreatsManager.Interfaces.ObjectModel.Entities; using ThreatsManager.Interfaces.ObjectModel.Properties; @@ -261,6 +262,14 @@ public static IEntity CloneAndConvert(this IEntity source, result = model.AddEntity(newName, template); break; } + + if (result != null) + { + result.Description = template.Description; + result.BigImage = template.GetImage(ImageSize.Big); + result.Image = template.GetImage(ImageSize.Medium); + result.SmallImage = template.GetImage(ImageSize.Small); + } } else { @@ -280,16 +289,28 @@ public static IEntity CloneAndConvert(this IEntity source, result = model.AddEntity(newName, existingTemplate); break; } + + if (result != null) + { + result.Description = existingTemplate.Description; + result.BigImage = existingTemplate.GetImage(ImageSize.Big); + result.Image = existingTemplate.GetImage(ImageSize.Medium); + result.SmallImage = existingTemplate.GetImage(ImageSize.Small); + } } if (result != null) { - result.Description = source.Description; + if (string.IsNullOrWhiteSpace(source.Description)) + result.Description = source.Description; if (source.Parent != null) result.SetParent(source.Parent); - result.BigImage = source.BigImage; - result.Image = source.Image; - result.SmallImage = source.SmallImage; + if (source.BigImage != null && result.BigImage == null) + result.BigImage = source.BigImage; + if (source.Image != null && result.Image == null) + result.Image = source.Image; + if (source.SmallImage != null && result.SmallImage == null) + result.SmallImage = source.SmallImage; source.CopyProperties(result); source.CopyThreatEvents(result); source.CopyVulnerabilities(result); From e44b345e2cf4c8e872af4390745c177613d66f58 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Fri, 17 May 2024 18:59:57 +0200 Subject: [PATCH 05/15] Fixed "Cannot start explicit operation while tracking is disabled" exception --- .../UndoRedoManager.cs | 28 ++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/Sources/ThreatsManager.Utilities/UndoRedoManager.cs b/Sources/ThreatsManager.Utilities/UndoRedoManager.cs index 8d100e24..0c4663c5 100644 --- a/Sources/ThreatsManager.Utilities/UndoRedoManager.cs +++ b/Sources/ThreatsManager.Utilities/UndoRedoManager.cs @@ -268,10 +268,30 @@ public static void Redo() /// Scope for the recording. public static UndoRedoScope OpenScope([Required] string name) { - if (IsUndoing || IsRedoing) - return null; - else - return new UndoRedoScope(RecordingServices.DefaultRecorder.OpenScope(name, RecordingScopeOption.Atomic)); + UndoRedoScope result = null; + + if (!IsUndoing && !IsRedoing) + { + try + { + result = new UndoRedoScope(RecordingServices.DefaultRecorder.OpenScope(name, RecordingScopeOption.Atomic)); + } + catch (NotSupportedException exc) + { + result = null; + + if (string.CompareOrdinal("Cannot start explicit operation while tracking is disabled", exc.Message) == 0) + { + // Ignore the error and work without the scope. + } + else + { + ErrorRaised?.Invoke(exc.Message); + } + } + } + + return result; } /// From fa96086c245797c7c7961f3407c3624fc9006d2c Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Sun, 19 May 2024 11:22:34 +0200 Subject: [PATCH 06/15] Removed unneccessary warnings --- Sources/Directory.Build.props | 5 +++++ Sources/PostSharp.Custom.targets | 6 ++++++ 2 files changed, 11 insertions(+) create mode 100644 Sources/Directory.Build.props create mode 100644 Sources/PostSharp.Custom.targets diff --git a/Sources/Directory.Build.props b/Sources/Directory.Build.props new file mode 100644 index 00000000..abe7198b --- /dev/null +++ b/Sources/Directory.Build.props @@ -0,0 +1,5 @@ + + + CS0649 + + \ No newline at end of file diff --git a/Sources/PostSharp.Custom.targets b/Sources/PostSharp.Custom.targets new file mode 100644 index 00000000..3cd5850c --- /dev/null +++ b/Sources/PostSharp.Custom.targets @@ -0,0 +1,6 @@ + + + + PS0089 + + \ No newline at end of file From 6f25daa518ba65da161a11bca6c4f03cbcdeea1b Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Sun, 19 May 2024 11:23:00 +0200 Subject: [PATCH 07/15] Ignore folders that are not ready --- .gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 2ad42ca0..c3eb48b5 100644 --- a/.gitignore +++ b/.gitignore @@ -357,4 +357,7 @@ MigrationBackup/ .ionide/ # Fody - auto-generated XML schema -FodyWeavers.xsd \ No newline at end of file +FodyWeavers.xsd + +# Threats Manager specific folders +/KnowledgeBases/Build/Azure From c611b2adcde7ab3fa9a14126e277003cf8319c73 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Sun, 19 May 2024 11:23:11 +0200 Subject: [PATCH 08/15] Fixed crash on Undo. --- .../Engine/SimpleNotifyPropertyChangedAttribute.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Sources/ThreatsManager.Utilities/Aspects/Engine/SimpleNotifyPropertyChangedAttribute.cs b/Sources/ThreatsManager.Utilities/Aspects/Engine/SimpleNotifyPropertyChangedAttribute.cs index 4cb00f28..058b4cea 100644 --- a/Sources/ThreatsManager.Utilities/Aspects/Engine/SimpleNotifyPropertyChangedAttribute.cs +++ b/Sources/ThreatsManager.Utilities/Aspects/Engine/SimpleNotifyPropertyChangedAttribute.cs @@ -4,6 +4,7 @@ using PostSharp.Patterns.Model; using PostSharp.Patterns.Recording; using PostSharp.Serialization; +using System; using System.ComponentModel; using static PostSharp.Patterns.Recording.RecordableAttribute; @@ -27,7 +28,15 @@ public override void OnSetValue(LocationInterceptionArgs args) var oldValue = args.GetCurrentValue(); var newValue = args.Value; - base.OnSetValue(args); + try + { + base.OnSetValue(args); + } + catch (InvalidOperationException exc) + { + if (string.CompareOrdinal(exc.Message, "It is forbidden to modify the recorded state during an Undo or Redo operation.") != 0) + throw; + } if (args.Instance is INotifyPropertyChangedInvoker invoker && ((newValue == null && oldValue != null) || From 373865360ce6174ea520bff042f42454edd7dfef Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Sun, 19 May 2024 11:23:29 +0200 Subject: [PATCH 09/15] Corrected reference debug executable location --- .../ThreatsManager.Interfaces/Properties/launchSettings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/ThreatsManager.Interfaces/Properties/launchSettings.json b/Sources/ThreatsManager.Interfaces/Properties/launchSettings.json index 735c87a6..23e935b7 100644 --- a/Sources/ThreatsManager.Interfaces/Properties/launchSettings.json +++ b/Sources/ThreatsManager.Interfaces/Properties/launchSettings.json @@ -2,7 +2,7 @@ "profiles": { "ThreatsManager.Interfaces": { "commandName": "Executable", - "executablePath": "C:\\src\\Threats Manager Platform\\Dev\\ThreatsManager\\bin\\Debug\\ThreatsManager.exe" + "executablePath": "C:\\src\\repos\\TMS\\ThreatsManager\\bin\\Debug\\ThreatsManager.exe" } } } \ No newline at end of file From 3eae57933300fd9ef0431a9651fb49633dfb382b Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Thu, 23 May 2024 08:24:17 +0200 Subject: [PATCH 10/15] Exception in GetIcon. --- .../Diagrams/StandardMarker/StandardMarkerProvider.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/Extensions/ThreatsManager.Extensions/Diagrams/StandardMarker/StandardMarkerProvider.cs b/Sources/Extensions/ThreatsManager.Extensions/Diagrams/StandardMarker/StandardMarkerProvider.cs index 33f38b3b..7db83bd6 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Diagrams/StandardMarker/StandardMarkerProvider.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Diagrams/StandardMarker/StandardMarkerProvider.cs @@ -130,7 +130,7 @@ public Image GetIcon(int size) } } - if (result.Width != size) + if (result != null && result.Width != size) { try { From 931f1e549ecc4b3e7c1a5c6d642358e8b28155bf Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Thu, 23 May 2024 17:39:30 +0200 Subject: [PATCH 11/15] Corrected ToString() to never return an empty string. --- Sources/Extensions/ThreatsManager.DevOps/DevOpsField.cs | 4 +++- Sources/Extensions/ThreatsManager.DevOps/DevOpsItemInfo.cs | 3 ++- Sources/Extensions/ThreatsManager.DevOps/Iteration.cs | 3 ++- .../ThreatsManager.Engine/ObjectModel/Diagrams/Diagram.cs | 2 +- .../ObjectModel/Diagrams/EntityShape.cs | 7 +++++++ .../ObjectModel/Diagrams/GroupShape.cs | 7 +++++++ Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Link.cs | 6 ++++++ .../ThreatsManager.Engine/ObjectModel/Entities/DataFlow.cs | 2 +- .../ObjectModel/Entities/DataStore.cs | 2 +- .../ObjectModel/Entities/EntityTemplate.cs | 2 +- .../ObjectModel/Entities/ExternalInteractor.cs | 2 +- .../ObjectModel/Entities/FlowTemplate.cs | 2 +- .../ThreatsManager.Engine/ObjectModel/Entities/Process.cs | 2 +- .../ObjectModel/Entities/TrustBoundary.cs | 2 +- .../ObjectModel/Entities/TrustBoundaryTemplate.cs | 2 +- Sources/ThreatsManager.Engine/ObjectModel/ThreatModel.cs | 2 +- .../ObjectModel/ThreatsMitigations/Mitigation.cs | 2 +- .../ObjectModel/ThreatsMitigations/SeverityDefinition.cs | 2 +- .../ThreatsMitigations/SpecializedMitigation.cs | 6 ++++++ .../ObjectModel/ThreatsMitigations/StrengthDefinition.cs | 2 +- .../ObjectModel/ThreatsMitigations/ThreatActor.cs | 2 +- .../ObjectModel/ThreatsMitigations/ThreatEvent.cs | 2 +- .../ThreatsMitigations/ThreatEventMitigation.cs | 2 +- .../ObjectModel/ThreatsMitigations/ThreatEventScenario.cs | 2 +- .../ObjectModel/ThreatsMitigations/ThreatType.cs | 2 +- .../ObjectModel/ThreatsMitigations/ThreatTypeMitigation.cs | 3 ++- .../ObjectModel/ThreatsMitigations/ThreatTypeWeakness.cs | 2 +- .../ObjectModel/ThreatsMitigations/Vulnerability.cs | 2 +- .../ThreatsMitigations/VulnerabilityMitigation.cs | 2 +- .../ObjectModel/ThreatsMitigations/Weakness.cs | 2 +- .../ObjectModel/ThreatsMitigations/WeaknessMitigation.cs | 2 +- 31 files changed, 58 insertions(+), 27 deletions(-) diff --git a/Sources/Extensions/ThreatsManager.DevOps/DevOpsField.cs b/Sources/Extensions/ThreatsManager.DevOps/DevOpsField.cs index 9f5e21a9..ea7ea4d0 100644 --- a/Sources/Extensions/ThreatsManager.DevOps/DevOpsField.cs +++ b/Sources/Extensions/ThreatsManager.DevOps/DevOpsField.cs @@ -1,4 +1,6 @@ using PostSharp.Patterns.Contracts; +using System.Xml.Linq; +using ThreatsManager.Utilities; namespace ThreatsManager.DevOps { @@ -20,7 +22,7 @@ public DevOpsField([Required] string id, [Required] string label) public override string ToString() { - return Label; + return string.IsNullOrWhiteSpace(Label) ? ThreatModelManager.Undefined : Label; } } } diff --git a/Sources/Extensions/ThreatsManager.DevOps/DevOpsItemInfo.cs b/Sources/Extensions/ThreatsManager.DevOps/DevOpsItemInfo.cs index 8e6cb4fa..26afdbf2 100644 --- a/Sources/Extensions/ThreatsManager.DevOps/DevOpsItemInfo.cs +++ b/Sources/Extensions/ThreatsManager.DevOps/DevOpsItemInfo.cs @@ -1,6 +1,7 @@ using System.Text.RegularExpressions; using Newtonsoft.Json; using PostSharp.Patterns.Contracts; +using ThreatsManager.Utilities; namespace ThreatsManager.DevOps { @@ -78,7 +79,7 @@ public string Serialize() public override string ToString() { - return Name; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } } } \ No newline at end of file diff --git a/Sources/Extensions/ThreatsManager.DevOps/Iteration.cs b/Sources/Extensions/ThreatsManager.DevOps/Iteration.cs index 186f4f14..9ea2b084 100644 --- a/Sources/Extensions/ThreatsManager.DevOps/Iteration.cs +++ b/Sources/Extensions/ThreatsManager.DevOps/Iteration.cs @@ -1,5 +1,6 @@ using System; using Newtonsoft.Json; +using ThreatsManager.Utilities; namespace ThreatsManager.DevOps { @@ -23,7 +24,7 @@ public class Iteration public override string ToString() { - return Name; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } } } \ No newline at end of file diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Diagram.cs b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Diagram.cs index c6e0e850..26329b4e 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Diagram.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Diagram.cs @@ -276,7 +276,7 @@ public void SetId(Guid id) public override string ToString() { - return Name; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } [InitializationRequired] diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/EntityShape.cs b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/EntityShape.cs index c0eea59f..59bf5f6f 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/EntityShape.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/EntityShape.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Drawing; +using System.Xml.Linq; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using PostSharp.Patterns.Collections; @@ -191,6 +192,12 @@ public IEntityShape Clone([NotNull] IEntityShapesContainer container) return result; } + + public override string ToString() + { + string text = Identity?.ToString(); + return string.IsNullOrWhiteSpace(text) ? ThreatModelManager.Undefined : text; + } #endregion } } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/GroupShape.cs b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/GroupShape.cs index f74c611b..212af635 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/GroupShape.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/GroupShape.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Drawing; +using System.Xml.Linq; using Newtonsoft.Json; using PostSharp.Patterns.Collections; using PostSharp.Patterns.Contracts; @@ -213,6 +214,12 @@ public IGroupShape Clone([NotNull] IGroupShapesContainer container) return result; } + + public override string ToString() + { + var text = Identity?.ToString(); + return string.IsNullOrWhiteSpace(text) ? ThreatModelManager.Undefined : text; + } #endregion } } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Link.cs b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Link.cs index ad13edda..db75a4cb 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Link.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Diagrams/Link.cs @@ -162,6 +162,12 @@ public ILink Clone(ILinksContainer container) return result; } + + public override string ToString() + { + string text = DataFlow?.ToString(); + return string.IsNullOrWhiteSpace(text) ? ThreatModelManager.Undefined : text; + } #endregion } } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataFlow.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataFlow.cs index fbceba22..f607bb6a 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataFlow.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataFlow.cs @@ -316,7 +316,7 @@ public IDataFlow Clone([NotNull] IDataFlowsContainer container) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataStore.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataStore.cs index 34ee3144..2460c774 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataStore.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/DataStore.cs @@ -228,7 +228,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } public event Action ImageChanged; diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/EntityTemplate.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/EntityTemplate.cs index 60ab11c0..7b65ff71 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/EntityTemplate.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/EntityTemplate.cs @@ -145,7 +145,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } [JsonProperty("entityType")] diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/ExternalInteractor.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/ExternalInteractor.cs index 79e15a83..e32e138b 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/ExternalInteractor.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/ExternalInteractor.cs @@ -230,7 +230,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } public event Action ImageChanged; diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/FlowTemplate.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/FlowTemplate.cs index bf5a6f5d..f2ea2d11 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/FlowTemplate.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/FlowTemplate.cs @@ -147,7 +147,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } [InitializationRequired] diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/Process.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/Process.cs index 582d9d53..81e9a7c1 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/Process.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/Process.cs @@ -233,7 +233,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } public event Action ImageChanged; diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundary.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundary.cs index d254b079..2a0d5288 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundary.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundary.cs @@ -205,7 +205,7 @@ public void ResetTemplate() public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } public IGroup Clone([NotNull] IGroupsContainer container) diff --git a/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundaryTemplate.cs b/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundaryTemplate.cs index f7aa0ceb..1f6361af 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundaryTemplate.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/Entities/TrustBoundaryTemplate.cs @@ -142,7 +142,7 @@ public void SetId(Guid id) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } [InitializationRequired] diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatModel.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatModel.cs index 14aae760..72ee2fd4 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatModel.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatModel.cs @@ -363,7 +363,7 @@ public IIdentity GetIdentity(Guid id) public override string ToString() { - return Name; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } public IVulnerability FindVulnerability(Guid id) diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Mitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Mitigation.cs index 064ac8ff..a4ae89e6 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Mitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Mitigation.cs @@ -179,7 +179,7 @@ public IMitigation Clone([NotNull] IMitigationsContainer container) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #region Specialized Mitigations. diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SeverityDefinition.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SeverityDefinition.cs index e4c28610..ec16a5ff 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SeverityDefinition.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SeverityDefinition.cs @@ -256,7 +256,7 @@ public int CompareTo(ISeverity obj) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SpecializedMitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SpecializedMitigation.cs index 8176924c..fde690f3 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SpecializedMitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/SpecializedMitigation.cs @@ -12,6 +12,7 @@ using ThreatsManager.Interfaces.ObjectModel; using ThreatsManager.Interfaces.ObjectModel.Entities; using ThreatsManager.Interfaces.ObjectModel.ThreatsMitigations; +using ThreatsManager.Utilities; using ThreatsManager.Utilities.Aspects.Engine; namespace ThreatsManager.Engine.ObjectModel.ThreatsMitigations @@ -69,6 +70,11 @@ public void SetSourceInfo(IThreatModel source) [JsonProperty("description")] public string Description { get; set; } + + public override string ToString() + { + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; + } #endregion } } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/StrengthDefinition.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/StrengthDefinition.cs index d5d9995b..bddb81f3 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/StrengthDefinition.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/StrengthDefinition.cs @@ -184,7 +184,7 @@ public int CompareTo(IStrength other) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatActor.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatActor.cs index b826de93..26b69334 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatActor.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatActor.cs @@ -201,7 +201,7 @@ public void Apply([NotNull] IThreatActor actor) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEvent.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEvent.cs index b79cdad0..6ea8ac21 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEvent.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEvent.cs @@ -468,7 +468,7 @@ private void AddProperty([NotNull] IProperty property) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventMitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventMitigation.cs index ae0d6f6f..dcb31308 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventMitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventMitigation.cs @@ -271,7 +271,7 @@ public IThreatEventMitigation Clone(IThreatEventMitigationsContainer container) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventScenario.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventScenario.cs index c178cfce..0bd758ff 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventScenario.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatEventScenario.cs @@ -257,7 +257,7 @@ public IThreatEventScenario Clone([NotNull] IThreatEventScenariosContainer conta public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatType.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatType.cs index b0a6f3f9..c108d272 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatType.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatType.cs @@ -252,7 +252,7 @@ public IThreatEvent GenerateEvent() public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeMitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeMitigation.cs index 579f7c5c..3ea85db0 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeMitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeMitigation.cs @@ -13,6 +13,7 @@ using ThreatsManager.Engine.Aspects; using PostSharp.Patterns.Collections; using ThreatsManager.Utilities; +using System.Xml.Linq; namespace ThreatsManager.Engine.ObjectModel.ThreatsMitigations { @@ -218,7 +219,7 @@ public IThreatTypeMitigation Clone(IThreatTypeMitigationsContainer container) public override string ToString() { - return Mitigation.Name; + return Mitigation == null ? ThreatModelManager.Undefined : Mitigation.ToString(); } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeWeakness.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeWeakness.cs index a77e94f6..70bccf6c 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeWeakness.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/ThreatTypeWeakness.cs @@ -189,7 +189,7 @@ public IThreatTypeWeakness Clone(IThreatTypeWeaknessesContainer container) public override string ToString() { - return Weakness?.Name; + return Weakness == null ? ThreatModelManager.Undefined : Weakness.ToString(); } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Vulnerability.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Vulnerability.cs index 17a6fb58..bf2dd187 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Vulnerability.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Vulnerability.cs @@ -386,7 +386,7 @@ private void AddProperty([NotNull] IProperty property) public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/VulnerabilityMitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/VulnerabilityMitigation.cs index e174f065..989ae64c 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/VulnerabilityMitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/VulnerabilityMitigation.cs @@ -304,7 +304,7 @@ public IVulnerabilityMitigation Clone(IVulnerabilityMitigationsContainer contain public override string ToString() { - return Mitigation.Name ?? ThreatModelManager.Undefined; + return Mitigation == null ? ThreatModelManager.Undefined : Mitigation.ToString(); } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Weakness.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Weakness.cs index 5efaca3f..e27c2253 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Weakness.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/Weakness.cs @@ -244,7 +244,7 @@ public IVulnerability GenerateVulnerability() public override string ToString() { - return Name ?? ThreatModelManager.Undefined; + return string.IsNullOrWhiteSpace(Name) ? ThreatModelManager.Undefined : Name; } #endregion } diff --git a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/WeaknessMitigation.cs b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/WeaknessMitigation.cs index 8883de7a..97c6ccb7 100644 --- a/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/WeaknessMitigation.cs +++ b/Sources/ThreatsManager.Engine/ObjectModel/ThreatsMitigations/WeaknessMitigation.cs @@ -216,7 +216,7 @@ public IWeaknessMitigation Clone(IWeaknessMitigationsContainer container) public override string ToString() { - return Mitigation.Name; + return Mitigation == null ? ThreatModelManager.Undefined : Mitigation.ToString(); } #endregion } From 53577b089e4b03cb883982fe56fac208dbf7f7d1 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Thu, 23 May 2024 17:39:52 +0200 Subject: [PATCH 12/15] Updated to latest version. --- .gitignore | 2 +- .../_manifest/spdx_2.2/manifest.spdx.json | 422 +++++++++--------- .../spdx_2.2/manifest.spdx.json.sha256 | 2 +- global.json | 2 +- 4 files changed, 214 insertions(+), 214 deletions(-) diff --git a/.gitignore b/.gitignore index c3eb48b5..ea661fe9 100644 --- a/.gitignore +++ b/.gitignore @@ -360,4 +360,4 @@ MigrationBackup/ FodyWeavers.xsd # Threats Manager specific folders -/KnowledgeBases/Build/Azure +/KnowledgeBases/Build/ diff --git a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json index c7eb2fa9..2738e65c 100644 --- a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json +++ b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json @@ -38,98 +38,98 @@ "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Tokens", - "SPDXID": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", + "name": "PostSharp.Patterns.Common", + "SPDXID": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Tokens@6.30.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Bcl.AsyncInterfaces", - "SPDXID": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", + "name": "Microsoft.TeamFoundationServer.Client", + "SPDXID": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.1.0", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.0" + "referenceLocator": "pkg:nuget/Microsoft.TeamFoundationServer.Client@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Newtonsoft.Json", - "SPDXID": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", + "name": "System.Text.Json", + "SPDXID": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "13.0.3", + "versionInfo": "4.7.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Newtonsoft.Json@13.0.3" + "referenceLocator": "pkg:nuget/System.Text.Json@4.7.2" } ], "supplier": "NOASSERTION" }, { - "name": "Antlr4.Runtime.Standard", - "SPDXID": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", + "name": "Microsoft.Bcl.AsyncInterfaces", + "SPDXID": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.13.1", + "versionInfo": "1.1.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Antlr4.Runtime.Standard@4.13.1" + "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Model.Redist", - "SPDXID": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", + "name": "HtmlAgilityPack", + "SPDXID": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "1.11.60", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/HtmlAgilityPack@1.11.60" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Common", - "SPDXID": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", + "name": "PostSharp.Patterns.Aggregation.Redist", + "SPDXID": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -140,176 +140,176 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common@2024.0.8" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "HtmlAgilityPack", - "SPDXID": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", + "name": "Microsoft.VisualStudio.Services.InteractiveClient", + "SPDXID": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.11.60", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/HtmlAgilityPack@1.11.60" + "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.InteractiveClient@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Azure.AI.OpenAI", - "SPDXID": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", + "name": "System.IdentityModel.Tokens.Jwt", + "SPDXID": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.0.0-beta.9", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Azure.AI.OpenAI@1.0.0-beta.9" + "referenceLocator": "pkg:nuget/System.IdentityModel.Tokens.Jwt@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.TeamFoundationServer.Client", - "SPDXID": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", + "name": "Microsoft.AspNet.WebApi.WebHost", + "SPDXID": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.TeamFoundationServer.Client@19.225.1" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.WebHost@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Logging", - "SPDXID": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", + "name": "Microsoft.AspNet.WebApi.Core", + "SPDXID": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Logging@6.30.1" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Core@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "System.Memory", - "SPDXID": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", + "name": "Azure.Core", + "SPDXID": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.5.4", + "versionInfo": "1.35.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Memory@4.5.4" + "referenceLocator": "pkg:nuget/Azure.Core@1.35.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.Text.Json", - "SPDXID": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", + "name": "Microsoft.TeamFoundation.DistributedTask.Common.Contracts", + "SPDXID": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.2", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Text.Json@4.7.2" + "referenceLocator": "pkg:nuget/Microsoft.TeamFoundation.DistributedTask.Common.Contracts@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.VisualStudio.Services.Client", - "SPDXID": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", + "name": "PostSharp.Patterns.Aggregation", + "SPDXID": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.Client@19.225.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Identity.Client.Extensions.Msal", - "SPDXID": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", + "name": "PostSharp.Patterns.Model.Redist", + "SPDXID": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2.23.0", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Identity.Client.Extensions.Msal@2.23.0" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.Configuration.ConfigurationManager", - "SPDXID": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", + "name": "PostSharp", + "SPDXID": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Configuration.ConfigurationManager@8.0.0" + "referenceLocator": "pkg:nuget/PostSharp@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Aggregation.Redist", - "SPDXID": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", + "name": "PostSharp.Patterns.Common.Redist", + "SPDXID": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -320,158 +320,158 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.ValueTuple", - "SPDXID": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", + "name": "PostSharp.Redist", + "SPDXID": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.5.0", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.ValueTuple@4.5.0" + "referenceLocator": "pkg:nuget/PostSharp.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Identity.Client", - "SPDXID": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", + "name": "Microsoft.IdentityModel.Tokens", + "SPDXID": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.54.1", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Identity.Client@4.54.1" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Tokens@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Abstractions", - "SPDXID": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", + "name": "System.ComponentModel.Composition", + "SPDXID": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Abstractions@6.30.1" + "referenceLocator": "pkg:nuget/System.ComponentModel.Composition@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Azure.Core", - "SPDXID": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", + "name": "Microsoft.Bcl.AsyncInterfaces", + "SPDXID": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.35.0", + "versionInfo": "1.1.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Azure.Core@1.35.0" + "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.ComponentModel.Composition", - "SPDXID": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", + "name": "Microsoft.IdentityModel.Logging", + "SPDXID": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.ComponentModel.Composition@8.0.0" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Logging@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.Client", - "SPDXID": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", + "name": "System.Memory.Data", + "SPDXID": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "1.0.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Client@5.2.7" + "referenceLocator": "pkg:nuget/System.Memory.Data@1.0.2" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Aggregation", - "SPDXID": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", + "name": "Microsoft.VisualStudio.Services.Client", + "SPDXID": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.Client@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "System.Memory.Data", - "SPDXID": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", + "name": "Azure.AI.OpenAI", + "SPDXID": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.0.2", + "versionInfo": "1.0.0-beta.9", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Memory.Data@1.0.2" + "referenceLocator": "pkg:nuget/Azure.AI.OpenAI@1.0.0-beta.9" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Redist", - "SPDXID": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", + "name": "PostSharp.Patterns.Model", + "SPDXID": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -482,122 +482,122 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Threading", - "SPDXID": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", + "name": "System.Memory", + "SPDXID": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.5.4", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading@2024.0.8" + "referenceLocator": "pkg:nuget/System.Memory@4.5.4" } ], "supplier": "NOASSERTION" }, { - "name": "System.IdentityModel.Tokens.Jwt", - "SPDXID": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", + "name": "System.IO.Packaging", + "SPDXID": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.IdentityModel.Tokens.Jwt@6.30.1" + "referenceLocator": "pkg:nuget/System.IO.Packaging@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.Core", - "SPDXID": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", + "name": "Microsoft.Identity.Client.Extensions.Msal", + "SPDXID": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "2.23.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Core@5.2.7" + "referenceLocator": "pkg:nuget/Microsoft.Identity.Client.Extensions.Msal@2.23.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.TeamFoundation.DistributedTask.Common.Contracts", - "SPDXID": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", + "name": "Microsoft.Identity.Client", + "SPDXID": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "4.54.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.TeamFoundation.DistributedTask.Common.Contracts@19.225.1" + "referenceLocator": "pkg:nuget/Microsoft.Identity.Client@4.54.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Bcl.AsyncInterfaces", - "SPDXID": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", + "name": "System.Configuration.ConfigurationManager", + "SPDXID": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.1.1", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.1" + "referenceLocator": "pkg:nuget/System.Configuration.ConfigurationManager@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Threading.Redist", - "SPDXID": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", + "name": "Antlr4.Runtime.Standard", + "SPDXID": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.13.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/Antlr4.Runtime.Standard@4.13.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Common.Redist", - "SPDXID": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", + "name": "PostSharp.Patterns.Threading.Redist", + "SPDXID": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -608,140 +608,140 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.VisualStudio.Services.InteractiveClient", - "SPDXID": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", + "name": "Newtonsoft.Json", + "SPDXID": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "13.0.3", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.InteractiveClient@19.225.1" + "referenceLocator": "pkg:nuget/Newtonsoft.Json@13.0.3" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.WebHost", - "SPDXID": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", + "name": "System.Runtime.CompilerServices.Unsafe", + "SPDXID": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "4.7.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.WebHost@5.2.7" + "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@4.7.1" } ], "supplier": "NOASSERTION" }, { - "name": "System.Security.Cryptography.ProtectedData", - "SPDXID": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", + "name": "System.Text.Encodings.Web", + "SPDXID": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "4.7.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Security.Cryptography.ProtectedData@8.0.0" + "referenceLocator": "pkg:nuget/System.Text.Encodings.Web@4.7.2" } ], "supplier": "NOASSERTION" }, { - "name": "System.Runtime.CompilerServices.Unsafe", - "SPDXID": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", + "name": "Microsoft.IdentityModel.JsonWebTokens", + "SPDXID": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.0.0", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@6.0.0" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.JsonWebTokens@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp", - "SPDXID": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", + "name": "System.Runtime.CompilerServices.Unsafe", + "SPDXID": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "6.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp@2024.0.8" + "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@6.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.Runtime.CompilerServices.Unsafe", - "SPDXID": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", + "name": "PostSharp.Patterns.Threading", + "SPDXID": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@4.7.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.Text.Encodings.Web", - "SPDXID": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", + "name": "System.ValueTuple", + "SPDXID": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.2", + "versionInfo": "4.5.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Text.Encodings.Web@4.7.2" + "referenceLocator": "pkg:nuget/System.ValueTuple@4.5.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.JsonWebTokens", - "SPDXID": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", + "name": "Microsoft.IdentityModel.Abstractions", + "SPDXID": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -752,32 +752,32 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.JsonWebTokens@6.30.1" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Abstractions@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Model", - "SPDXID": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", + "name": "Microsoft.AspNet.WebApi.Client", + "SPDXID": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Client@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "System.IO.Packaging", - "SPDXID": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", + "name": "System.Security.Cryptography.ProtectedData", + "SPDXID": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -788,7 +788,7 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.IO.Packaging@8.0.0" + "referenceLocator": "pkg:nuget/System.Security.Cryptography.ProtectedData@8.0.0" } ], "supplier": "NOASSERTION" @@ -807,12 +807,12 @@ ], "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2.2.1", + "versionInfo": "2.2.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:swid/Simone%20Curzi/github.com/Threats%20Manager%20Platform@2.2.1?tag_id=ee66066d-38d7-4536-b35d-63c00f872921" + "referenceLocator": "pkg:swid/Simone%20Curzi/github.com/Threats%20Manager%20Platform@2.2.2?tag_id=c4ec72b7-7db1-4c7a-88ab-7f2028cc3236" } ], "supplier": "Organization: Simone Curzi", @@ -828,232 +828,232 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", + "relatedSpdxElement": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", + "relatedSpdxElement": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", + "relatedSpdxElement": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", + "relatedSpdxElement": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", + "relatedSpdxElement": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", + "relatedSpdxElement": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", + "relatedSpdxElement": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", + "relatedSpdxElement": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", + "relatedSpdxElement": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", + "relatedSpdxElement": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", + "relatedSpdxElement": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", + "relatedSpdxElement": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", + "relatedSpdxElement": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", + "relatedSpdxElement": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", + "relatedSpdxElement": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", + "relatedSpdxElement": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", + "relatedSpdxElement": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", + "relatedSpdxElement": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", + "relatedSpdxElement": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", + "relatedSpdxElement": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", + "relatedSpdxElement": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", + "relatedSpdxElement": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", + "relatedSpdxElement": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", + "relatedSpdxElement": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", + "relatedSpdxElement": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", + "relatedSpdxElement": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", + "relatedSpdxElement": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", + "relatedSpdxElement": "SPDXRef-Package-D104A2A6563DC14DADA50A43307C03A5E7249D23141336EB3B6D9B635DFEB482", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", + "relatedSpdxElement": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", + "relatedSpdxElement": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", + "relatedSpdxElement": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", + "relatedSpdxElement": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", + "relatedSpdxElement": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", + "relatedSpdxElement": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", + "relatedSpdxElement": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", + "relatedSpdxElement": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", + "relatedSpdxElement": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", + "relatedSpdxElement": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", + "relatedSpdxElement": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", + "relatedSpdxElement": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", + "relatedSpdxElement": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", + "relatedSpdxElement": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", + "relatedSpdxElement": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-D104A2A6563DC14DADA50A43307C03A5E7249D23141336EB3B6D9B635DFEB482", + "relatedSpdxElement": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", "spdxElementId": "SPDXRef-RootPackage" } ], "spdxVersion": "SPDX-2.2", "dataLicense": "CC0-1.0", "SPDXID": "SPDXRef-DOCUMENT", - "name": "Threats Manager Platform 2.2.1", - "documentNamespace": "https://github.com/simonec73/threatsmanager/Threats%20Manager%20Platform/2.2.1/__PBXz8xYEOx004o00Etqg", + "name": "Threats Manager Platform 2.2.2", + "documentNamespace": "https://github.com/simonec73/threatsmanager/Threats%20Manager%20Platform/2.2.2/0uV7UC_bSkWswm4JvmbVBA", "creationInfo": { - "created": "2024-05-05T10:40:34Z", + "created": "2024-05-19T09:17:00Z", "creators": [ "Organization: Simone Curzi", "Tool: Microsoft.SBOMTool-2.2.4" diff --git a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 index df392643..2ee6185e 100644 --- a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 +++ b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 @@ -1 +1 @@ -e1c93ff97f0e0883a288962c95f676b2f3a376eacff12beafabb672c209b99f8 \ No newline at end of file +46da030d1fb521d02260493c6f9bc2f0f3a9aa71b819e14717ca881ad36372a1 \ No newline at end of file diff --git a/global.json b/global.json index 1c10b09a..9ba87f43 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.204", + "version": "8.0.300", "rollForward": "latestPatch" } } \ No newline at end of file From 6fb561d0fafe168da37c53ba1a8ca06d6a82fa50 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Fri, 24 May 2024 08:50:23 +0200 Subject: [PATCH 13/15] Fixes to issues related to Word Report generation. --- .../ListExternalInteractorsPlaceholder.cs | 6 ++--- .../Reporting/ListFlowsPlaceholder.cs | 10 ++++---- .../ListItemTemplateNamesPlaceholder.cs | 20 ++++++++-------- .../Reporting/ListItemTemplatesPlaceholder.cs | 12 +++++----- ...LongTermMitigationsNoThreatsPlaceholder.cs | 6 ++--- .../ListLongTermMitigationsPlaceholder.cs | 22 ++++++++--------- ...tMidTermMitigationsNoThreatsPlaceholder.cs | 6 ++--- .../ListMidTermMitigationsPlaceholder.cs | 22 ++++++++--------- .../Reporting/ListMitigationsPlaceholder.cs | 22 ++++++++--------- .../Reporting/ListProcessesPlaceholder.cs | 6 ++--- ...hortTermMitigationsNoThreatsPlaceholder.cs | 6 ++--- .../ListShortTermMitigationsPlaceholder.cs | 22 ++++++++--------- .../Reporting/ListStoragesPlaceholder.cs | 6 ++--- .../Reporting/ListThreatEventsPlaceholder.cs | 18 +++++++------- .../Reporting/ListThreatTypesPlaceholder.cs | 24 +++++++++---------- .../ListTrustBoundariesPlaceholder.cs | 6 ++--- .../Reporting/TableSeveritiesPlaceholder.cs | 2 +- .../Reporting/TableStrengthsPlaceholder.cs | 2 +- .../TableSummaryMitigationsPlaceholder.cs | 10 ++++---- .../TableSummaryThreatEventsPlaceholder.cs | 16 ++++++------- .../TableSummaryThreatTypesPlaceholder.cs | 12 +++++----- .../Reporting/TableThreatActorsPlaceholder.cs | 4 ++-- 22 files changed, 130 insertions(+), 130 deletions(-) diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListExternalInteractorsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListExternalInteractorsPlaceholder.cs index f9285019..b083687d 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListExternalInteractorsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListExternalInteractorsPlaceholder.cs @@ -33,7 +33,7 @@ public IEnumerable> GetProperties([NotNull] { IEnumerable> result = null; - var entities = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var entities = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (entities?.Any() ?? false) { @@ -71,7 +71,7 @@ public IEnumerable GetList(IThreatModel model) { IEnumerable result = null; - var entities = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var entities = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (entities?.Any() ?? false) { @@ -85,7 +85,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(entity.Name, entity.Id, items)); + list.Add(new ListItem(entity.ToString(), entity.Id, items)); } result = list; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListFlowsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListFlowsPlaceholder.cs index 3a2bbf30..dd481067 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListFlowsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListFlowsPlaceholder.cs @@ -33,7 +33,7 @@ public IEnumerable> GetProperties([NotNull] { IEnumerable> result = null; - var flows = model.DataFlows?.OrderBy(x => x.Name).ToArray(); + var flows = model.DataFlows?.OrderBy(x => x.ToString()).ToArray(); if (flows?.Any() ?? false) { @@ -71,7 +71,7 @@ public IEnumerable GetList(IThreatModel model) { IEnumerable result = null; - var flows = model.DataFlows?.OrderBy(x => x.Name).ToArray(); + var flows = model.DataFlows?.OrderBy(x => x.ToString()).ToArray(); if (flows?.Any() ?? false) { @@ -82,17 +82,17 @@ public IEnumerable GetList(IThreatModel model) var items = new List(); items.Add(new TextRow("Description", flow.Description)); if (flow.Source != null) - items.Add(new TextRow("Source", $"[{flow.Source.GetIdentityTypeInitial()}] {flow.Source.Name}", + items.Add(new TextRow("Source", $"[{flow.Source.GetIdentityTypeInitial()}] {flow.Source.ToString()}", null, null, new []{flow.SourceId})); if (flow.Target != null) - items.Add(new TextRow("Target", $"[{flow.Target.GetIdentityTypeInitial()}] {flow.Target.Name}", + items.Add(new TextRow("Target", $"[{flow.Target.GetIdentityTypeInitial()}] {flow.Target.ToString()}", null, null, new []{flow.TargetId})); items.Add(new TextRow("Flow Type", flow.FlowType.GetEnumLabel())); var itemRows = flow.GetItemRows()?.ToArray(); if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(flow.Name, flow.Id, items)); + list.Add(new ListItem(flow.ToString(), flow.Id, items)); } result = list; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplateNamesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplateNamesPlaceholder.cs index ae607ebd..9f0483a1 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplateNamesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplateNamesPlaceholder.cs @@ -36,38 +36,38 @@ public IEnumerable GetTextEnumeration([NotNull] IThreatModel model) var externalInteractors = model.EntityTemplates? .Where(x => x.EntityType == EntityType.ExternalInteractor) - .OrderBy(x => x.Name) - .Select(x => x.Name) + .OrderBy(x => x.ToString()) + .Select(x => x.ToString()) .ToArray(); if (externalInteractors?.Any() ?? false) list.AddRange(externalInteractors); var processes = model.EntityTemplates? .Where(x => x.EntityType == EntityType.Process) - .OrderBy(x => x.Name) - .Select(x => x.Name) + .OrderBy(x => x.ToString()) + .Select(x => x.ToString()) .ToArray(); if (processes?.Any() ?? false) list.AddRange(processes); var dataStores = model.EntityTemplates? .Where(x => x.EntityType == EntityType.DataStore) - .OrderBy(x => x.Name) - .Select(x => x.Name) + .OrderBy(x => x.ToString()) + .Select(x => x.ToString()) .ToArray(); if (dataStores?.Any() ?? false) list.AddRange(dataStores); var flows = model.FlowTemplates? - .OrderBy(x => x.Name) - .Select(x => x.Name) + .OrderBy(x => x.ToString()) + .Select(x => x.ToString()) .ToArray(); if (flows?.Any() ?? false) list.AddRange(flows); var trustBoundaries = model.TrustBoundaryTemplates? - .OrderBy(x => x.Name) - .Select(x => x.Name) + .OrderBy(x => x.ToString()) + .Select(x => x.ToString()) .ToArray(); if (trustBoundaries?.Any() ?? false) list.AddRange(trustBoundaries); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplatesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplatesPlaceholder.cs index a9ecc2e3..32f0f86b 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplatesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListItemTemplatesPlaceholder.cs @@ -135,7 +135,7 @@ private void AddEntityTemplates([NotNull] List list, [NotNull] IThreat { var entities = model.EntityTemplates? .Where(x => x.EntityType == entityType) - .OrderBy(x => x.Name).ToArray(); + .OrderBy(x => x.ToString()).ToArray(); if (entities?.Any() ?? false) { foreach (var entity in entities) @@ -146,7 +146,7 @@ private void AddEntityTemplates([NotNull] List list, [NotNull] IThreat var itemRows = entity.GetItemRows()?.ToArray(); if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(entity.Name, entity.Id, items)); + list.Add(new ListItem(entity.ToString(), entity.Id, items)); } } } @@ -154,7 +154,7 @@ private void AddEntityTemplates([NotNull] List list, [NotNull] IThreat private void AddFlowTemplates([NotNull] List list, [NotNull] IThreatModel model) { var flows = model.FlowTemplates? - .OrderBy(x => x.Name).ToArray(); + .OrderBy(x => x.ToString()).ToArray(); if (flows?.Any() ?? false) { foreach (var flow in flows) @@ -165,7 +165,7 @@ private void AddFlowTemplates([NotNull] List list, [NotNull] IThreatMo var itemRows = flow.GetItemRows()?.ToArray(); if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(flow.Name, flow.Id, items)); + list.Add(new ListItem(flow.ToString(), flow.Id, items)); } } } @@ -173,7 +173,7 @@ private void AddFlowTemplates([NotNull] List list, [NotNull] IThreatMo private void AddTrustBoundaryTemplates([NotNull] List list, [NotNull] IThreatModel model) { var trustBoundaries = model.TrustBoundaryTemplates? - .OrderBy(x => x.Name).ToArray(); + .OrderBy(x => x.ToString()).ToArray(); if (trustBoundaries?.Any() ?? false) { foreach (var trustBoundary in trustBoundaries) @@ -183,7 +183,7 @@ private void AddTrustBoundaryTemplates([NotNull] List list, [NotNull] var itemRows = trustBoundary.GetItemRows()?.ToArray(); if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(trustBoundary.Name, trustBoundary.Id, items)); + list.Add(new ListItem(trustBoundary.ToString(), trustBoundary.Id, items)); } } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsNoThreatsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsNoThreatsPlaceholder.cs index 7d82d7a3..8963ec24 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsNoThreatsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsNoThreatsPlaceholder.cs @@ -37,7 +37,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.LongTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -79,7 +79,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.LongTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -101,7 +101,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsPlaceholder.cs index 5bed1783..dfd8fb92 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListLongTermMitigationsPlaceholder.cs @@ -38,7 +38,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.LongTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -80,7 +80,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.LongTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -114,7 +114,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } @@ -130,8 +130,8 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -140,11 +140,11 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable GetDirectivesCells(IEnumerable var list = mitigations? .Where(x => !string.IsNullOrWhiteSpace(x.Directives)) .OrderByDescending(x => x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -172,7 +172,7 @@ private IEnumerable GetDirectivesCells(IEnumerable { if (item.ThreatEvent?.Parent != null) { - cells.Add(new Cell($"{item.ThreatEvent.Parent.Name}", + cells.Add(new Cell($"{item.ThreatEvent.Parent.ToString()}", $"[{item.ThreatEvent.Parent.GetIdentityTypeInitial()}] ", null, new[] { item.ThreatEvent.ParentId })); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsNoThreatsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsNoThreatsPlaceholder.cs index d269b0de..1525cefd 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsNoThreatsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsNoThreatsPlaceholder.cs @@ -37,7 +37,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.MidTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -79,7 +79,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.MidTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -101,7 +101,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsPlaceholder.cs index dd470856..f8aec2fa 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMidTermMitigationsPlaceholder.cs @@ -38,7 +38,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.MidTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -80,7 +80,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.MidTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -114,7 +114,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } @@ -130,8 +130,8 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -140,11 +140,11 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable GetDirectivesCells(IEnumerable var list = mitigations? .Where(x => !string.IsNullOrWhiteSpace(x.Directives)) .OrderByDescending(x => x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -172,7 +172,7 @@ private IEnumerable GetDirectivesCells(IEnumerable { if (item.ThreatEvent?.Parent != null) { - cells.Add(new Cell($"{item.ThreatEvent.Parent.Name}", + cells.Add(new Cell($"{item.ThreatEvent.Parent.ToString()}", $"[{item.ThreatEvent.Parent.GetIdentityTypeInitial()}] ", null, new[] { item.ThreatEvent.ParentId })); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMitigationsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMitigationsPlaceholder.cs index 19e6d776..c96daf04 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMitigationsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListMitigationsPlaceholder.cs @@ -35,7 +35,7 @@ public IEnumerable> GetProperties([NotNull] IEnumerable> result = null; var mitigations = model.GetUniqueMitigations()? - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -75,7 +75,7 @@ public IEnumerable GetList(IThreatModel model) IEnumerable result = null; var mitigations = model.GetUniqueMitigations()? - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -109,7 +109,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } @@ -125,8 +125,8 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -135,11 +135,11 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable GetDirectivesCells(IEnumerable var list = mitigations? .Where(x => !string.IsNullOrWhiteSpace(x.Directives)) .OrderByDescending(x => x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -167,7 +167,7 @@ private IEnumerable GetDirectivesCells(IEnumerable { if (item.ThreatEvent?.Parent != null) { - cells.Add(new Cell($"{item.ThreatEvent.Parent.Name}", + cells.Add(new Cell($"{item.ThreatEvent.Parent.ToString()}", $"[{item.ThreatEvent.Parent.GetIdentityTypeInitial()}] ", null, new[] { item.ThreatEvent.ParentId })); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListProcessesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListProcessesPlaceholder.cs index 5b3e2873..c22a8d22 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListProcessesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListProcessesPlaceholder.cs @@ -33,7 +33,7 @@ public IEnumerable> GetProperties([NotNull] { IEnumerable> result = null; - var processes = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var processes = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (processes?.Any() ?? false) { @@ -71,7 +71,7 @@ public IEnumerable GetList(IThreatModel model) { IEnumerable result = null; - var entities = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var entities = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (entities?.Any() ?? false) { @@ -85,7 +85,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(entity.Name, entity.Id, items)); + list.Add(new ListItem(entity.ToString(), entity.Id, items)); } result = list; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsNoThreatsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsNoThreatsPlaceholder.cs index 3d944621..b449b89d 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsNoThreatsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsNoThreatsPlaceholder.cs @@ -37,7 +37,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.ShortTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -79,7 +79,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.ShortTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -101,7 +101,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsPlaceholder.cs index 329c30b4..6d6539c1 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListShortTermMitigationsPlaceholder.cs @@ -38,7 +38,7 @@ public IEnumerable> GetProperties([NotNull] var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.ShortTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -80,7 +80,7 @@ public IEnumerable GetList(IThreatModel model) var schema = new RoadmapPropertySchemaManager(model); var mitigations = model.GetUniqueMitigations()? .Where(x => schema.GetStatus(x) == RoadmapStatus.ShortTerm) - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) @@ -114,7 +114,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(mitigation.Name, mitigation.Id, items)); + list.Add(new ListItem(mitigation.ToString(), mitigation.Id, items)); } } @@ -130,8 +130,8 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -140,11 +140,11 @@ private IEnumerable GetAffectedThreatsCells(IEnumerable GetDirectivesCells(IEnumerable var list = mitigations? .Where(x => !string.IsNullOrWhiteSpace(x.Directives)) .OrderByDescending(x => x.Strength, new StrengthComparer()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name).ToArray(); + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()).ToArray(); if (list?.Any() ?? false) { var cells = new List(); @@ -172,7 +172,7 @@ private IEnumerable GetDirectivesCells(IEnumerable { if (item.ThreatEvent?.Parent != null) { - cells.Add(new Cell($"{item.ThreatEvent.Parent.Name}", + cells.Add(new Cell($"{item.ThreatEvent.Parent.ToString()}", $"[{item.ThreatEvent.Parent.GetIdentityTypeInitial()}] ", null, new[] { item.ThreatEvent.ParentId })); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListStoragesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListStoragesPlaceholder.cs index 9031d230..7b4b3075 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListStoragesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListStoragesPlaceholder.cs @@ -33,7 +33,7 @@ public IEnumerable> GetProperties([NotNull] { IEnumerable> result = null; - var dataStores = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var dataStores = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (dataStores?.Any() ?? false) { @@ -71,7 +71,7 @@ public IEnumerable GetList(IThreatModel model) { IEnumerable result = null; - var entities = model.Entities?.OfType().OrderBy(x => x.Name).ToArray(); + var entities = model.Entities?.OfType().OrderBy(x => x.ToString()).ToArray(); if (entities?.Any() ?? false) { @@ -85,7 +85,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(entity.Name, entity.Id, items)); + list.Add(new ListItem(entity.ToString(), entity.Id, items)); } result = list; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatEventsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatEventsPlaceholder.cs index 21d0f38b..1737d27a 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatEventsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatEventsPlaceholder.cs @@ -76,8 +76,8 @@ public IEnumerable GetList(IThreatModel model) var threatEvents = model.GetThreatEvents()? .OrderByDescending(x => x.Severity, new SeverityComparer()) - .ThenBy(x => x.Name) - .ThenBy(x => x.Parent.Name) + .ThenBy(x => x.ToString()) + .ThenBy(x => x.Parent.ToString()) .ToArray(); if (threatEvents?.Any() ?? false) @@ -87,14 +87,14 @@ public IEnumerable GetList(IThreatModel model) foreach (var threatEvent in threatEvents) { var items = new List(); - items.Add(new TextRow("Severity", threatEvent.Severity.Name, + items.Add(new TextRow("Severity", threatEvent.Severity.ToString(), threatEvent.Severity.TextColor, threatEvent.Severity.BackColor, true, true, 75)); - items.Add(new TextRow("Threat Type", threatEvent.ThreatType.Name, null, null, new [] {threatEvent.ThreatTypeId})); + items.Add(new TextRow("Threat Type", threatEvent.ThreatType.ToString(), null, null, new [] {threatEvent.ThreatTypeId})); items.Add(new TextRow("Description", threatEvent.Description)); if (threatEvent.Parent != null) { items.Add(new TextRow("Associated To", - $"{threatEvent.Parent.Name}", + $"{threatEvent.Parent.ToString()}", $"[{threatEvent.Parent.GetIdentityTypeInitial()}] ", null, new[] { threatEvent.ParentId })); @@ -134,7 +134,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(threatEvent.Name, threatEvent.Id, items)); + list.Add(new ListItem(threatEvent.ToString(), threatEvent.Id, items)); } result = list; @@ -154,9 +154,9 @@ private IEnumerable GetCells(IEnumerable mitigatio foreach (var item in list) { - cells.Add(new Cell(item.Mitigation.Name, null, null, new [] {item.MitigationId})); - cells.Add(new Cell(item.ThreatEvent.Severity.Name, item.ThreatEvent.Severity.TextColor, item.ThreatEvent.Severity.BackColor, false, true)); - cells.Add(new Cell(item.Strength.Name)); + cells.Add(new Cell(item.Mitigation.ToString(), null, null, new [] {item.MitigationId})); + cells.Add(new Cell(item.ThreatEvent.Severity.ToString(), item.ThreatEvent.Severity.TextColor, item.ThreatEvent.Severity.BackColor, false, true)); + cells.Add(new Cell(item.Strength.ToString())); } result = cells; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatTypesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatTypesPlaceholder.cs index 1941b23c..9728836e 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatTypesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListThreatTypesPlaceholder.cs @@ -92,7 +92,7 @@ public IEnumerable GetList([NotNull] IThreatModel model) var threatTypes = model.ThreatTypes? .OrderByDescending(x => model.GetThreatEvents(x)?.Select(y => y.Severity).OrderByDescending(y => y, comparer).FirstOrDefault(), comparer) - .ThenBy(x => x.Name) + .ThenBy(x => x.ToString()) .ToArray(); if (threatTypes?.Any() ?? false) @@ -115,14 +115,14 @@ public IEnumerable GetList([NotNull] IThreatModel model) var severity = threatEvents.Select(x => x.Severity) .OrderByDescending(x => x, comparer).FirstOrDefault(); - items.Add(new TextRow("Severity", severity.Name, + items.Add(new TextRow("Severity", severity.ToString(), severity.TextColor, severity.BackColor, true, true, 75)); items.Add(new TextRow("Description", threatType.Description)); items.Add(new ListRow("Affected Objects", threatEvents.Select(x => - new Line($"{x.Parent?.Name}", + new Line($"{x.Parent?.ToString()}", $"[{x.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] ", - $" ({x.Severity?.Name})", + $" ({x.Severity?.ToString()})", new [] {x.ParentId})))); items.Add(new TableRow("Approved Mitigations", new[] { @@ -177,7 +177,7 @@ public IEnumerable GetList([NotNull] IThreatModel model) } } - list.Add(new ListItem(threatType.Name, threatType.Id, items)); + list.Add(new ListItem(threatType.ToString(), threatType.Id, items)); } } @@ -206,8 +206,8 @@ private IEnumerable GetMitigations(IEnumerable x.ThreatEvent.Parent.Name) - .ThenBy(x => x.Mitigation.Name); + .OrderBy(x => x.ThreatEvent.Parent?.ToString() ?? ThreatModelManager.Unknown) + .ThenBy(x => x.Mitigation.ToString()); } return result; @@ -224,14 +224,14 @@ private IEnumerable GetCells(IEnumerable mitigatio foreach (var item in list) { - cells.Add(new Cell($"{item.ThreatEvent.Parent.Name}", + cells.Add(new Cell($"{item.ThreatEvent.Parent.ToString()}", $"[{item.ThreatEvent?.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] ", null, new[] {item.ThreatEvent.ParentId})); - cells.Add(new Cell(item.Mitigation.Name, null, null, new [] {item.MitigationId})); - cells.Add(new Cell(item.ThreatEvent.Severity.Name, item.ThreatEvent.Severity.TextColor, item.ThreatEvent.Severity.BackColor, false, true)); - cells.Add(new Cell(item.Strength.Name)); + cells.Add(new Cell(item.Mitigation.ToString(), null, null, new [] {item.MitigationId})); + cells.Add(new Cell(item.ThreatEvent.Severity.ToString(), item.ThreatEvent.Severity.TextColor, item.ThreatEvent.Severity.BackColor, false, true)); + cells.Add(new Cell(item.Strength.ToString())); } result = cells; @@ -259,7 +259,7 @@ private IEnumerable GetCells(IEnumerable threatEvents, [NotN var cell = Cell.Create(item, property); if (cell != null) { - cells.Add(new Cell($"{item.Parent.Name}", + cells.Add(new Cell($"{item.Parent.ToString()}", $"[{item.Parent.GetIdentityTypeInitial()}] ", null, new[] { item.ParentId })); diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListTrustBoundariesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListTrustBoundariesPlaceholder.cs index 99ed22fc..5aff0c75 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListTrustBoundariesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/ListTrustBoundariesPlaceholder.cs @@ -33,7 +33,7 @@ public IEnumerable> GetProperties([NotNull] { IEnumerable> result = null; - var trustBoundaries = model.Groups?.OfType().OrderBy(x => x.Name).ToArray(); + var trustBoundaries = model.Groups?.OfType().OrderBy(x => x.ToString()).ToArray(); if (trustBoundaries?.Any() ?? false) { @@ -71,7 +71,7 @@ public IEnumerable GetList(IThreatModel model) { IEnumerable result = null; - var boundaries = model.Groups?.OfType().OrderBy(x => x.Name).ToArray(); + var boundaries = model.Groups?.OfType().OrderBy(x => x.ToString()).ToArray(); if (boundaries?.Any() ?? false) { @@ -85,7 +85,7 @@ public IEnumerable GetList(IThreatModel model) if (itemRows?.Any() ?? false) items.AddRange(itemRows); - list.Add(new ListItem(boundary.Name, boundary.Id, items)); + list.Add(new ListItem(boundary.ToString(), boundary.Id, items)); } result = list; diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSeveritiesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSeveritiesPlaceholder.cs index 97da58f2..94c8a034 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSeveritiesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSeveritiesPlaceholder.cs @@ -51,7 +51,7 @@ private IEnumerable GetCells([NotNull] IEnumerable severities) { foreach (var severity in severities) { - result.Add(new Cell(severity.Name, severity.TextColor, severity.BackColor, false, true)); + result.Add(new Cell(severity.ToString(), severity.TextColor, severity.BackColor, false, true)); result.Add(new Cell(severity.Description)); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableStrengthsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableStrengthsPlaceholder.cs index 73361579..0c77d3d3 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableStrengthsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableStrengthsPlaceholder.cs @@ -51,7 +51,7 @@ private IEnumerable GetCells([PostSharp.Patterns.Contracts.NotNull] IEnume { foreach (var strength in strengths) { - result.Add(new Cell(strength.Name)); + result.Add(new Cell(strength.ToString())); result.Add(new Cell(strength.Description)); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryMitigationsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryMitigationsPlaceholder.cs index 5f2bb117..952611e8 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryMitigationsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryMitigationsPlaceholder.cs @@ -33,7 +33,7 @@ public TableItem GetTable([NotNull] IThreatModel model) TableItem result = null; var mitigations = model.GetUniqueMitigations()? - .OrderBy(x => x.Name) + .OrderBy(x => x.ToString()) .ToArray(); if (mitigations?.Any() ?? false) { @@ -53,14 +53,14 @@ private IEnumerable GetCells([NotNull] IEnumerable mitigation foreach (var mitigation in mitigations) { - result.Add(new Cell(mitigation.Name, null, null, new []{mitigation.Id})); + result.Add(new Cell(mitigation.ToString(), null, null, new []{mitigation.Id})); var model = mitigation.Model; var tems = model.GetThreatEventMitigations(mitigation)?.ToArray(); result.Add(new Cell(tems? - .OrderBy(x => x.ThreatEvent?.Parent?.Name) - .ThenBy(x => x.ThreatEvent?.Name) + .OrderBy(x => x.ThreatEvent?.Parent?.ToString()) + .ThenBy(x => x.ThreatEvent?.ToString()) .Select(x => - new Line(x.ThreatEvent.Name, $"[{x.ThreatEvent?.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] {x.ThreatEvent?.Parent?.Name ?? ThreatModelManager.Unknown}: ", + new Line(x.ThreatEvent.ToString(), $"[{x.ThreatEvent?.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] {x.ThreatEvent?.Parent?.ToString() ?? ThreatModelManager.Unknown}: ", null, new[] {x.ThreatEvent?.Id ?? Guid.Empty, x.ThreatEvent?.ThreatTypeId ?? Guid.Empty}, x.Status.ToString())))); } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatEventsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatEventsPlaceholder.cs index 50e3ed0b..fab78a92 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatEventsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatEventsPlaceholder.cs @@ -34,8 +34,8 @@ public TableItem GetTable([NotNull] IThreatModel model) var threatEvents = model.GetThreatEvents()? .OrderByDescending(x => x.Severity, new SeverityComparer()) - .ThenBy(x => x.Parent.Name) - .ThenBy(x => x.Name) + .ThenBy(x => x.Parent.ToString()) + .ThenBy(x => x.ToString()) .ToArray(); if (threatEvents?.Any() ?? false) { @@ -58,15 +58,15 @@ private IEnumerable GetCells([NotNull] IEnumerable threatEve { if (threatEvent.Parent != null) { - result.Add(new Cell(threatEvent.Name, null, - $" on [{threatEvent.Parent.GetIdentityTypeInitial()}] {threatEvent.Parent.Name}", + result.Add(new Cell(threatEvent.ToString(), null, + $" on [{threatEvent.Parent.GetIdentityTypeInitial()}] {threatEvent.Parent.ToString()}", new[] { threatEvent.Id, threatEvent.ThreatTypeId })); - result.Add(new Cell(threatEvent.Severity.Name, threatEvent.Severity.TextColor, threatEvent.Severity.BackColor, false, true)); + result.Add(new Cell(threatEvent.Severity.ToString(), threatEvent.Severity.TextColor, threatEvent.Severity.BackColor, false, true)); result.Add(new Cell(threatEvent.Mitigations? - .OrderBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.Mitigation.Name) + .OrderBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.Mitigation.ToString()) .Select(x => - new Line(x.Mitigation.Name, null, null, new[] { x.MitigationId }, x.Status.ToString())))); + new Line(x.Mitigation.ToString(), null, null, new[] { x.MitigationId }, x.Status.ToString())))); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatTypesPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatTypesPlaceholder.cs index 31c9d7ea..6115b3fa 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatTypesPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableSummaryThreatTypesPlaceholder.cs @@ -57,21 +57,21 @@ private IEnumerable GetCells([PostSharp.Patterns.Contracts.NotNull] IEnume var threatTypes = threatEvents.Select(x => x.ThreatType).Distinct() .OrderByDescending(x => x.GetTopSeverity(), new SeverityComparer()) - .ThenBy(x => x.Name) + .ThenBy(x => x.ToString()) .ToArray(); foreach (var threatType in threatTypes) { var mitigations = threatEventMitigations.Where(x => x.ThreatEvent.ThreatTypeId == threatType.Id).ToArray(); - result.Add(new Cell(threatType.Name, null, null, new[] {threatType.Id})); + result.Add(new Cell(threatType.ToString(), null, null, new[] {threatType.Id})); var topSeverity = threatType.GetTopSeverity() ?? threatType.Severity; - result.Add(new Cell(topSeverity.Name, topSeverity.TextColor, topSeverity.BackColor, false, true)); + result.Add(new Cell(topSeverity.ToString(), topSeverity.TextColor, topSeverity.BackColor, false, true)); result.Add(new Cell(mitigations - .OrderBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.Mitigation.Name) + .OrderBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.Mitigation.ToString()) .Select(x => - new Line(x.Mitigation.Name, $"[{x.ThreatEvent?.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] {x.ThreatEvent.Parent.Name}: ", + new Line(x.Mitigation.ToString(), $"[{x.ThreatEvent?.Parent?.GetIdentityTypeInitial() ?? ThreatModelManager.Unknown}] {x.ThreatEvent.Parent.ToString()}: ", null, new[] {x.MitigationId}, x.Status.ToString())))); } } diff --git a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableThreatActorsPlaceholder.cs b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableThreatActorsPlaceholder.cs index adeaa876..c05b46a1 100644 --- a/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableThreatActorsPlaceholder.cs +++ b/Sources/Extensions/ThreatsManager.Extensions/Reporting/TableThreatActorsPlaceholder.cs @@ -29,7 +29,7 @@ public TableItem GetTable([PostSharp.Patterns.Contracts.NotNull] IThreatModel mo { TableItem result = null; - var threatActors = model.ThreatActors?.OrderBy(x => x.Name).ToArray(); + var threatActors = model.ThreatActors?.OrderBy(x => x.ToString()).ToArray(); if (threatActors?.Any() ?? false) { result = new TableItem(Name, new[] @@ -51,7 +51,7 @@ private IEnumerable GetCells([PostSharp.Patterns.Contracts.NotNull] IEnume { foreach (var threatActor in threatActors) { - result.Add(new Cell(threatActor.Name)); + result.Add(new Cell(threatActor.ToString())); result.Add(new Cell(threatActor.Description)); } } From 80db2a8e21024482dee1fc6475eed68e5f209b62 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Fri, 24 May 2024 08:55:24 +0200 Subject: [PATCH 14/15] Closed v2.2.2. --- .../_manifest/spdx_2.2/manifest.spdx.json | 434 +++++++++--------- .../spdx_2.2/manifest.spdx.json.sha256 | 2 +- 2 files changed, 218 insertions(+), 218 deletions(-) diff --git a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json index 2738e65c..79f417c3 100644 --- a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json +++ b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json @@ -2,44 +2,44 @@ "files": [], "packages": [ { - "name": "MathNet.Numerics.Signed", - "SPDXID": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", + "name": "Newtonsoft.Json", + "SPDXID": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.0.0", + "versionInfo": "13.0.3", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/MathNet.Numerics.Signed@5.0.0" + "referenceLocator": "pkg:nuget/Newtonsoft.Json@13.0.3" } ], "supplier": "NOASSERTION" }, { - "name": "System.Drawing.Common", - "SPDXID": "SPDXRef-Package-D104A2A6563DC14DADA50A43307C03A5E7249D23141336EB3B6D9B635DFEB482", + "name": "PostSharp.Patterns.Common.Redist", + "SPDXID": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.4", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Drawing.Common@8.0.4" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Common", - "SPDXID": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", + "name": "PostSharp", + "SPDXID": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", @@ -50,745 +50,745 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common@2024.0.8" + "referenceLocator": "pkg:nuget/PostSharp@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.TeamFoundationServer.Client", - "SPDXID": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", + "name": "PostSharp.Redist", + "SPDXID": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.TeamFoundationServer.Client@19.225.1" + "referenceLocator": "pkg:nuget/PostSharp.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.Text.Json", - "SPDXID": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", + "name": "Microsoft.VisualStudio.Services.InteractiveClient", + "SPDXID": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.2", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Text.Json@4.7.2" + "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.InteractiveClient@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Bcl.AsyncInterfaces", - "SPDXID": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", + "name": "Microsoft.AspNet.WebApi.WebHost", + "SPDXID": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.1.1", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.1" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.WebHost@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "HtmlAgilityPack", - "SPDXID": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", + "name": "System.Memory.Data", + "SPDXID": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.11.60", + "versionInfo": "1.0.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/HtmlAgilityPack@1.11.60" + "referenceLocator": "pkg:nuget/System.Memory.Data@1.0.2" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Aggregation.Redist", - "SPDXID": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", + "name": "System.IdentityModel.Tokens.Jwt", + "SPDXID": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/System.IdentityModel.Tokens.Jwt@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.VisualStudio.Services.InteractiveClient", - "SPDXID": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", + "name": "Microsoft.AspNet.WebApi.Core", + "SPDXID": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.InteractiveClient@19.225.1" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Core@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "System.IdentityModel.Tokens.Jwt", - "SPDXID": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", + "name": "PostSharp.Patterns.Model", + "SPDXID": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.IdentityModel.Tokens.Jwt@6.30.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.WebHost", - "SPDXID": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", + "name": "Microsoft.TeamFoundation.DistributedTask.Common.Contracts", + "SPDXID": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.WebHost@5.2.7" + "referenceLocator": "pkg:nuget/Microsoft.TeamFoundation.DistributedTask.Common.Contracts@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.Core", - "SPDXID": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", + "name": "System.Configuration.ConfigurationManager", + "SPDXID": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Core@5.2.7" + "referenceLocator": "pkg:nuget/System.Configuration.ConfigurationManager@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Azure.Core", - "SPDXID": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", + "name": "PostSharp.Patterns.Threading.Redist", + "SPDXID": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.35.0", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Azure.Core@1.35.0" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.TeamFoundation.DistributedTask.Common.Contracts", - "SPDXID": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", + "name": "System.Runtime.CompilerServices.Unsafe", + "SPDXID": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "4.7.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.TeamFoundation.DistributedTask.Common.Contracts@19.225.1" + "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@4.7.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Aggregation", - "SPDXID": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", + "name": "System.Memory", + "SPDXID": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.5.4", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation@2024.0.8" + "referenceLocator": "pkg:nuget/System.Memory@4.5.4" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Model.Redist", - "SPDXID": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", + "name": "System.Text.Encodings.Web", + "SPDXID": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.7.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/System.Text.Encodings.Web@4.7.2" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp", - "SPDXID": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", + "name": "Microsoft.Identity.Client.Extensions.Msal", + "SPDXID": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "2.23.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.Identity.Client.Extensions.Msal@2.23.0" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Common.Redist", - "SPDXID": "SPDXRef-Package-490397CA5E7A67CC7226926418351663AEC1B56062EE0469D8461D7DBAD4A0FC", + "name": "Microsoft.IdentityModel.JsonWebTokens", + "SPDXID": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.JsonWebTokens@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Redist", - "SPDXID": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", + "name": "Microsoft.Identity.Client", + "SPDXID": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.54.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.Identity.Client@4.54.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Tokens", - "SPDXID": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", + "name": "Azure.AI.OpenAI", + "SPDXID": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "1.0.0-beta.9", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Tokens@6.30.1" + "referenceLocator": "pkg:nuget/Azure.AI.OpenAI@1.0.0-beta.9" } ], "supplier": "NOASSERTION" }, { - "name": "System.ComponentModel.Composition", - "SPDXID": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", + "name": "System.Runtime.CompilerServices.Unsafe", + "SPDXID": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "6.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.ComponentModel.Composition@8.0.0" + "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@6.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Bcl.AsyncInterfaces", - "SPDXID": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", + "name": "System.IO.Packaging", + "SPDXID": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.1.0", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.0" + "referenceLocator": "pkg:nuget/System.IO.Packaging@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Logging", - "SPDXID": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", + "name": "PostSharp.Patterns.Threading", + "SPDXID": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Logging@6.30.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.Memory.Data", - "SPDXID": "SPDXRef-Package-836302A10D83B34AB15735A3BD20F9E5195E5C19F576DD54B2A803F042B4449F", + "name": "PostSharp.Patterns.Common", + "SPDXID": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.0.2", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Memory.Data@1.0.2" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Common@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.VisualStudio.Services.Client", - "SPDXID": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", + "name": "System.ValueTuple", + "SPDXID": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "19.225.1", + "versionInfo": "4.5.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.Client@19.225.1" + "referenceLocator": "pkg:nuget/System.ValueTuple@4.5.0" } ], "supplier": "NOASSERTION" }, { - "name": "Azure.AI.OpenAI", - "SPDXID": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", + "name": "Microsoft.IdentityModel.Abstractions", + "SPDXID": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "1.0.0-beta.9", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Azure.AI.OpenAI@1.0.0-beta.9" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Abstractions@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Model", - "SPDXID": "SPDXRef-Package-ECE93C9EE20F13DBEB21733C05EB3B862E623EB3E2898ABCDEF42D50D83E6815", + "name": "Microsoft.AspNet.WebApi.Client", + "SPDXID": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "5.2.7", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model@2024.0.8" + "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Client@5.2.7" } ], "supplier": "NOASSERTION" }, { - "name": "System.Memory", - "SPDXID": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", + "name": "PostSharp.Patterns.Model.Redist", + "SPDXID": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.5.4", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Memory@4.5.4" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Model.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "System.IO.Packaging", - "SPDXID": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", + "name": "System.Drawing.Common", + "SPDXID": "SPDXRef-Package-D104A2A6563DC14DADA50A43307C03A5E7249D23141336EB3B6D9B635DFEB482", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "8.0.4", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.IO.Packaging@8.0.0" + "referenceLocator": "pkg:nuget/System.Drawing.Common@8.0.4" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Identity.Client.Extensions.Msal", - "SPDXID": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", + "name": "Microsoft.IdentityModel.Tokens", + "SPDXID": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2.23.0", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Identity.Client.Extensions.Msal@2.23.0" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Tokens@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.Identity.Client", - "SPDXID": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", + "name": "Microsoft.Bcl.AsyncInterfaces", + "SPDXID": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.54.1", + "versionInfo": "1.1.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.Identity.Client@4.54.1" + "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.Configuration.ConfigurationManager", - "SPDXID": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", + "name": "Microsoft.Bcl.AsyncInterfaces", + "SPDXID": "SPDXRef-Package-6B6117AB3417AA50C1DF8B47DB834F43608FA2A493BD063B0DCD0310BE1691FC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "1.1.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Configuration.ConfigurationManager@8.0.0" + "referenceLocator": "pkg:nuget/Microsoft.Bcl.AsyncInterfaces@1.1.1" } ], "supplier": "NOASSERTION" }, { - "name": "Antlr4.Runtime.Standard", - "SPDXID": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", + "name": "PostSharp.Patterns.Aggregation.Redist", + "SPDXID": "SPDXRef-Package-6379CCB25AF5E1D2D13BBCF25714BF668FEFAF783E34D1CF18559CCD8F256B56", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.13.1", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Antlr4.Runtime.Standard@4.13.1" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation.Redist@2024.0.8" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Threading.Redist", - "SPDXID": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", + "name": "Antlr4.Runtime.Standard", + "SPDXID": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "4.13.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading.Redist@2024.0.8" + "referenceLocator": "pkg:nuget/Antlr4.Runtime.Standard@4.13.1" } ], "supplier": "NOASSERTION" }, { - "name": "Newtonsoft.Json", - "SPDXID": "SPDXRef-Package-B886264C88915A93892AFBE3D28CD5B3C8B7990F0C6A47AD506184440C46436E", + "name": "Microsoft.TeamFoundationServer.Client", + "SPDXID": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "13.0.3", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Newtonsoft.Json@13.0.3" + "referenceLocator": "pkg:nuget/Microsoft.TeamFoundationServer.Client@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "System.Runtime.CompilerServices.Unsafe", - "SPDXID": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", + "name": "System.Text.Json", + "SPDXID": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.1", + "versionInfo": "4.7.2", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@4.7.1" + "referenceLocator": "pkg:nuget/System.Text.Json@4.7.2" } ], "supplier": "NOASSERTION" }, { - "name": "System.Text.Encodings.Web", - "SPDXID": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", + "name": "System.ComponentModel.Composition", + "SPDXID": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.7.2", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Text.Encodings.Web@4.7.2" + "referenceLocator": "pkg:nuget/System.ComponentModel.Composition@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.JsonWebTokens", - "SPDXID": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", + "name": "MathNet.Numerics.Signed", + "SPDXID": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "5.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.JsonWebTokens@6.30.1" + "referenceLocator": "pkg:nuget/MathNet.Numerics.Signed@5.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.Runtime.CompilerServices.Unsafe", - "SPDXID": "SPDXRef-Package-1B140F7FA3F784DD56CC7A8B4145E9AD58D8CDD4C249A0F27F2262E47C9B41AF", + "name": "System.Security.Cryptography.ProtectedData", + "SPDXID": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.0.0", + "versionInfo": "8.0.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Runtime.CompilerServices.Unsafe@6.0.0" + "referenceLocator": "pkg:nuget/System.Security.Cryptography.ProtectedData@8.0.0" } ], "supplier": "NOASSERTION" }, { - "name": "PostSharp.Patterns.Threading", - "SPDXID": "SPDXRef-Package-55FBA99B1D65EDB6759C80CCBDCE0996BC6490650FA4CA8E6FA9DE29866D0DAC", + "name": "HtmlAgilityPack", + "SPDXID": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "2024.0.8", + "versionInfo": "1.11.60", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/PostSharp.Patterns.Threading@2024.0.8" + "referenceLocator": "pkg:nuget/HtmlAgilityPack@1.11.60" } ], "supplier": "NOASSERTION" }, { - "name": "System.ValueTuple", - "SPDXID": "SPDXRef-Package-C1475C5380732C85127A15B8BADF74D2619786E90578875B650082AE4497BC14", + "name": "Microsoft.IdentityModel.Logging", + "SPDXID": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "4.5.0", + "versionInfo": "6.30.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.ValueTuple@4.5.0" + "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Logging@6.30.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.IdentityModel.Abstractions", - "SPDXID": "SPDXRef-Package-ED6E8FB997A6D78D08443EC95BD284BFE932248A440D142BCB8557A36DC4A5A2", + "name": "Microsoft.VisualStudio.Services.Client", + "SPDXID": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "6.30.1", + "versionInfo": "19.225.1", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.IdentityModel.Abstractions@6.30.1" + "referenceLocator": "pkg:nuget/Microsoft.VisualStudio.Services.Client@19.225.1" } ], "supplier": "NOASSERTION" }, { - "name": "Microsoft.AspNet.WebApi.Client", - "SPDXID": "SPDXRef-Package-FB8EF87A04ABBDDE238C1B9302C41D39A089FDC8A755C4F352B2784CD890726B", + "name": "Azure.Core", + "SPDXID": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "5.2.7", + "versionInfo": "1.35.0", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/Microsoft.AspNet.WebApi.Client@5.2.7" + "referenceLocator": "pkg:nuget/Azure.Core@1.35.0" } ], "supplier": "NOASSERTION" }, { - "name": "System.Security.Cryptography.ProtectedData", - "SPDXID": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", + "name": "PostSharp.Patterns.Aggregation", + "SPDXID": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", "downloadLocation": "NOASSERTION", "filesAnalyzed": false, "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "copyrightText": "NOASSERTION", - "versionInfo": "8.0.0", + "versionInfo": "2024.0.8", "externalRefs": [ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:nuget/System.Security.Cryptography.ProtectedData@8.0.0" + "referenceLocator": "pkg:nuget/PostSharp.Patterns.Aggregation@2024.0.8" } ], "supplier": "NOASSERTION" @@ -812,7 +812,7 @@ { "referenceCategory": "PACKAGE-MANAGER", "referenceType": "purl", - "referenceLocator": "pkg:swid/Simone%20Curzi/github.com/Threats%20Manager%20Platform@2.2.2?tag_id=c4ec72b7-7db1-4c7a-88ab-7f2028cc3236" + "referenceLocator": "pkg:swid/Simone%20Curzi/github.com/Threats%20Manager%20Platform@2.2.2?tag_id=12baf80c-b759-49fc-8c53-1f1b51ee1b31" } ], "supplier": "Organization: Simone Curzi", @@ -821,44 +821,39 @@ ], "externalDocumentRefs": [], "relationships": [ - { - "relationshipType": "DESCRIBES", - "relatedSpdxElement": "SPDXRef-RootPackage", - "spdxElementId": "SPDXRef-DOCUMENT" - }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", + "relatedSpdxElement": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", + "relatedSpdxElement": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", + "relatedSpdxElement": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", + "relatedSpdxElement": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", "spdxElementId": "SPDXRef-RootPackage" }, { - "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-45F18602780C4D414694A3E1A8C6A21F6860CAA639E4A56E1C0498902B5457CC", - "spdxElementId": "SPDXRef-RootPackage" + "relationshipType": "DESCRIBES", + "relatedSpdxElement": "SPDXRef-RootPackage", + "spdxElementId": "SPDXRef-DOCUMENT" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", + "relatedSpdxElement": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-01FBE39297615D5615DCAF2AB4E213D489A90F4CC6E7CAA4E1F22CC76BA02C6A", + "relatedSpdxElement": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", "spdxElementId": "SPDXRef-RootPackage" }, { @@ -878,67 +873,67 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-4995F8D031EF7590447F1F4B315A14815138D2B78CF9F7C8699A8AA5C02C70EB", + "relatedSpdxElement": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", + "relatedSpdxElement": "SPDXRef-Package-8BC3AC3EB64349AAF877392CAC4013F1DE0514391B577FC1130B68A54543CE1C", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", + "relatedSpdxElement": "SPDXRef-Package-862E9A22FAE549CD97CBE81F8E67DB96A1FAFA78EA6B24BFD39C34B067014678", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", + "relatedSpdxElement": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", + "relatedSpdxElement": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", + "relatedSpdxElement": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", + "relatedSpdxElement": "SPDXRef-Package-8757039A8B547FF9C2EE2B141D443488CCF34AEE4C0D0668CA502A8050812221", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", + "relatedSpdxElement": "SPDXRef-Package-D5F937CDC86CBC13B5803898689C63EA3744103C3CA6BA564224AFB751812E7E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", + "relatedSpdxElement": "SPDXRef-Package-B3D5F30C6F4C897DA31933117BFB391A9177287CC31D26072129972E47E06996", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", + "relatedSpdxElement": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", + "relatedSpdxElement": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", + "relatedSpdxElement": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", + "relatedSpdxElement": "SPDXRef-Package-F8DE50729125DAC360E3A686403D3A2C3DC10909D104DA633FFA3EB999037C4F", "spdxElementId": "SPDXRef-RootPackage" }, { @@ -953,12 +948,12 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-5D96F0103707CBCFF84B28D306BD0C6F4464B149E2C79A6D1218CC1E093FFD25", + "relatedSpdxElement": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-D85926065BB4CE37A6FA6F50EAF742F233EE07208ECD20E72875B22A91F718D5", + "relatedSpdxElement": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", "spdxElementId": "SPDXRef-RootPackage" }, { @@ -978,17 +973,17 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-BF26B2207107EFC0BA7C9457143425D48C35B9E4A5F642A1E9C13D0A672387B4", + "relatedSpdxElement": "SPDXRef-Package-4AEC43C47D6DFEEF0C68C67CD0D82CB712910D99C8D539F8E2CF18F97E4B8F59", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-79635115AF84D923E985A49E76247A70F70FB8798FC292158F9B6D6B4E2A0336", + "relatedSpdxElement": "SPDXRef-Package-F1A6940BF5D403F3E064202A7FC4F6D1AE1534716BF53B2F46B0DF5AA70197D2", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-931589BD44AB626716D546809406FE4D919C164FF884EA04D57BA10E2A8D64EC", + "relatedSpdxElement": "SPDXRef-Package-BA5D8D1B5043A468B09DDBF48DCFC7DDD44949EE05A23A14F02AE8AA5183745C", "spdxElementId": "SPDXRef-RootPackage" }, { @@ -1008,12 +1003,12 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-1B079B578C50036D5A0DC1B1E3E5A7F7B045B06EE48E5EE8C59B29861C0863FC", + "relatedSpdxElement": "SPDXRef-Package-B6EB77607AF75F718E21D28F4BA0EE84239C8DE9830FF9719907EE090332AADF", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-1F6868692BA92B8833FB7BDD49335660B27070F01FE640B02ABF3CF85E9E917F", + "relatedSpdxElement": "SPDXRef-Package-8425361196B240DBA621FD99DF72107E5EF7AD21887F5BF85084C6D81043C05D", "spdxElementId": "SPDXRef-RootPackage" }, { @@ -1023,27 +1018,32 @@ }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-99B484564D51CC13C9CFEAEF3B587B994347C43EBCE51E4A30F1AD0AB53F6F1A", + "relatedSpdxElement": "SPDXRef-Package-7A132B5887E2748F11F31E4E55F7095F2134380DE1C42F92CADE24226E2C9DF8", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-5E8B61B595E583BBEF7ADCA095CBE2B5B173E786C455120EF6B9C37A13089A6E", + "relatedSpdxElement": "SPDXRef-Package-B627A9A962CA4EC270A6BB33055B6D932D9140ED98F117C25A3ACCD02894A5DE", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-0036185CFC5D903DD9210D1FA4BAF6EACE18C961FBCA96B55969F2D0ADD1006E", + "relatedSpdxElement": "SPDXRef-Package-22082FD72E8CF130874BE5C4C34DAF5C0760879E4935A27DAD871E64F0280929", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-A51161C96823E35F18ECB01793B545733228CEB78738651BD5BF03B9683AE351", + "relatedSpdxElement": "SPDXRef-Package-B5E9DFA3EF880DFD63E464878A4D9F62FD34E8760F0877C125CEF609A459E577", "spdxElementId": "SPDXRef-RootPackage" }, { "relationshipType": "DEPENDS_ON", - "relatedSpdxElement": "SPDXRef-Package-3036FA4AA4AA8E25839A015031B16C7C68F673BE21CD50A5A3E074465C383F13", + "relatedSpdxElement": "SPDXRef-Package-69A986D6F543ED157CF60B09C3CDD7A4405DF633256C00FEFBC53DA1956B1EE5", + "spdxElementId": "SPDXRef-RootPackage" + }, + { + "relationshipType": "DEPENDS_ON", + "relatedSpdxElement": "SPDXRef-Package-681B78A232303686681BD818B0D190BE6C105857B1F5C087E2FC1952A264EA58", "spdxElementId": "SPDXRef-RootPackage" } ], @@ -1051,9 +1051,9 @@ "dataLicense": "CC0-1.0", "SPDXID": "SPDXRef-DOCUMENT", "name": "Threats Manager Platform 2.2.2", - "documentNamespace": "https://github.com/simonec73/threatsmanager/Threats%20Manager%20Platform/2.2.2/0uV7UC_bSkWswm4JvmbVBA", + "documentNamespace": "https://github.com/simonec73/threatsmanager/Threats%20Manager%20Platform/2.2.2/FeTueKJ6Ak-phgkjVU0Ybw", "creationInfo": { - "created": "2024-05-19T09:17:00Z", + "created": "2024-05-23T16:51:34Z", "creators": [ "Organization: Simone Curzi", "Tool: Microsoft.SBOMTool-2.2.4" diff --git a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 index 2ee6185e..f17b3221 100644 --- a/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 +++ b/Sources/SBOM/_manifest/spdx_2.2/manifest.spdx.json.sha256 @@ -1 +1 @@ -46da030d1fb521d02260493c6f9bc2f0f3a9aa71b819e14717ca881ad36372a1 \ No newline at end of file +e87712ddae9b8c9ea81b40990700b7d7caac314f12a6da607f8f770f4d4c918e \ No newline at end of file From 154c4757f34caff0d70260e95e27a827cf2c17f7 Mon Sep 17 00:00:00 2001 From: Simone Curzi Date: Fri, 24 May 2024 08:57:45 +0200 Subject: [PATCH 15/15] Aligned TMS sources to v2.2.2 --- .../ExtensionsContainer.cs | 2 +- .../ExtensionsContainer.cs | 2 +- .../Dialogs/ExportTemplateDialog.Designer.cs | 1 - .../Dialogs/ImportTemplateDialog.Designer.cs | 1 - .../Panels/Diagram/GraphEntity.cs | 18 +++--- .../Reporting/ChartLongTermProjection.cs | 2 +- .../Reporting/ChartMidTermProjection.cs | 2 +- .../Reporting/ChartRoadmapPlaceholder.cs | 12 ++++ .../Reporting/ChartShortTermProjection.cs | 2 +- .../Reporting/ListDiagramsPlaceholder.cs | 14 +++-- .../Reporting/TableRoadmapPlaceholder.cs | 12 ++-- .../ExtensionLibrary.cs | 2 +- .../ExtensionsContainer.cs | 2 +- .../Annotations/AnnotationControl.Designer.cs | 46 +++++++-------- .../Annotations/AnnotationControl.cs | 2 +- .../Dialogs/AnnotationDialog.Designer.cs | 23 +++++--- .../Dialogs/AnnotationDialog.cs | 2 + .../ExtensionsContainer.cs | 2 +- .../Dashboard.CustomRibbonExtension.cs | 5 +- .../ItemEditor.cs | 9 +++ .../Properties/AssemblyInfo.cs | 4 +- Studio/ThreatsManager/App.config | 10 ++-- .../Dialogs/CertificateSelectionDialog.cs | 56 +++++++++++++------ Studio/ThreatsManager/MainForm.Files.cs | 2 +- Studio/ThreatsManager/Portable.config | 10 ++-- .../Properties/Resources.Designer.cs | 4 +- .../ThreatsManager/Properties/Resources.resx | 4 +- Studio/ThreatsManager/SolutionInfo.cs | 4 +- Studio/ThreatsManager/ThreatsManager.csproj | 1 + Studio/ThreatsManager/app.manifest | 2 +- 30 files changed, 159 insertions(+), 99 deletions(-) diff --git a/Studio/ThreatsManager.AutoThreatGeneration.WinForms/ExtensionsContainer.cs b/Studio/ThreatsManager.AutoThreatGeneration.WinForms/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Studio/ThreatsManager.AutoThreatGeneration.WinForms/ExtensionsContainer.cs +++ b/Studio/ThreatsManager.AutoThreatGeneration.WinForms/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Studio/ThreatsManager.DevOps.WinForms/ExtensionsContainer.cs b/Studio/ThreatsManager.DevOps.WinForms/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Studio/ThreatsManager.DevOps.WinForms/ExtensionsContainer.cs +++ b/Studio/ThreatsManager.DevOps.WinForms/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ExportTemplateDialog.Designer.cs b/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ExportTemplateDialog.Designer.cs index ae7d728d..4b556dab 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ExportTemplateDialog.Designer.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ExportTemplateDialog.Designer.cs @@ -260,7 +260,6 @@ private void InitializeComponent() this._pageTMProperties.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this._pageTMProperties.AntiAlias = false; this._pageTMProperties.BackColor = System.Drawing.Color.White; this._pageTMProperties.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this._pageTMProperties.Controls.Add(this._layoutDetails); diff --git a/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ImportTemplateDialog.Designer.cs b/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ImportTemplateDialog.Designer.cs index c256bcc1..e37e3c48 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ImportTemplateDialog.Designer.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Dialogs/ImportTemplateDialog.Designer.cs @@ -235,7 +235,6 @@ private void InitializeComponent() this._pageFile.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this._pageFile.AntiAlias = false; this._pageFile.BackColor = System.Drawing.Color.White; this._pageFile.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this._pageFile.Controls.Add(this._browse); diff --git a/Studio/ThreatsManager.Extensions.WinForms/Panels/Diagram/GraphEntity.cs b/Studio/ThreatsManager.Extensions.WinForms/Panels/Diagram/GraphEntity.cs index cff8b0a6..fcbb02e9 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Panels/Diagram/GraphEntity.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Panels/Diagram/GraphEntity.cs @@ -150,27 +150,27 @@ private void ApplySourceSize() { case ImageSize.Small: if (entity.SmallImage != null) - icon.Image = entity.SmallImage; + icon.Image = entity.GetImage(ImageSize.Small); else if (entity.Image != null) - icon.Image = entity.Image; + icon.Image = entity.GetImage(ImageSize.Medium); else if (entity.BigImage != null) - icon.Image = entity.BigImage; + icon.Image = entity.GetImage(ImageSize.Big); break; case ImageSize.Medium: if (entity.Image != null) - icon.Image = entity.Image; + icon.Image = entity.GetImage(ImageSize.Medium); else if (entity.BigImage != null) - icon.Image = entity.BigImage; + icon.Image = entity.GetImage(ImageSize.Big); else if (entity.SmallImage != null) - icon.Image = entity.SmallImage; + icon.Image = entity.GetImage(ImageSize.Small); break; case ImageSize.Big: if (entity.BigImage != null) - icon.Image = entity.BigImage; + icon.Image = entity.GetImage(ImageSize.Big); else if (entity.Image != null) - icon.Image = entity.Image; + icon.Image = entity.GetImage(ImageSize.Medium); else if (entity.SmallImage != null) - icon.Image = entity.SmallImage; + icon.Image = entity.GetImage(ImageSize.Small); break; } } diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartLongTermProjection.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartLongTermProjection.cs index 11ca8eed..6be97a7e 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartLongTermProjection.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartLongTermProjection.cs @@ -66,7 +66,7 @@ private static void UpdateSelectedMitigations(List selectedMitigations, selectedMitigations.AddRange(toBeAdded); } - public IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) + private IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) { IEnumerable result = null; diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartMidTermProjection.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartMidTermProjection.cs index 588a0a07..13d0f2df 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartMidTermProjection.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartMidTermProjection.cs @@ -65,7 +65,7 @@ private static void UpdateSelectedMitigations(List selectedMitigations, selectedMitigations.AddRange(toBeAdded); } - public IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) + private IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) { IEnumerable result = null; diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartRoadmapPlaceholder.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartRoadmapPlaceholder.cs index ec16d5ed..264e4f8a 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartRoadmapPlaceholder.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartRoadmapPlaceholder.cs @@ -54,6 +54,10 @@ public IEnumerable GetChart([NotNull] IThreatModel model) if (shortTermMitigations.Any()) selectedMitigations.AddRange(shortTermMitigations); var shortTerm = estimator.Estimate(model, selectedMitigations, out var shortTermMin, out var shortTermMax) * 100f / currentRisk; + if (float.IsNaN(shortTerm) || shortTerm > current) + shortTerm = 100f; + else if (shortTerm < 0f) + shortTerm = 0f; var midTermMitigations = mitigations .Where(x => x.GetStatus() == RoadmapStatus.MidTerm) @@ -62,6 +66,10 @@ public IEnumerable GetChart([NotNull] IThreatModel model) if (midTermMitigations.Any()) selectedMitigations.AddRange(midTermMitigations); var midTerm = estimator.Estimate(model, selectedMitigations, out var midTermMin, out var midTermMax) * 100f / currentRisk; + if (float.IsNaN(midTerm) || midTerm > current) + midTerm = 100f; + else if (midTerm < 0f) + midTerm = 0f; var longTermMitigations = mitigations .Where(x => x.GetStatus() == RoadmapStatus.LongTerm) @@ -70,6 +78,10 @@ public IEnumerable GetChart([NotNull] IThreatModel model) if (longTermMitigations.Any()) selectedMitigations.AddRange(longTermMitigations); var longTerm = estimator.Estimate(model, selectedMitigations, out var longTermMin, out var longTermMax) * 100f / currentRisk; + if (float.IsNaN(longTerm) || longTerm > current) + longTerm = 100f; + else if (longTerm < 0f) + longTerm = 0f; float acceptableRisk; var parameters = schemaManager.Parameters?.ToArray(); diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartShortTermProjection.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartShortTermProjection.cs index 3b1f6cf7..b8378111 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartShortTermProjection.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ChartShortTermProjection.cs @@ -64,7 +64,7 @@ private static void UpdateSelectedMitigations(List selectedMitigations, selectedMitigations.AddRange(toBeAdded); } - public IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) + private IEnumerable GetChart([NotNull] IThreatModel model, [NotNull] IDictionary projectedSeverities) { IEnumerable result = null; diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ListDiagramsPlaceholder.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ListDiagramsPlaceholder.cs index 9f311e63..cee24881 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/ListDiagramsPlaceholder.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/ListDiagramsPlaceholder.cs @@ -51,12 +51,16 @@ public IEnumerable GetList([NotNull] IThreatModel model) { foreach (var diagram in diagrams) { - var panel = new ModelPanel(); - panel.SetDiagram(diagram); - var imageRow = new ImageRow("Diagram", panel.GetMetafile(), $"The '{diagram.Name}' scenario."); - var textRow = new TextRow("Description", diagram.Description); + if ((diagram.Entities?.Any() ?? false) || + (diagram.Groups?.Any() ?? false)) + { + var panel = new ModelPanel(); + panel.SetDiagram(diagram); + var imageRow = new ImageRow("Diagram", panel.GetMetafile(), $"The '{diagram.Name}' scenario."); + var textRow = new TextRow("Description", diagram.Description); - list.Add(new ListItem(diagram.Name, diagram.Id, new ItemRow[]{imageRow, textRow})); + list.Add(new ListItem(diagram.ToString(), diagram.Id, new ItemRow[] { imageRow, textRow })); + } } } diff --git a/Studio/ThreatsManager.Extensions.WinForms/Reporting/TableRoadmapPlaceholder.cs b/Studio/ThreatsManager.Extensions.WinForms/Reporting/TableRoadmapPlaceholder.cs index 0d3d5591..7fcfc88b 100644 --- a/Studio/ThreatsManager.Extensions.WinForms/Reporting/TableRoadmapPlaceholder.cs +++ b/Studio/ThreatsManager.Extensions.WinForms/Reporting/TableRoadmapPlaceholder.cs @@ -73,7 +73,7 @@ private IEnumerable GetMitigations([NotNull] IEnumerable x.GetStatus() == status) - .OrderBy(x => x.Name); + .OrderBy(x => x.ToString()); } private IEnumerable GetCells([NotNull] IEnumerable mitigations, RoadmapStatus status) @@ -89,7 +89,7 @@ private IEnumerable GetCells([NotNull] IEnumerable mitigation foreach (var mitigation in mitigations) { - list.Add(new Cell(mitigation.Name, null, null, new [] {mitigation.Id})); + list.Add(new Cell(mitigation.ToString(), null, null, new [] {mitigation.Id})); list.Add(new Cell(GetLines(mitigation))); } @@ -107,8 +107,8 @@ private IEnumerable GetLines([NotNull] IMitigation mitigation) var threatEventMitigations = model.GetThreatEventMitigations(mitigation)? .Where(x => x.Status != MitigationStatus.Existing && x.Status != MitigationStatus.Implemented && x.Status != MitigationStatus.Undefined) .OrderBy(x => x.Status.ToString()) - .ThenBy(x => x.ThreatEvent.Parent.Name) - .ThenBy(x => x.ThreatEvent.Name) + .ThenBy(x => x.ThreatEvent.Parent.ToString()) + .ThenBy(x => x.ThreatEvent.ToString()) .ToArray(); if (threatEventMitigations?.Any() ?? false) @@ -118,8 +118,8 @@ private IEnumerable GetLines([NotNull] IMitigation mitigation) foreach (var tem in threatEventMitigations) { if (tem.ThreatEvent?.Parent != null) - list.Add(new Line(tem.ThreatEvent.Name, - $"[{tem.ThreatEvent.Parent.GetIdentityTypeInitial()}] {tem.ThreatEvent.Parent.Name}: ", + list.Add(new Line(tem.ThreatEvent.ToString(), + $"[{tem.ThreatEvent.Parent.GetIdentityTypeInitial()}] {tem.ThreatEvent.Parent.ToString()}: ", null, new []{tem.ThreatEvent.Id, tem.ThreatEvent.ThreatTypeId}, tem.Status.ToString())); } diff --git a/Studio/ThreatsManager.MsTmt.WinForms/ExtensionLibrary.cs b/Studio/ThreatsManager.MsTmt.WinForms/ExtensionLibrary.cs index 48e9ba38..d1bcb1fb 100644 --- a/Studio/ThreatsManager.MsTmt.WinForms/ExtensionLibrary.cs +++ b/Studio/ThreatsManager.MsTmt.WinForms/ExtensionLibrary.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Studio/ThreatsManager.MsTmt.WinForms/ExtensionsContainer.cs b/Studio/ThreatsManager.MsTmt.WinForms/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Studio/ThreatsManager.MsTmt.WinForms/ExtensionsContainer.cs +++ b/Studio/ThreatsManager.MsTmt.WinForms/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.Designer.cs b/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.Designer.cs index 9dd81219..30618ce0 100644 --- a/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.Designer.cs +++ b/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.Designer.cs @@ -110,7 +110,7 @@ private void InitializeComponent() this.layoutControlItem5, this.layoutControlItem6, this.layoutControlItem7}); - this.layoutControl1.Size = new System.Drawing.Size(1474, 923); + this.layoutControl1.Size = new System.Drawing.Size(1145, 701); this.layoutControl1.TabIndex = 0; // // _objectName @@ -120,7 +120,7 @@ private void InitializeComponent() this._objectName.Location = new System.Drawing.Point(78, 7); this._objectName.Margin = new System.Windows.Forms.Padding(0); this._objectName.Name = "_objectName"; - this._objectName.Size = new System.Drawing.Size(1388, 36); + this._objectName.Size = new System.Drawing.Size(1059, 36); this._objectName.TabIndex = 0; this._objectName.Text = "label1"; this._objectName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; @@ -137,11 +137,11 @@ private void InitializeComponent() this._askedBy.ButtonCustom.Visible = true; this._askedBy.DisabledBackColor = System.Drawing.Color.White; this._askedBy.ForeColor = System.Drawing.Color.Black; - this._askedBy.Location = new System.Drawing.Point(135, 238); + this._askedBy.Location = new System.Drawing.Point(135, 182); this._askedBy.Margin = new System.Windows.Forms.Padding(0); this._askedBy.Name = "_askedBy"; this._askedBy.PreventEnterBeep = true; - this._askedBy.Size = new System.Drawing.Size(446, 31); + this._askedBy.Size = new System.Drawing.Size(315, 31); this._askedBy.TabIndex = 3; this._askedBy.ButtonCustomClick += new System.EventHandler(this._askedBy_ButtonCustomClick); this._askedBy.TextChanged += new System.EventHandler(this._askedBy_TextChanged); @@ -149,10 +149,10 @@ private void InitializeComponent() // _answered // this._answered.AutoSize = true; - this._answered.Location = new System.Drawing.Point(8, 802); + this._answered.Location = new System.Drawing.Point(8, 579); this._answered.Margin = new System.Windows.Forms.Padding(0); this._answered.Name = "_answered"; - this._answered.Size = new System.Drawing.Size(1458, 34); + this._answered.Size = new System.Drawing.Size(1129, 34); this._answered.TabIndex = 7; this._answered.Text = "Has been fully answered"; this._answered.UseVisualStyleBackColor = true; @@ -170,7 +170,7 @@ private void InitializeComponent() this._askedOn.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown; this._askedOn.ButtonDropDown.Visible = true; this._askedOn.IsPopupCalendarOpen = false; - this._askedOn.Location = new System.Drawing.Point(724, 238); + this._askedOn.Location = new System.Drawing.Point(593, 182); this._askedOn.Margin = new System.Windows.Forms.Padding(0); // // @@ -201,7 +201,7 @@ private void InitializeComponent() this._askedOn.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this._askedOn.MonthCalendar.TodayButtonVisible = true; this._askedOn.Name = "_askedOn"; - this._askedOn.Size = new System.Drawing.Size(299, 31); + this._askedOn.Size = new System.Drawing.Size(200, 31); this._askedOn.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this._askedOn.TabIndex = 4; this._askedOn.ValueChanged += new System.EventHandler(this._askedOn_ValueChanged); @@ -221,10 +221,10 @@ private void InitializeComponent() this._askedVia.ButtonCustom2.Visible = true; this._askedVia.DisabledBackColor = System.Drawing.Color.White; this._askedVia.ForeColor = System.Drawing.Color.Black; - this._askedVia.Location = new System.Drawing.Point(1166, 238); + this._askedVia.Location = new System.Drawing.Point(936, 182); this._askedVia.Margin = new System.Windows.Forms.Padding(0); this._askedVia.Name = "_askedVia"; - this._askedVia.Size = new System.Drawing.Size(300, 31); + this._askedVia.Size = new System.Drawing.Size(201, 31); this._askedVia.TabIndex = 5; this._askedVia.ButtonCustomClick += new System.EventHandler(this._askedVia_ButtonCustomClick); this._askedVia.ButtonCustom2Click += new System.EventHandler(this._askedVia_ButtonCustom2Click); @@ -233,40 +233,40 @@ private void InitializeComponent() // _modifiedOn // this._modifiedOn.AutoSize = true; - this._modifiedOn.Location = new System.Drawing.Point(872, 890); + this._modifiedOn.Location = new System.Drawing.Point(707, 667); this._modifiedOn.Margin = new System.Windows.Forms.Padding(0); this._modifiedOn.Name = "_modifiedOn"; - this._modifiedOn.Size = new System.Drawing.Size(594, 26); + this._modifiedOn.Size = new System.Drawing.Size(430, 26); this._modifiedOn.TabIndex = 11; this._modifiedOn.Text = "label4"; // // _modifiedBy // this._modifiedBy.AutoSize = true; - this._modifiedBy.Location = new System.Drawing.Point(135, 890); + this._modifiedBy.Location = new System.Drawing.Point(135, 667); this._modifiedBy.Margin = new System.Windows.Forms.Padding(0); this._modifiedBy.Name = "_modifiedBy"; - this._modifiedBy.Size = new System.Drawing.Size(594, 26); + this._modifiedBy.Size = new System.Drawing.Size(429, 26); this._modifiedBy.TabIndex = 10; this._modifiedBy.Text = "label3"; // // _createdOn // this._createdOn.AutoSize = true; - this._createdOn.Location = new System.Drawing.Point(872, 850); + this._createdOn.Location = new System.Drawing.Point(707, 627); this._createdOn.Margin = new System.Windows.Forms.Padding(0); this._createdOn.Name = "_createdOn"; - this._createdOn.Size = new System.Drawing.Size(594, 26); + this._createdOn.Size = new System.Drawing.Size(430, 26); this._createdOn.TabIndex = 9; this._createdOn.Text = "label2"; // // _createdBy // this._createdBy.AutoSize = true; - this._createdBy.Location = new System.Drawing.Point(135, 850); + this._createdBy.Location = new System.Drawing.Point(135, 627); this._createdBy.Margin = new System.Windows.Forms.Padding(0); this._createdBy.Name = "_createdBy"; - this._createdBy.Size = new System.Drawing.Size(594, 26); + this._createdBy.Size = new System.Drawing.Size(429, 26); this._createdBy.TabIndex = 8; this._createdBy.Text = "label1"; // @@ -276,7 +276,7 @@ private void InitializeComponent() this._text.Location = new System.Drawing.Point(135, 68); this._text.Margin = new System.Windows.Forms.Padding(0); this._text.Name = "_text"; - this._text.Size = new System.Drawing.Size(1331, 156); + this._text.Size = new System.Drawing.Size(1002, 100); this._text.TabIndex = 2; this._text.Text = ""; this._text.TextChanged += new System.EventHandler(this._text_TextChanged); @@ -302,13 +302,13 @@ private void InitializeComponent() this._answers.ControlBox.CloseBox}); this._answers.Controls.Add(this.superTabControlPanel1); this._answers.ForeColor = System.Drawing.Color.Black; - this._answers.Location = new System.Drawing.Point(135, 292); + this._answers.Location = new System.Drawing.Point(135, 236); this._answers.Margin = new System.Windows.Forms.Padding(0); this._answers.Name = "_answers"; this._answers.ReorderTabsEnabled = false; this._answers.SelectedTabFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold); this._answers.SelectedTabIndex = 0; - this._answers.Size = new System.Drawing.Size(1331, 496); + this._answers.Size = new System.Drawing.Size(1002, 329); this._answers.TabFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this._answers.TabIndex = 6; this._answers.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { @@ -322,7 +322,7 @@ private void InitializeComponent() this.superTabControlPanel1.Location = new System.Drawing.Point(0, 0); this.superTabControlPanel1.Margin = new System.Windows.Forms.Padding(6); this.superTabControlPanel1.Name = "superTabControlPanel1"; - this.superTabControlPanel1.Size = new System.Drawing.Size(1331, 496); + this.superTabControlPanel1.Size = new System.Drawing.Size(1002, 329); this.superTabControlPanel1.TabIndex = 1; // // _addAnswer @@ -526,7 +526,7 @@ private void InitializeComponent() this.Controls.Add(this.layoutControl1); this.Margin = new System.Windows.Forms.Padding(6); this.Name = "AnnotationControl"; - this.Size = new System.Drawing.Size(1474, 923); + this.Size = new System.Drawing.Size(1145, 701); this.layoutControl1.ResumeLayout(false); this.layoutControl1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this._askedOn)).EndInit(); diff --git a/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.cs b/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.cs index 9f7f4569..f898c28a 100644 --- a/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.cs +++ b/Studio/ThreatsManager.Quality.WinForms/Annotations/AnnotationControl.cs @@ -98,7 +98,7 @@ public Annotation Annotation _askedViaContainer.Visible = true; _answeredContainer.Visible = true; _answersContainer.Visible = true; - _textContainer.Height = 50; + _textContainer.Height = 25; } else { diff --git a/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.Designer.cs b/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.Designer.cs index 9acd2b20..1a012547 100644 --- a/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.Designer.cs +++ b/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.Designer.cs @@ -44,18 +44,20 @@ private void InitializeComponent() this.panel1.Controls.Add(this._cancel); this.panel1.Controls.Add(this._ok); this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom; - this.panel1.Location = new System.Drawing.Point(0, 404); + this.panel1.Location = new System.Drawing.Point(0, 808); + this.panel1.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6); this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(800, 46); + this.panel1.Size = new System.Drawing.Size(1600, 92); this.panel1.TabIndex = 2; // // _cancel // this._cancel.Anchor = System.Windows.Forms.AnchorStyles.Bottom; this._cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this._cancel.Location = new System.Drawing.Point(403, 11); + this._cancel.Location = new System.Drawing.Point(806, 22); + this._cancel.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6); this._cancel.Name = "_cancel"; - this._cancel.Size = new System.Drawing.Size(75, 23); + this._cancel.Size = new System.Drawing.Size(150, 46); this._cancel.TabIndex = 1; this._cancel.Text = "Cancel"; this._cancel.UseVisualStyleBackColor = true; @@ -65,9 +67,10 @@ private void InitializeComponent() // this._ok.Anchor = System.Windows.Forms.AnchorStyles.Bottom; this._ok.DialogResult = System.Windows.Forms.DialogResult.OK; - this._ok.Location = new System.Drawing.Point(322, 11); + this._ok.Location = new System.Drawing.Point(644, 22); + this._ok.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6); this._ok.Name = "_ok"; - this._ok.Size = new System.Drawing.Size(75, 23); + this._ok.Size = new System.Drawing.Size(150, 46); this._ok.TabIndex = 0; this._ok.Text = "OK"; this._ok.UseVisualStyleBackColor = true; @@ -78,18 +81,20 @@ private void InitializeComponent() this._annotation.BackColor = System.Drawing.Color.White; this._annotation.Dock = System.Windows.Forms.DockStyle.Fill; this._annotation.Location = new System.Drawing.Point(0, 0); + this._annotation.Margin = new System.Windows.Forms.Padding(12, 12, 12, 12); this._annotation.Name = "_annotation"; - this._annotation.Size = new System.Drawing.Size(800, 404); + this._annotation.Size = new System.Drawing.Size(1600, 808); this._annotation.TabIndex = 3; // // AnnotationDialog // - this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); + this.AutoScaleDimensions = new System.Drawing.SizeF(192F, 192F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; this.CancelButton = this._cancel; - this.ClientSize = new System.Drawing.Size(800, 450); + this.ClientSize = new System.Drawing.Size(1600, 900); this.Controls.Add(this._annotation); this.Controls.Add(this.panel1); + this.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6); this.MinimizeBox = false; this.Name = "AnnotationDialog"; this.ShowIcon = false; diff --git a/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.cs b/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.cs index 793d451e..9a5d05a8 100644 --- a/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.cs +++ b/Studio/ThreatsManager.Quality.WinForms/Dialogs/AnnotationDialog.cs @@ -56,6 +56,8 @@ public AnnotationDialog([NotNull] object obj, [NotNull] Annotation annotation, b _cancel.Text = "Delete"; _ok.Text = "Close"; } + + _annotation.Refresh(); } public Annotation Annotation => _annotation.Annotation; diff --git a/Studio/ThreatsManager.Quality.WinForms/ExtensionsContainer.cs b/Studio/ThreatsManager.Quality.WinForms/ExtensionsContainer.cs index da66a713..2c78d77f 100644 --- a/Studio/ThreatsManager.Quality.WinForms/ExtensionsContainer.cs +++ b/Studio/ThreatsManager.Quality.WinForms/ExtensionsContainer.cs @@ -1,3 +1,3 @@ using ThreatsManager.Interfaces; -[assembly: ExtensionsContainer("2.2.1")] \ No newline at end of file +[assembly: ExtensionsContainer("2.2.2")] \ No newline at end of file diff --git a/Studio/ThreatsManager.Quality.WinForms/Panels/QualityDashboard/Dashboard.CustomRibbonExtension.cs b/Studio/ThreatsManager.Quality.WinForms/Panels/QualityDashboard/Dashboard.CustomRibbonExtension.cs index 97c79d03..2d09f5e6 100644 --- a/Studio/ThreatsManager.Quality.WinForms/Panels/QualityDashboard/Dashboard.CustomRibbonExtension.cs +++ b/Studio/ThreatsManager.Quality.WinForms/Panels/QualityDashboard/Dashboard.CustomRibbonExtension.cs @@ -433,10 +433,13 @@ private void AddFooters([NotNull] PdfDocument doc, [NotNull] PdfStandardFont fon } } - private SizeF WriteText([NotNull] PdfPage page, [Required] string text, + private SizeF WriteText([NotNull] PdfPage page, string text, PdfStandardFont font, float x, float y, PdfBrush brush = null, bool alignRight = false, float maxWidth = 0, bool wordWrap = true) { + if (string.IsNullOrWhiteSpace(text)) + return SizeF.Empty; + if (maxWidth == 0) maxWidth = page.Graphics.ClientSize.Width; var format = new PdfStringFormat(); diff --git a/Studio/ThreatsManager.Utilities.WinForms/ItemEditor.cs b/Studio/ThreatsManager.Utilities.WinForms/ItemEditor.cs index 81e67ed8..a277553f 100644 --- a/Studio/ThreatsManager.Utilities.WinForms/ItemEditor.cs +++ b/Studio/ThreatsManager.Utilities.WinForms/ItemEditor.cs @@ -405,6 +405,15 @@ private void DeregisterCurrentEventHandlers() _threatEventMenuDefinition.MenuClicked -= OnThreatEventMenuClicked; } + if (_item is IVulnerabilitiesContainer vulnerabilitiesContainer) + { + vulnerabilitiesContainer.VulnerabilityAdded -= VulnerabilityAdded; + vulnerabilitiesContainer.VulnerabilityRemoved -= VulnerabilityRemoved; + + if (_vulnerabilityMenuDefinition != null) + _vulnerabilityMenuDefinition.MenuClicked -= OnVulnerabilityMenuClicked; + } + if (_item is IThreatModel model) { model.ContributorAdded -= ContributorAdded; diff --git a/Studio/ThreatsManager.Utilities.WinForms/Properties/AssemblyInfo.cs b/Studio/ThreatsManager.Utilities.WinForms/Properties/AssemblyInfo.cs index abb264a3..0e1ad4c7 100644 --- a/Studio/ThreatsManager.Utilities.WinForms/Properties/AssemblyInfo.cs +++ b/Studio/ThreatsManager.Utilities.WinForms/Properties/AssemblyInfo.cs @@ -27,8 +27,8 @@ // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("2.2.1.0")] -[assembly: AssemblyFileVersion("2.2.1.0")] +[assembly: AssemblyVersion("2.2.2.0")] +[assembly: AssemblyFileVersion("2.2.2.0")] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("8da52fe7-e3e4-44bb-85e5-e81a26108155")] \ No newline at end of file diff --git a/Studio/ThreatsManager/App.config b/Studio/ThreatsManager/App.config index e936548b..3e93509d 100644 --- a/Studio/ThreatsManager/App.config +++ b/Studio/ThreatsManager/App.config @@ -1,7 +1,7 @@  -
+
@@ -67,7 +67,7 @@ - + @@ -75,15 +75,15 @@ - + - + - + diff --git a/Studio/ThreatsManager/Dialogs/CertificateSelectionDialog.cs b/Studio/ThreatsManager/Dialogs/CertificateSelectionDialog.cs index 2b8ae688..791d906d 100644 --- a/Studio/ThreatsManager/Dialogs/CertificateSelectionDialog.cs +++ b/Studio/ThreatsManager/Dialogs/CertificateSelectionDialog.cs @@ -2,6 +2,7 @@ using System.IO; using System.Linq; using System.Reflection; +using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.Windows.Forms; using ThreatsManager.Engine.Config; @@ -38,24 +39,45 @@ public CertificateConfig Certificate private void _selectFromStore_Click(object sender, EventArgs e) { - if (Enum.TryParse((string) _storeName.SelectedItem, out var storeName) && - Enum.TryParse((string) _storeLocation.SelectedItem, out var storeLocation)) + if (Enum.TryParse((string)_storeName.SelectedItem, out var storeName) && + Enum.TryParse((string)_storeLocation.SelectedItem, out var storeLocation)) { - X509Store store = new X509Store(storeName, storeLocation); - store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); - - X509Certificate2Collection found = store.Certificates - .Find(X509FindType.FindByApplicationPolicy, "1.3.6.1.5.5.7.3.3", false) - .Find(X509FindType.FindByKeyUsage, X509KeyUsageFlags.DigitalSignature, false) - .Find(X509FindType.FindByTimeValid, DateTime.Now, false); - X509Certificate2Collection selected = X509Certificate2UI.SelectFromCollection(found, - "Certificate to be trusted", - "Select a certificate from the following list, to trust the Extensions signed with that certificate.", - X509SelectionFlag.SingleSelection); - - var certificate = selected.OfType().FirstOrDefault(); - if (certificate != null) - Certificate = new CertificateConfig(certificate); + X509Store store = null; + + try + { + store = new X509Store(storeName, storeLocation); + store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); + } + catch (CryptographicException) + { + MessageBox.Show(this, "The selected store cannot be opened. Please select a different store.", + "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + store = null; + } + + if (store != null) + { + try + { + X509Certificate2Collection found = store.Certificates + .Find(X509FindType.FindByApplicationPolicy, "1.3.6.1.5.5.7.3.3", false) + .Find(X509FindType.FindByKeyUsage, X509KeyUsageFlags.DigitalSignature, false) + .Find(X509FindType.FindByTimeValid, DateTime.Now, false); + X509Certificate2Collection selected = X509Certificate2UI.SelectFromCollection(found, + "Certificate to be trusted", + "Select a certificate from the following list, to trust the Extensions signed with that certificate.", + X509SelectionFlag.SingleSelection); + + var certificate = selected.OfType().FirstOrDefault(); + if (certificate != null) + Certificate = new CertificateConfig(certificate); + } + finally + { + store.Close(); + } + } } } diff --git a/Studio/ThreatsManager/MainForm.Files.cs b/Studio/ThreatsManager/MainForm.Files.cs index 05db31a4..31356a41 100644 --- a/Studio/ThreatsManager/MainForm.Files.cs +++ b/Studio/ThreatsManager/MainForm.Files.cs @@ -766,7 +766,7 @@ private void OnTypeNotFound(string assemblyName, string typeName) { _missingTypes.Add(name); var parts = typeName.Split('.'); - ShowDesktopAlert($"Document uses type {parts.Last()} from {assemblyName}, which is unknown.\nThe document will be loaded but some information may be missing.", true); + ShowDesktopAlert($"Document uses type {parts.Last()} from {assemblyName}, which is unknown.
The document will be loaded but some information may be lost.

IMPORTANT: if you save the file, the missing information might be lost forever!", true); } } #endregion diff --git a/Studio/ThreatsManager/Portable.config b/Studio/ThreatsManager/Portable.config index 407519f8..b625909a 100644 --- a/Studio/ThreatsManager/Portable.config +++ b/Studio/ThreatsManager/Portable.config @@ -1,7 +1,7 @@  -
+
@@ -66,7 +66,7 @@ - + @@ -74,15 +74,15 @@ - + - + - + diff --git a/Studio/ThreatsManager/Properties/Resources.Designer.cs b/Studio/ThreatsManager/Properties/Resources.Designer.cs index 21a1ec9a..c0cec592 100644 --- a/Studio/ThreatsManager/Properties/Resources.Designer.cs +++ b/Studio/ThreatsManager/Properties/Resources.Designer.cs @@ -599,7 +599,9 @@ internal static string ResetParentChild { } /// - /// Looks up a localized string similar to Threats Manager Studio is reaching the maximum amount of available system resources.\nTo avoid crashes, it is recommended to save the document, close Threats Manager Studio and open a new instance.\nThis message will not be repeated.. + /// Looks up a localized string similar to Threats Manager Studio is reaching the maximum amount of available system resources. + ///To avoid crashes, it is recommended to save the document, close Threats Manager Studio and open a new instance. + ///This message will not be repeated.. /// internal static string ResourcesGuard_ThresholdReached { get { diff --git a/Studio/ThreatsManager/Properties/Resources.resx b/Studio/ThreatsManager/Properties/Resources.resx index 30689bc4..d5e6d1a6 100644 --- a/Studio/ThreatsManager/Properties/Resources.resx +++ b/Studio/ThreatsManager/Properties/Resources.resx @@ -420,7 +420,9 @@ and this is even more true for constructive criticism. It is not possible to write the User Dictionary. If you have configured Ransomware Protection, please mark the Threats Manager Studio as trusted. - Threats Manager Studio is reaching the maximum amount of available system resources.\nTo avoid crashes, it is recommended to save the document, close Threats Manager Studio and open a new instance.\nThis message will not be repeated. + Threats Manager Studio is reaching the maximum amount of available system resources. +To avoid crashes, it is recommended to save the document, close Threats Manager Studio and open a new instance. +This message will not be repeated. ..\Resources\redo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/Studio/ThreatsManager/SolutionInfo.cs b/Studio/ThreatsManager/SolutionInfo.cs index ed398445..d4ab9683 100644 --- a/Studio/ThreatsManager/SolutionInfo.cs +++ b/Studio/ThreatsManager/SolutionInfo.cs @@ -18,5 +18,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("2.2.1.0")] -[assembly: AssemblyFileVersion("2.2.1.0")] \ No newline at end of file +[assembly: AssemblyVersion("2.2.2.0")] +[assembly: AssemblyFileVersion("2.2.2.0")] \ No newline at end of file diff --git a/Studio/ThreatsManager/ThreatsManager.csproj b/Studio/ThreatsManager/ThreatsManager.csproj index 6814c96b..869a5801 100644 --- a/Studio/ThreatsManager/ThreatsManager.csproj +++ b/Studio/ThreatsManager/ThreatsManager.csproj @@ -338,6 +338,7 @@ ExtensionConfig.cs + Designer SecureTextBox.cs diff --git a/Studio/ThreatsManager/app.manifest b/Studio/ThreatsManager/app.manifest index fac2f23b..a24af426 100644 --- a/Studio/ThreatsManager/app.manifest +++ b/Studio/ThreatsManager/app.manifest @@ -1,6 +1,6 @@  - +