TestimoX

API Reference

Class

LdapServerReadable

Namespace ADPlayground.Ldap
Assembly ADPlayground
Implements
IEquatable<LdapServerReadable>
Modifiers sealed

A simplified, readable view of LDAP test results for a single server. Includes aggregate booleans, port availability and optional certificate/identity info.

Inheritance

  • Object
  • LdapServerReadable

Constructors

Methods

public LdapServerReadable <Clone>$() #
Returns: LdapServerReadable
public virtual Boolean Equals(LdapServerReadable other) #
Returns: Boolean

Parameters

obj Object requiredposition: 0
public override Int32 GetHashCode() #
Returns: Int32
public override String ToString() #
Returns: String

Properties

public String Server { get; set; } #

Server FQDN or host.

public String DomainName { get; set; } #

AD domain name this server belongs to.

public Nullable<Boolean> Ldap { get; set; } #

LDAP (389) connectivity.

public Nullable<Boolean> Ldaps { get; set; } #

LDAPS (636) connectivity.

public Nullable<Boolean> GlobalCatalogLdap { get; set; } #

Global Catalog LDAP (3268) connectivity. Null when not tested.

public Nullable<Boolean> GlobalCatalogLdaps { get; set; } #

Global Catalog LDAPS (3269) connectivity. Null when not tested.

public Boolean Healthy { get; set; } #

Indicates if all tested ports were reachable.

public IReadOnlyList<Int32> AvailablePorts { get; set; } #

Ports that were reachable.

public Nullable<Boolean> IsGC { get; set; } #

Indicates whether the tested server is a Global Catalog. Derived from DC facts when available, otherwise inferred from responsive GC ports.

public Boolean GlobalCatalogSkippedByDirectoryFacts { get; set; } #

True when Global Catalog probing was skipped because authoritative directory facts reported the server is not a GC.

public Nullable<Boolean> IsRO { get; set; } #

Indicates whether the tested server is Read-Only Domain Controller (RODC). Null when undetermined.

public String Site { get; set; } #

Active Directory site name when resolvable.

public String Identity { get; set; } #

Identity string used for search, when provided.

public Nullable<Boolean> IdentityStatus { get; set; } #

Aggregated identity search status across tested ports: false if any port reports false; true if at least one port reports true and none report false; null when not applicable.

public IReadOnlyList<Int32> IdentityAvailablePorts { get; set; } #

Ports where the identity was found.

public String ErrorMessage { get; set; } #

Concatenated unique error messages across ports (including certificate checks).

public Nullable<Boolean> LdapsBind { get; set; } #

Indicates if an LDAPS bind (certificate retrieval) succeeded on 636. Null when not attempted.

public Nullable<Boolean> GlobalCatalogLdapsBind { get; set; } #

Indicates if a Global Catalog LDAPS bind succeeded on 3269. Null when not attempted or not GC.

public String StatusPorts { get; set; } #

Overall port status summary. "OK" when all required ports are reachable (and bind succeeds for LDAPS when certificate verification is enabled), otherwise "Failed".

public String StatusDate { get; set; } #

Overall date status for certificate validity. "OK", "Failed" or "Not available".

public String StatusIdentity { get; set; } #

Identity status as a readable string. "OK", "Failed" or "Not available".

public String OperatingSystem { get; set; } #

Operating system reported on the computer object.

public String IPV4Address { get; set; } #

Primary IPv4 address.

public String IPV6Address { get; set; } #

Primary IPv6 address.

public IReadOnlyList<String> DnsForwardAddresses { get; set; } #

DNS forward-resolved IP addresses for the server.

public IReadOnlyList<LdapEndpointResult> Endpoints { get; set; } #

Per-endpoint (IP) results including reverse-DNS and RootDSE identity checks.

public Nullable<Boolean> CertificateConsistentAcrossEndpoints { get; set; } #

All endpoints present the same SSL certificate (thumbprint) across LDAPS/GC LDAPS.

public Nullable<Boolean> EndpointIdentityMatches { get; set; } #

All endpoints' RootDSE dNSHostName matches the server FQDN.

public Nullable<DateTime> X509NotBefore { get; set; } #

Earliest NotBefore among chosen certificate (prefers 636, falls back to 3269).

public Nullable<DateTime> X509NotAfter { get; set; } #

Earliest NotAfter among chosen certificate (prefers 636, falls back to 3269).

public Nullable<Int32> X509NotBeforeDays { get; set; } #

Days until NotBefore (negative means certificate not yet valid).

public Nullable<Int32> X509NotAfterDays { get; set; } #

Days until NotAfter (negative means expired).

public IReadOnlyList<String> X509DnsNameList { get; set; } #

DNS names from certificate Subject Alternative Name (when available).

public String X509Thumbprint { get; set; } #

Thumbprint of the chosen certificate.

public String X509SubjectName { get; set; } #

Subject of the chosen certificate.

public String X509Issuer { get; set; } #

Issuer of the chosen certificate.

public Nullable<Boolean> X509HasServerAuthEku { get; set; } #

Certificate has Server Authentication EKU.

public Nullable<Boolean> X509ChainBuildOk { get; set; } #

Certificate chain builds successfully to a trusted root.

public Nullable<Int32> CipherStrength { get; set; } #

TLS cipher strength reported by the session.

public String Protocol { get; set; } #

TLS protocol reported by the session.

public IReadOnlyList<String> AcceptedTlsVersions { get; set; } #

Accepted TLS versions discovered by explicit probes (e.g., "TLS 1.0", "TLS 1.1", "TLS 1.2", "TLS 1.3"). Null when not probed.

public Nullable<Boolean> AcceptsLegacyTls { get; set; } #

True when the endpoint accepts legacy TLS (1.0 or 1.1). Null when not probed.

public Nullable<Boolean> ServerNameMatchesCertificate { get; set; } #

All tested ports present certificates that include the exact FQDN (when certificates were retrieved).

public Nullable<Boolean> DomainNameMatchesCertificate { get; set; } #

All tested ports present certificates that include the domain name (when certificates were retrieved).

public String X509DnsNameStatus { get; set; } #

Optional overall status for DNS names against provided include list: "OK" or "Failed" when evaluated.

public Boolean Trusted { get; set; } #

Healthy including certificate-name compliance (see Healthy for connectivity-only health).

public LdapServerResult Raw { get; set; } #

The original detailed result.