diff --git a/src/api/core/ciphers.rs b/src/api/core/ciphers.rs index 537a0c15..7907cd76 100644 --- a/src/api/core/ciphers.rs +++ b/src/api/core/ciphers.rs @@ -208,6 +208,7 @@ pub struct CipherData { // Folder id is not included in import folder_id: Option, // TODO: Some of these might appear all the time, no need for Option + #[serde(alias = "organizationID")] pub organization_id: Option, key: Option, @@ -286,6 +287,10 @@ async fn post_ciphers_create( if data.cipher.organization_id.is_some() && data.collection_ids.is_empty() { err!("You must select at least one collection."); } + // reverse sanity check to prevent corruptions + if !data.collection_ids.is_empty() && data.cipher.organization_id.is_none() { + err!("The client has not provided an organization id!"); + } // This check is usually only needed in update_cipher_from_data(), but we // need it here as well to avoid creating an empty cipher in the call to