Skip to content

IssuedCertificateRow

Class in Oadm.Sdk.Client.Controls · Oadm.Sdk.Client.dll

One row of the list of issued certificates (texts for the grid; the server’s row in IssuedCertificateRow.Source).

public sealed class IssuedCertificateRow
IssuedCertificateRow(IssuedCertificateInfo source)

One row of the list of issued certificates (texts for the grid; the server’s row in IssuedCertificateRow.Source).

CertificateAuthorityKind? AuthorityKind { get; }

The row’s kind of CA; null for a row that is no CA.

IReadOnlyList<string> Badges { get; }

The Type column: what the row is, as badges. A CA: Root CA or Intermediate CA only (decision 2026-10-26); a server’s certificate: Server; one made here: its use and Signed or Imported; a device certificate: its use.

bool CanDelete { get; }

Delete can take it (decision 2026-10-26: Delete is the only action): every device certificate, one imported here that no server uses (or that ended), one created or signed here that no server policy shows, an ended server certificate. CAs are deleted in their own list. The server checks again.

int? DaysLeft { get; }

Whole days until the end (0 on the last day); null without IssuedCertificateRow.NowUtc or after the end.

string? Detail { get; }

The second line of the name: the key and the issuer (“RSA 4096 · issued by OADM Root CA SERVER01”; a root CA its key only; a row without key text “Issued by …”); null when there is nothing to say.

string Device { get; }

The device’s address; for a device OADM no longer manages its serial, “B8A44F631339 (removed)”.

string? GroupTitle { get; init; }

The group header of the row’s group (“Device certificates · 60,000”); null without groups.

bool HasDetail { get; }

IssuedCertificateRow.Detail has text.

bool HasKey { get; }

OADM holds the key: PKCS#12 can be exported.

bool HasMoreStates { get; }

IssuedCertificateRow.MoreStates has entries.

bool HasStateBadge { get; }

The state needs attention: everything but a plain valid certificate.

bool IsCa { get; }

A CA row (decision 2026-10-26: every CA can be deleted in its own list; the server refuses one a policy names).

bool IsCertificate { get; }

A row that is no CA: Export with its key and Delete belong to these.

bool IsError { get; }

Expired, revoked (a server before this list hid them) or a CA row that cannot be read: red.

bool IsNeutral { get; }

Replaced (a server before OADM 4.5): grey.

bool IsOk { get; }

Valid: green check.

bool IsRootCa { get; }

A CA row that is a root CA (it can be installed in an operating system’s trusted root store).

bool IsWarning { get; }

Expires soon: amber.

string IssuedBy { get; }

The CA that issued it; “Task” or “EST” from a server that does not say.

string Issuer { get; }

The Issuer column: the CA that issued it; “Self-signed” for a root CA; “-” when unknown.

string Key { get; }

The row’s id: the serial number of a device certificate, else IssuedCertificateInfo.Id.

string KeyType { get; }

The Key column: “RSA 4096”, “ECC P-256”, “No key” (a CA certificate without its key); “-” when unknown.

IReadOnlyList<IssuedCertificateStatus> MoreStates { get; init; }

Statuses the page adds below the state (the OADM CA: where it is trusted); empty for most rows.

string Name { get; }

The certificate’s name, or the device of a device certificate (the first column).

DateTime? NowUtc { get; init; }

The time the row was read (the days left of IssuedCertificateRow.StateText); null: the state alone.

string SerialNumber { get; }

“7D FD 05 …” (pairs, like the certificate window).

IssuedCertificateInfo Source { get; }

The row as the server sent it.

string State { get; }

“Valid”, “Expires soon”, “Expired” (“Revoked”, “Replaced” only from a server before this list hid them); “Cannot be read” for a CA row that cannot be read.

string StateText { get; }

The badge below the date of Valid until, one line: “Expires in 12 days” when it ends within its Expiry warning days, “Expired”, “Cannot be read”; a valid certificate has none (IssuedCertificateRow.HasStateBadge).

string? StateTip { get; }

“Certificate revoked on 2026-11-02 (Key compromised) by admin” for a revoked one; null otherwise.

string Use { get; }

“HTTPS”, “IEEE 802.1X”, “MQTT”, “RTSPS”, “Server”, “CA”, “Other”.

string UsedBy { get; }

The device it is installed on, “802.1X server”, “EST server”; “-” when nothing uses it.

IReadOnlyList<string> UsedByBadges { get; }

The Used by column as badges (a CA’s groups, a server certificate’s server); empty: IssuedCertificateRow.UsedByText.

string? UsedByText { get; }

The Used by column as text (the device, “-”) when there are no badges; null with badges.

string? UsedByTip { get; }

The Used by cell’s tooltip: every use, one per line (“802.1X: OADM CA (…)”, “Issuing: HTTPS, …”); null for “-”.

IReadOnlyList<string> UsedIn { get; }

The Used in column of a CA list (IssuedCertificateListViewModel.ShowsUsedIn): the names of the policies that use the CA, at most IssuedCertificateTexts.UsedInShown as badges, then “+N”; empty for none.

string? UsedInTip { get; }

The Used in cell’s tooltip: every policy, one per line; null for none.

string ValidFrom { get; }

Start of validity, “2026-10-24”.

string ValidUntil { get; }

End of validity, “2027-10-24”; “-” for a CA row that cannot be read.