mirror of
https://github.com/kanidm/kanidm.git
synced 2025-04-24 19:25:39 +02:00
Of course I ran clippy and fmt in a subdir before, classic
This commit is contained in:
parent
404fc9fe47
commit
6b917f2683
|
@ -3,6 +3,7 @@ use super::ScimOauth2ClaimMapJoinChar;
|
|||
use super::ScimSshPublicKey;
|
||||
use crate::attribute::Attribute;
|
||||
use crate::internal::UiHint;
|
||||
use crate::v1::AccountType;
|
||||
use scim_proto::ScimEntryHeader;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde_with::{base64, formats, hex::Hex, serde_as, skip_serializing_none};
|
||||
|
@ -13,7 +14,6 @@ use tracing::debug;
|
|||
use url::Url;
|
||||
use utoipa::ToSchema;
|
||||
use uuid::Uuid;
|
||||
use crate::v1::AccountType;
|
||||
|
||||
/// A strongly typed ScimEntry that is for transmission to clients. This uses
|
||||
/// Kanidm internal strong types for values allowing direct serialisation and
|
||||
|
@ -270,7 +270,7 @@ pub struct ScimPerson {
|
|||
pub description: Option<String>,
|
||||
pub mails: Vec<ScimMail>,
|
||||
pub managed_by: Option<ScimReference>,
|
||||
pub groups: Vec<ScimReference>
|
||||
pub groups: Vec<ScimReference>,
|
||||
}
|
||||
|
||||
impl TryFrom<ScimEntryKanidm> for ScimPerson {
|
||||
|
@ -288,9 +288,14 @@ impl TryFrom<ScimEntryKanidm> for ScimPerson {
|
|||
.attr_str(&Attribute::Description)
|
||||
.map(|t| t.to_string());
|
||||
let mails = scim_entry.attr_mails().cloned().unwrap_or_default();
|
||||
let groups = scim_entry.attr_references(&Attribute::DirectMemberOf).cloned().unwrap_or(vec![]);
|
||||
let groups = scim_entry
|
||||
.attr_references(&Attribute::DirectMemberOf)
|
||||
.cloned()
|
||||
.unwrap_or(vec![]);
|
||||
|
||||
let managed_by = scim_entry.attr_reference(&Attribute::EntryManagedBy).cloned();
|
||||
let managed_by = scim_entry
|
||||
.attr_reference(&Attribute::EntryManagedBy)
|
||||
.cloned();
|
||||
|
||||
Ok(ScimPerson {
|
||||
uuid,
|
||||
|
@ -317,7 +322,7 @@ impl ScimEntryKanidm {
|
|||
} else {
|
||||
None
|
||||
}
|
||||
},
|
||||
}
|
||||
Some(sv) => {
|
||||
debug!("SCIM entry had the Attribute::Class attribute but it was not a ScimValueKanidm::ArrayString type, actual: {:?}", sv);
|
||||
None
|
||||
|
@ -325,7 +330,7 @@ impl ScimEntryKanidm {
|
|||
None => {
|
||||
debug!("SCIM entry with no classes ??");
|
||||
None
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ const ACCOUNT_ATTRIBUTES: [Attribute; 9] = [
|
|||
Attribute::Mail,
|
||||
Attribute::Class,
|
||||
Attribute::EntryManagedBy,
|
||||
Attribute::DirectMemberOf
|
||||
Attribute::DirectMemberOf,
|
||||
];
|
||||
|
||||
#[derive(Template)]
|
||||
|
@ -175,12 +175,11 @@ async fn get_accounts_info(
|
|||
Ok(accounts)
|
||||
}
|
||||
|
||||
fn scimentry_into_accountinfo(scim_entry: ScimEntryKanidm) -> Option<(ScimPerson, ScimEffectiveAccess)> {
|
||||
fn scimentry_into_accountinfo(
|
||||
scim_entry: ScimEntryKanidm,
|
||||
) -> Option<(ScimPerson, ScimEffectiveAccess)> {
|
||||
let scim_effective_access = scim_entry.ext_access_check.clone()?; // TODO: This should be an error msg.
|
||||
let account = ScimPerson::try_from(scim_entry).ok()?;
|
||||
|
||||
Some((
|
||||
account,
|
||||
scim_effective_access
|
||||
))
|
||||
Some((account, scim_effective_access))
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue