pub struct JoinStatus {
pub configured_realms: Vec<String>,
pub keytab_principal: Option<String>,
pub keytab_error: Option<String>,
pub credential_valid: Option<bool>,
pub credential_error: Option<String>,
pub sssd_status: Option<String>,
}Expand description
Layered answer to “is this device properly joined to AD?”.
Layers 1–3 each prove strictly more than the previous:
configured_realms— realmd/SSSD say we’re joined (realm list).keytab_principal— a machine credential exists (klist -k, root).credential_valid— the credential actually works:kinit -kagainst a throwaway cache succeeded. This is the same proofadcli testjoinperforms, and it is the strongest client-side check there is — an AD-side disabled/deleted computer object shows up here as a failure, not before.
sssd_status is an orthogonal, advisory signal — SSSD’s own
online/offline view. “Offline” usually just means the network/VPN is
down and neither proves nor disproves the join; “Online” implies the
machine credential currently works (SSSD binds LDAP with it).
Fields§
§configured_realms: Vec<String>§keytab_principal: Option<String>§keytab_error: Option<String>Why layer 2 could not be checked (typically: not root).
credential_valid: Option<bool>Some(true|false) only when a deep check ran.
credential_error: Option<String>§sssd_status: Option<String>Raw sssctl domain-status output, when it ran successfully.
Implementations§
Source§impl JoinStatus
impl JoinStatus
Sourcepub fn is_configured(&self) -> bool
pub fn is_configured(&self) -> bool
realmd/SSSD configuration claims a join.
Sourcepub fn is_properly_joined(&self) -> bool
pub fn is_properly_joined(&self) -> bool
The strongest verdict this report can support: deep-checked and the machine credential authenticated successfully.
Trait Implementations§
Source§impl Clone for JoinStatus
impl Clone for JoinStatus
Source§fn clone(&self) -> JoinStatus
fn clone(&self) -> JoinStatus
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for JoinStatus
impl Debug for JoinStatus
Source§impl Default for JoinStatus
impl Default for JoinStatus
Source§fn default() -> JoinStatus
fn default() -> JoinStatus
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for JoinStatus
impl RefUnwindSafe for JoinStatus
impl Send for JoinStatus
impl Sync for JoinStatus
impl Unpin for JoinStatus
impl UnsafeUnpin for JoinStatus
impl UnwindSafe for JoinStatus
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more