From 00bbd04e7d163ffef5342f73ab8b5667beb9857c Mon Sep 17 00:00:00 2001 From: Bryan Frimin Date: Sun, 18 Jan 2026 08:32:37 -0800 Subject: [PATCH] Fix missing policy Signed-off-by: Bryan Frimin --- pkg/probo/data_protection_impact_assessment_service.go | 2 +- pkg/probo/policies.go | 6 ++++++ pkg/probo/processing_activity_service.go | 2 +- pkg/probo/transfer_impact_assessment_service.go | 2 +- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/pkg/probo/data_protection_impact_assessment_service.go b/pkg/probo/data_protection_impact_assessment_service.go index 01149850f..2b4e1e3ff 100644 --- a/pkg/probo/data_protection_impact_assessment_service.go +++ b/pkg/probo/data_protection_impact_assessment_service.go @@ -318,7 +318,7 @@ func (s *DataProtectionImpactAssessmentService) ExportPDF( } if len(assessments) == 0 { - return coredata.ErrResourceNotFound + return fmt.Errorf("no data protection impact assessments found: %w", coredata.ErrResourceNotFound) } organization := &coredata.Organization{} diff --git a/pkg/probo/policies.go b/pkg/probo/policies.go index 61c8721ae..22ab93861 100644 --- a/pkg/probo/policies.go +++ b/pkg/probo/policies.go @@ -93,6 +93,12 @@ var ViewerPolicy = policy.NewPolicy( policy.Allow( ActionDocumentVersionExportPDF, ActionDocumentVersionExportSignable, ActionDocumentVersionSign, ).WithSID("document-signing").When(organizationCondition), + + policy.Allow( + ActionProcessingActivityExport, + ActionDataProtectionImpactAssessmentExport, + ActionTransferImpactAssessmentExport, + ).WithSID("processing-activity-export").When(organizationCondition), ).WithDescription("Read-only probo access for organization viewers") // AuditorPolicy defines permissions for auditor role. diff --git a/pkg/probo/processing_activity_service.go b/pkg/probo/processing_activity_service.go index c323c5c5e..07d51b43b 100644 --- a/pkg/probo/processing_activity_service.go +++ b/pkg/probo/processing_activity_service.go @@ -404,7 +404,7 @@ func (s *ProcessingActivityService) ExportPDF( } if len(processingActivities) == 0 { - return coredata.ErrResourceNotFound + return fmt.Errorf("no processing activities found: %w", coredata.ErrResourceNotFound) } organization := &coredata.Organization{} diff --git a/pkg/probo/transfer_impact_assessment_service.go b/pkg/probo/transfer_impact_assessment_service.go index 954f73967..9025b7ede 100644 --- a/pkg/probo/transfer_impact_assessment_service.go +++ b/pkg/probo/transfer_impact_assessment_service.go @@ -318,7 +318,7 @@ func (s *TransferImpactAssessmentService) ExportPDF( } if len(assessments) == 0 { - return coredata.ErrResourceNotFound + return fmt.Errorf("no transfer impact assessments found: %w", coredata.ErrResourceNotFound) } organization := &coredata.Organization{}