Class SecomPresentation
- Namespace
- EncDotNet.S100.Collections.Secom
- Assembly
- EncDotNet.S100.Collections.dll
What a SECOM source presented when it was last read, and the outcome (#883), recorded on its Presentation.
public sealed record SecomPresentation : IEquatable<SecomPresentation>
- Inheritance
-
SecomPresentation
- Implements
- Inherited Members
Constructors
SecomPresentation(string, string?, string?, bool?, IReadOnlyList<string>, bool, SecomPresentationOutcome, DateTimeOffset)
What a SECOM source presented when it was last read, and the outcome (#883), recorded on its Presentation.
public SecomPresentation(string Setting, string? IdentityId, string? Presented, bool? CertificateRequested, IReadOnlyList<string> AcceptableIssuers, bool Signed, SecomPresentationOutcome Outcome, DateTimeOffset At)
Parameters
SettingstringThe source's Identity setting when it was read.
IdentityIdstringThe identity the setting resolved to, or null for none (including a default that isn't set).
PresentedstringThe MRN (or subject) of the identity presented as a client certificate or as the signer of SECOM 2.0 requests, or null when none was.
CertificateRequestedbool?True when the server asked for a client certificate during the TLS handshake; null when it isn't known (no handshake was seen).
AcceptableIssuersIReadOnlyList<string>The distinguished names of the CAs the server said it accepts client certificates from.
SignedboolTrue when the requests were SECOM 2.0 requests signed with the identity.
OutcomeSecomPresentationOutcomeWhat happened.
AtDateTimeOffsetWhen the source was read.
Properties
AcceptableIssuers
The distinguished names of the CAs the server said it accepts client certificates from.
public IReadOnlyList<string> AcceptableIssuers { get; init; }
Property Value
At
When the source was read.
public DateTimeOffset At { get; init; }
Property Value
CertificateRequested
True when the server asked for a client certificate during the TLS handshake; null when it isn't known (no handshake was seen).
public bool? CertificateRequested { get; init; }
Property Value
- bool?
Code
The SecomDiagnosticCodes code of the failure, when the read failed with one.
public string? Code { get; init; }
Property Value
IdentityId
The identity the setting resolved to, or null for none (including a default that isn't set).
public string? IdentityId { get; init; }
Property Value
Outcome
What happened.
public SecomPresentationOutcome Outcome { get; init; }
Property Value
Presented
The MRN (or subject) of the identity presented as a client certificate or as the signer of SECOM 2.0 requests, or null when none was.
public string? Presented { get; init; }
Property Value
Refusals
The identities this source presented and the service refused, oldest first.
public IReadOnlyList<SecomRefusal> Refusals { get; init; }
Property Value
ServerAnchor
The trust anchor the server's TLS certificate chains to (e.g. "MCP MCC"), when it chains to one.
public string? ServerAnchor { get; init; }
Property Value
ServerTrust
What was decided about the server's TLS certificate, when a connection got that far: why a server isn't trusted.
public SecomServerTrustOutcome? ServerTrust { get; init; }
Property Value
ServiceAsks
True when the service asks for a client certificate or a signed request: only then does the picker show SecomIdentityHints.
public bool ServiceAsks { get; }
Property Value
Setting
The source's Identity setting when it was read.
public string Setting { get; init; }
Property Value
Signed
True when the requests were SECOM 2.0 requests signed with the identity.
public bool Signed { get; init; }
Property Value
Methods
HintFor(string, SecomClientIdentity, SecomTrustAnchors)
The hint for identity (registered as id)
on this source; None unless ServiceAsks.
See Judge(string, SecomClientIdentity, SecomTrustAnchors, IReadOnlyList<string>, string?, IEnumerable<string>, string?).
public SecomIdentityHint HintFor(string id, SecomClientIdentity identity, SecomTrustAnchors anchors)
Parameters
idstringidentitySecomClientIdentityanchorsSecomTrustAnchors