Complete API surface of the Beep.Skia.Security assembly: 29 public types with their documented members. Follow the family guide for usage patterns.

Types in this assembly

AssetCategory (enum)

AssetNode (class)

MemberKindDescription
string AssetNamePropertyGets or sets the asset name.
AssetCategory CategoryPropertyGets or sets the category.
Criticality CriticalityPropertyGets or sets the criticality.
AssetNode()MethodInitializes a new instance of the AssetNode class.

Confidence (enum)

ControlNode (class)

MemberKindDescription
string ControlNamePropertyGets or sets the control name.
ControlType ControlTypePropertyGets or sets the control type.
ControlStatus StatusPropertyGets or sets the status.
ControlNode()MethodInitializes a new instance of the ControlNode class.

ControlStatus (enum)

ControlType (enum)

Criticality (enum)

DreadCalculator (class)

Computes DREAD scores from threat severity and likelihood.

MemberKindDescription
static DreadScore Calculate(ThreatNode threat)MethodComputes a DREAD score for a threat node.
static DreadScore Calculate(Severity severity, Likelihood likelihood)MethodComputes a DREAD score from severity and likelihood ratings.
static DreadScore Calculate(string severity, string likelihood)MethodComputes a DREAD score from text values (e.g., STRIDE analyzer output). Unknown values fall back to Medium/Possible.
static string RiskLevel(double average)MethodMaps an average DREAD rating to a risk level.

DreadRating (enum)

DREAD rating level.

DreadScore (class)

DREAD risk score (Damage, Reproducibility, Exploitability, Affected users, Discoverability).

MemberKindDescription
DreadRating DamagePropertyGets or sets the damage.
DreadRating ReproducibilityPropertyGets or sets the reproducibility.
DreadRating ExploitabilityPropertyGets or sets the exploitability.
DreadRating AffectedUsersPropertyGets or sets the affected users.
DreadRating DiscoverabilityPropertyGets or sets the discoverability.
double AveragePropertyAverage rating (1.0 - 3.0).
string RiskLevelPropertyRisk level derived from the average (Low / Medium / High).
override string ToString()MethodGets or sets the to string.

FindingNode (class)

MemberKindDescription
string TitlePropertyGets or sets the title.
FindingType TypePropertyGets or sets the type.
Confidence ConfidencePropertyGets or sets the confidence.
FindingNode()MethodInitializes a new instance of the FindingNode class.

FindingType (enum)

IncidentNode (class)

MemberKindDescription
string IncidentIdPropertyGets or sets the incident id.
IncidentStatus StatusPropertyGets or sets the status.
DateTime DetectedOnPropertyGets or sets the detected on.
Confidence ConfidencePropertyGets or sets the confidence.
IncidentNode()MethodInitializes a new instance of the IncidentNode class.

IncidentStatus (enum)

Likelihood (enum)

LinkStyle (enum)

MitreAttackLibrary (class)

A compact MITRE ATT&CK technique library with STRIDE category mapping, used to enrich threat models with adversary techniques.

MemberKindDescription
static IReadOnlyList<MitreTechnique> TechniquesPropertyAll techniques in the library.
static IEnumerable<string> TacticsPropertyDistinct tactic names present in the library.
static IReadOnlyList<MitreTechnique> ForStrideCategory(StrideAnalyzer.StrideCategory category)MethodGets techniques relevant to a STRIDE category.
static MitreTechnique? Find(string id)MethodFinds a technique by id (case-insensitive), e.g., "T1078".

MitreTechnique (class)

A MITRE ATT&amp;CK technique entry.

MemberKindDescription
string IdPropertyGets or sets the id.
string NamePropertyGets or sets the name.
string TacticPropertyGets or sets the tactic.
override string ToString()MethodGets or sets the to string.

PolicyNode (class)

MemberKindDescription
string PolicyNamePropertyGets or sets the policy name.
string VersionPropertyGets or sets the version.
PolicyStatus StatusPropertyGets or sets the status.
PolicyNode()MethodInitializes a new instance of the PolicyNode class.

PolicyStatus (enum)

RiskAssessmentNode (class)

MemberKindDescription
string AssessmentNamePropertyGets or sets the assessment name.
double RiskScorePropertyGets or sets the risk score.
DateTime AssessedOnPropertyGets or sets the assessed on.
RiskAssessmentNode()MethodInitializes a new instance of the RiskAssessmentNode class.

SecurityControl (class)

MemberKindDescription
SKColor BackgroundColorPropertyGets or sets the background color.
SKColor BorderColorPropertyGets or sets the border color.
float BorderThicknessPropertyGets or sets the border thickness.
int InPortCountPropertyGets or sets the in port count.
int OutPortCountPropertyGets or sets the out port count.

Severity (enum)

StrideAnalyzer (class)

Analyzes a security diagram using the STRIDE threat modeling methodology. Auto-generates threat nodes per asset based on STRIDE categories.

MemberKindDescription
List<ThreatResult> ThreatsPropertyGets or sets the threats.
void Analyze(IReadOnlyList<SkiaComponent> components)MethodRuns STRIDE analysis on the given components.
static int CalculateDreadScore(int damage, int reproducibility, int exploitability, int affectedUsers, int discoverability)MethodCalculates a DREAD risk score (0-15) for a given threat.

StrideCategory (enum)

ThreatNode (class)

MemberKindDescription
string ThreatNamePropertyGets or sets the threat name.
Severity SeverityPropertyGets or sets the severity.
Likelihood LikelihoodPropertyGets or sets the likelihood.
ThreatNode()MethodInitializes a new instance of the ThreatNode class.

ThreatResult (class)

VulnerabilityNode (class)

MemberKindDescription
string VulnIdPropertyGets or sets the vuln id.
Severity SeverityPropertyGets or sets the severity.
double CvssPropertyGets or sets the cvss.
string AffectedAssetPropertyGets or sets the affected asset.
VulnerabilityNode()MethodInitializes a new instance of the VulnerabilityNode class.