pub struct GdprService { /* private fields */ }Expand description
GDPR compliance service for data deletion.
Implementations§
Source§impl GdprService
impl GdprService
Sourcepub fn audit_log(&self) -> &Arc<DeletionAuditLog>
pub fn audit_log(&self) -> &Arc<DeletionAuditLog>
Get the audit log.
Sourcepub fn delete_from_kv(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
) -> Vec<DeletedItem>
pub fn delete_from_kv( &self, state: &AppState, subject_id: &str, search_fields: &[String], ) -> Vec<DeletedItem>
Delete data for a subject from the KV store.
Sourcepub fn delete_from_documents(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
specific_collections: Option<&[String]>,
) -> Vec<DeletedItem>
pub fn delete_from_documents( &self, state: &AppState, subject_id: &str, search_fields: &[String], specific_collections: Option<&[String]>, ) -> Vec<DeletedItem>
Delete data for a subject from document collections.
Sourcepub fn delete_from_sql(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
specific_tables: Option<&[String]>,
) -> Vec<DeletedItem>
pub fn delete_from_sql( &self, state: &AppState, subject_id: &str, search_fields: &[String], specific_tables: Option<&[String]>, ) -> Vec<DeletedItem>
Delete data for a subject from SQL tables.
Sourcepub fn delete_from_graph(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
) -> Vec<DeletedItem>
pub fn delete_from_graph( &self, state: &AppState, subject_id: &str, search_fields: &[String], ) -> Vec<DeletedItem>
Delete data for a subject from graph store.
Sourcepub fn secure_erase(&self, _state: &AppState) -> bool
pub fn secure_erase(&self, _state: &AppState) -> bool
Perform secure erase by overwriting deleted data blocks. This is a best-effort operation that overwrites data with zeros.
Sourcepub fn execute_deletion(
&self,
state: &AppState,
request: DeletionRequest,
) -> Result<DeletionCertificate, String>
pub fn execute_deletion( &self, state: &AppState, request: DeletionRequest, ) -> Result<DeletionCertificate, String>
Execute a complete deletion request.
Sourcepub fn export_from_kv(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
date_range: Option<&DateRange>,
) -> Vec<ExportedItem>
pub fn export_from_kv( &self, state: &AppState, subject_id: &str, search_fields: &[String], date_range: Option<&DateRange>, ) -> Vec<ExportedItem>
Export data for a subject from the KV store.
Sourcepub fn export_from_documents(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
specific_collections: Option<&[String]>,
date_range: Option<&DateRange>,
) -> Vec<ExportedItem>
pub fn export_from_documents( &self, state: &AppState, subject_id: &str, search_fields: &[String], specific_collections: Option<&[String]>, date_range: Option<&DateRange>, ) -> Vec<ExportedItem>
Export data for a subject from document collections.
Sourcepub fn export_from_sql(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
specific_tables: Option<&[String]>,
_date_range: Option<&DateRange>,
) -> Vec<ExportedItem>
pub fn export_from_sql( &self, state: &AppState, subject_id: &str, search_fields: &[String], specific_tables: Option<&[String]>, _date_range: Option<&DateRange>, ) -> Vec<ExportedItem>
Export data for a subject from SQL tables.
Sourcepub fn export_from_graph(
&self,
state: &AppState,
subject_id: &str,
search_fields: &[String],
) -> Vec<ExportedItem>
pub fn export_from_graph( &self, state: &AppState, subject_id: &str, search_fields: &[String], ) -> Vec<ExportedItem>
Export data for a subject from graph store.
Sourcepub fn execute_export(
&self,
state: &AppState,
request: ExportRequest,
) -> Result<ExportResponse, String>
pub fn execute_export( &self, state: &AppState, request: ExportRequest, ) -> Result<ExportResponse, String>
Execute a complete data export request (GDPR Article 20).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GdprService
impl !RefUnwindSafe for GdprService
impl Send for GdprService
impl Sync for GdprService
impl Unpin for GdprService
impl UnsafeUnpin for GdprService
impl !UnwindSafe for GdprService
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more