ethyca-fides 2.73.2b0__py2.py3-none-any.whl → 2.76.0rc2__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/METADATA +2 -1
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/RECORD +349 -336
- fides/_version.py +3 -3
- fides/api/alembic/migrations/versions/303287c70600_migrate_resource_type_from_enum_to_.py +99 -0
- fides/api/alembic/migrations/versions/795f46f656c0_migrate_field_type_from_enum_to_string.py +61 -0
- fides/api/alembic/migrations/versions/xx_2025_10_29_1659_80d28dea3b6b_added_duplicate_group_table.py +79 -0
- fides/api/alembic/migrations/versions/xx_2025_11_05_0200_f1a2b3c4d5e6_create_staged_resource_error_table.py +82 -0
- fides/api/alembic/migrations/versions/xx_2025_11_07_1709_56fe6fad2d89_add_notice_display_order.py +47 -0
- fides/api/alembic/migrations/versions/xx_2025_11_10_1200_a1b2c3d4e5f6_add_test_datastore_to_connectiontype.py +53 -0
- fides/api/alembic/migrations/versions/xx_2025_11_11_1317_7d82c8fc4c34_store_saas_template_datasets.py +68 -0
- fides/api/alembic/migrations/versions/xx_2025_11_12_1430_b2c3d4e5f6a7_add_default_identity_definitions.py +81 -0
- fides/api/alembic/migrations/versions/xx_2025_11_25_1854_3ff6449c099e_add_index_on_providedidentity_privacy_.py +50 -0
- fides/api/api/v1/api.py +2 -0
- fides/api/api/v1/endpoints/admin.py +39 -0
- fides/api/api/v1/endpoints/connector_template_endpoints.py +167 -0
- fides/api/api/v1/endpoints/generic_overrides.py +6 -6
- fides/api/api/v1/endpoints/pre_approval_webhook_endpoints.py +5 -5
- fides/api/api/v1/endpoints/privacy_request_endpoints.py +101 -21
- fides/api/api/v1/endpoints/saas_config_endpoints.py +3 -44
- fides/api/api/v1/endpoints/storage_endpoints.py +5 -1
- fides/api/api/v1/endpoints/system.py +2 -2
- fides/api/api/v1/endpoints/user_endpoints.py +10 -4
- fides/api/db/base.py +1 -0
- fides/api/db/database.py +228 -1
- fides/api/db/seed.py +1 -1
- fides/api/email_templates/templates/external_user_welcome.html +9 -5
- fides/api/migrations/post_upgrade_index_creation.py +10 -0
- fides/api/models/connectionconfig.py +4 -1
- fides/api/models/detection_discovery/__init__.py +2 -0
- fides/api/models/detection_discovery/core.py +10 -0
- fides/api/models/detection_discovery/staged_resource_error.py +25 -0
- fides/api/models/experience_notices.py +6 -1
- fides/api/models/identity_definition.py +2 -1
- fides/api/models/location_regulation_selections.py +22 -0
- fides/api/models/manual_webhook.py +17 -6
- fides/api/models/messaging_template.py +7 -0
- fides/api/models/policy.py +3 -0
- fides/api/models/privacy_experience.py +20 -0
- fides/api/models/privacy_notice.py +45 -1
- fides/api/models/privacy_preference.py +1 -0
- fides/api/models/privacy_request/duplicate_group.py +84 -0
- fides/api/models/privacy_request/privacy_request.py +84 -9
- fides/api/models/privacy_request/provided_identity.py +22 -1
- fides/api/models/saas_template_dataset.py +63 -0
- fides/api/models/sql_models.py +150 -7
- fides/api/models/taxonomy.py +61 -1
- fides/api/oauth/roles.py +2 -0
- fides/api/schemas/connection_configuration/connection_secrets_mssql.py +5 -0
- fides/api/schemas/messaging/messaging.py +1 -0
- fides/api/schemas/oauth.py +2 -1
- fides/api/schemas/privacy_request.py +38 -6
- fides/api/schemas/saas/connector_template.py +14 -0
- fides/api/service/async_dsr/strategies/async_dsr_strategy_polling.py +19 -7
- fides/api/service/connectors/base_erasure_email_connector.py +7 -0
- fides/api/service/connectors/microsoft_sql_server_connector.py +6 -1
- fides/api/service/connectors/saas/connector_registry_service.py +45 -1
- fides/api/service/messaging/message_dispatch_service.py +44 -4
- fides/api/service/privacy_request/dsr_package/dsr_report_builder.py +3 -3
- fides/api/service/privacy_request/dsr_package/templates/attachments_index.html +41 -30
- fides/api/service/privacy_request/dsr_package/templates/clickme.html +68 -0
- fides/api/service/privacy_request/dsr_package/templates/dataset_index.html +30 -27
- fides/api/service/privacy_request/duplication_detection.py +439 -0
- fides/api/service/privacy_request/email_batch_service.py +2 -1
- fides/api/service/privacy_request/request_runner_service.py +31 -5
- fides/api/service/privacy_request/request_service.py +4 -2
- fides/api/service/saas_request/saas_request_override_factory.py +7 -2
- fides/api/task/conditional_dependencies/privacy_request/__init__.py +0 -0
- fides/api/task/conditional_dependencies/privacy_request/convenience_fields.py +155 -0
- fides/api/task/conditional_dependencies/privacy_request/privacy_request_data.py +140 -0
- fides/api/task/conditional_dependencies/privacy_request/schemas.py +212 -0
- fides/api/task/conditional_dependencies/util.py +111 -0
- fides/api/task/execute_request_tasks.py +17 -4
- fides/api/task/manual/manual_task_conditional_evaluation.py +32 -27
- fides/api/task/manual/manual_task_graph_task.py +4 -1
- fides/api/task/manual/manual_task_utils.py +63 -20
- fides/api/tasks/__init__.py +14 -0
- fides/api/util/cache.py +4 -0
- fides/api/util/connection_util.py +2 -3
- fides/api/util/fuzzy_search_utils.py +7 -1
- fides/api/util/lock.py +13 -3
- fides/api/util/logger.py +58 -4
- fides/api/util/logger_context_utils.py +3 -1
- fides/api/util/memory_watchdog.py +118 -0
- fides/api/util/saas_config_updater.py +12 -2
- fides/api/worker/__init__.py +4 -0
- fides/common/api/scope_registry.py +6 -0
- fides/common/api/v1/urn_registry.py +11 -2
- fides/config/__init__.py +8 -2
- fides/config/celery_settings.py +42 -0
- fides/service/messaging/messaging_service.py +75 -74
- fides/service/privacy_request/privacy_request_service.py +151 -19
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1099-688fa865621531cc.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1115-26393b586775ea29.js → 1115-7fd171dac1eb0e51.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1276.deb10ae2643f8463.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1438-8a33b3834d6e43f3.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{6148-59a59d5c5925344f.js → 1533-84e250d1f26e6d7d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1821-c1daa160f492aacf.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1840-359ee056e4cf6629.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1975.afe8cad52f904fcf.js → 1975.bef017bc80e2012c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2040-7eed8491ca7276ed.js → 2040-70972e15960d9afe.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/2121.321b0fd3932164d4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{2397-083fc511acb6105d.js → 2397-3434603a97f3f5d6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/2921-49ed0ed897832958.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3150-da5406b80d25fe6d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3214-90ce0a366b0f461a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3377-02bf9780fd383d94.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3615-5e2d062d684b8fa1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3655-5e1ba5dd68b5ec48.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3729-31ff8ba51491bf21.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3872-cff30ca0844fe2b1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3931-8bedde156fe83564.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{401-7c345d019bb9bcbd.js → 401-582d9970d89deefe.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/4093-7e47408c28de5375.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{4259.d1507e0db19cbed7.js → 4259.05038c9b78467244.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/4322-f6aeff6880726c83.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4339-04a715ab07122744.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4496-ccbce2459174e0d6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/454-d5c2c84f1a14e4f1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4589-c1d83c6a8dab4d30.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4809-a8f4a108a42f53ed.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4903-19c0bc07a956dfa8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4910-d990773601f794c1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5185-e7f8b81dd3dfbe0b.js → 5185-96423702fba70ced.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5258-4e308cca01d59367.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/5487-5c3501754bf027ba.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/549-1bdc3e6f3264c020.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/5505-43b9c39491b88e08.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5783-21775c232dce7af7.js → 5783-016dfcee8e49bf61.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5826-4db99ea4e5077911.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/590-be447cacf12419dd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6084-91badbc6569a0efb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6344-026cb323c1d49926.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6362-ba0e12f2fc4cad94.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{6853-de9905d28e5b19b3.js → 6853-882889659769d7b4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6882-bb1b469d7d7f5335.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6954-0dcf22a9aabe39c5.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7170-46db82bb5b55e856.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7218-2ace8c82e3e7eb74.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{7245-c9bc628d078c2170.js → 7245-1cdafb35f289861b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7630-7f75ab7b8df42eb3.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7654-2e9a8be02e41769a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{8212-393420e5a9751791.js → 8212-348ddd2b6933db70.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9014-eeae6f581158e645.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5596-29a7c8322530b7cf.js → 9195-da717d324917b049.js} +3 -3
- fides/ui-build/static/admin/_next/static/chunks/9450-b7b7bb1d755ecf57.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9676.7d029a5383595b69.js → 9676.1f395eeb9cc34968.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9826-a737a9956c1d0905.js → 9826-1078e46f3ac0b688.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9911-ece086f2230e34f0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-eb019192ce498f32.js → 404-800be6996aaa999c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-ee588a308812715d.js → _app-de4b578c904df772.js} +70 -70
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-7081e0e49f67716c.js → manual-f12020b82dd4bd1a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-a188f84239f4b2a8.js → multiple-a911b7990371704d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{add-systems-ee9df33ebd471099.js → add-systems-ad585b79953c2753.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-4f9cf087fcee87e6.js → add-vendors-bb263d394ca1c8fa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-6907c368d8611c44.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-1b02a4991201b7e4.js → [id]-c32f381af358149b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{new-a5e738a234dadc7e.js → new-6efb3c069d8b47dd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-b08abefec298ccf1.js → privacy-experience-1975c529905eea9b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-8c164c4b8310214e.js → [id]-b05331178928ab52.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-db789002d84c8829.js → new-516834e930bb0d0d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices-985717f2565f9d9d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-5cba30eba1e97e56.js → properties-2be773e08498e40c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-850afb74f4192e87.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-614af0a2c2ba966c.js → consent-b63d1e395d879b86.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-5b28f0f674ea87bd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-676177e2f3c9c2a2.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-794906929efb8e1d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-3ccbf7c0d06507b9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources-81d1b50585468fb0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-1ea0b24d306b1e67.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-d4861a4a218bb65a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/infrastructure/[monitorId]-66bd265044daf97d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/infrastructure-c9c79fa8576a4f77.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]/[systemId]-60cacc3232c2eead.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]-437bd64a3016de36.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-8349248c2da970a6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-6919a1d6cadaa46b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-b072cf25aefc98f6.js → [resourceUrn]-1a50d421897d3da1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-fd3e8817d8e6dee4.js → detection-49509414a15e8393.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-146624cf59792bf7.js → [resourceUrn]-1a1bb80b586d0c0f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-9695cc9c85592ec5.js → discovery-49de61df1e8e7fba.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datamap-c2719f5cff20c0f8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-5f88280db168083e.js → [...subfieldNames]-415015aebab60436.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-bfbcf19c28c794ae.js → [collectionName]-5accb09715b5122d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-aebecca1d8ec5f98.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-9551a82ddec9f909.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-72f8fe47beef0f09.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/[id]-3a8aa3f633528e88.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-87512616f35ec6da.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-2f1bf4eac7aa55fd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{fides-js-docs-1f4335dca5c09860.js → fides-js-docs-5235760b3e508d7d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-1343fa525a206571.js → index-8d67cd2872cb682a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-7a631df29cd0e31a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-ea3bc43cdaf273de.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-5d8632bba1b81cd4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{[id]-63b3be660fb12c0f.js → [id]-92e01822ecde8fb8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{new-d3b577962dd33266.js → new-1256cf6d3f6794e0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests-0daac00911d27617.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{[key]-720cde29f81db47f.js → [key]-2d976fe5e8ba0a3a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{new-3668866076b53016.js → new-7766ba497b863740.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers-f2880d2ed4734270.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{[id]-8063dceb32310c85.js → [id]-669f585c3458faff.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{add-template-4931c70bee62232f.js → add-template-c79e7724e4bc3899.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates-891654e8dc13965c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{notifications-93af719dab3bd053.js → notifications-40c8148244c5d347.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-1e86f3e28bd23ed6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/AntForm-9b7bd8c38f02c091.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikAntFormItem-b18a53a940cf9e19.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikControlled-6d028d7450e77578.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikField-8399083ee2cd8cc2.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/forms-0a910125cdb2b3b8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-acc90b6f7fe915cb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-bbc42026f2685438.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-fa82cffba448ccd8.js → configure-c08ca6ad21c99799.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-77c2db582f8823bc.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-bc1c289647e52c48.js → [id]-74ccea4868408e3d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-cbfaa23d96f5ed0b.js → add-property-7d9f09bfe9d44dfc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-a15a3fd0ed88f39c.js → properties-cd77bc30672bb1fa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-cc3bd9540132d5ed.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/sandbox/privacy-notices-7ce7d720107ab4b5.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-19de0024418a4924.js → [purpose_id]-ae789892343c24f5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-13ee1b331ced0846.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/[id]-ee4e43692336a330.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/new-ca51d794abfcbf25.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-ecd1dc5db8e81409.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-3b87002753b23ca5.js → domain-records-df06f7e2f668c540.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domains-aacd9d0ad47082d4.js → domains-da0c77bd510c6c51.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-3cdd0b39901190ba.js → email-templates-950b0c115bf673d8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-61076eedbfd137b9.js → locations-7e36cb4756973a9d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-b07b11d6002f8c8c.js → organization-a0e5ed486d24ccf3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/privacy-requests-3cdebafb6870d3ad.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-b7c0d3b1b754e70f.js → regulations-159aad34f1021320.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-dbd1a64090ad0946.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-59c89489fa32a4cb.js → [id]-7d042497a57a3788.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-21f1172e73dfc9f0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-e553161e6338ee48.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-7dce2916cc589c54.js → new-efc4af017723e57a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-5d5a68e555d18693.js → [id]-b152319d67372ee4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management-dba8692491f7935e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/webpack-09ca52bc7beb0b43.js +1 -0
- fides/ui-build/static/admin/_next/static/css/3d66bb57ddcb0978.css +1 -0
- fides/ui-build/static/admin/_next/static/css/a1e4be9466578ef1.css +1 -0
- fides/ui-build/static/admin/_next/static/l2vgGUHB04Fi4oEVlVMrc/_buildManifest.js +1 -0
- fides/ui-build/static/admin/add-systems/manual.html +1 -1
- fides/ui-build/static/admin/add-systems/multiple.html +1 -1
- fides/ui-build/static/admin/add-systems.html +1 -1
- fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
- fides/ui-build/static/admin/consent/configure.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
- fides/ui-build/static/admin/consent/properties.html +1 -1
- fides/ui-build/static/admin/consent/reporting.html +1 -1
- fides/ui-build/static/admin/consent.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
- fides/ui-build/static/admin/data-catalog.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/datastore/[monitorId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/datastore.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/infrastructure/[monitorId].html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/infrastructure.html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId]/[systemId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/website.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
- fides/ui-build/static/admin/data-discovery/activity.html +1 -1
- fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/detection.html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
- fides/ui-build/static/admin/datamap.html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
- fides/ui-build/static/admin/dataset/new.html +1 -1
- fides/ui-build/static/admin/dataset.html +1 -1
- fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
- fides/ui-build/static/admin/datastore-connection/new.html +1 -1
- fides/ui-build/static/admin/datastore-connection.html +1 -1
- fides/ui-build/static/admin/index.html +1 -1
- fides/ui-build/static/admin/integrations/[id].html +1 -1
- fides/ui-build/static/admin/integrations.html +1 -1
- fides/ui-build/static/admin/lib/fides-ext-gpp.js +1 -1
- fides/ui-build/static/admin/lib/fides-headless.js +1 -1
- fides/ui-build/static/admin/lib/fides-preview.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.js +2 -2
- fides/ui-build/static/admin/lib/fides.js +2 -2
- fides/ui-build/static/admin/login/[provider].html +1 -1
- fides/ui-build/static/admin/login.html +1 -1
- fides/ui-build/static/admin/new-privacy-requests.html +1 -1
- fides/ui-build/static/admin/notifications/digests/[id].html +1 -1
- fides/ui-build/static/admin/notifications/digests/new.html +1 -1
- fides/ui-build/static/admin/notifications/digests.html +1 -1
- fides/ui-build/static/admin/notifications/providers/[key].html +1 -1
- fides/ui-build/static/admin/notifications/providers/new.html +1 -1
- fides/ui-build/static/admin/notifications/providers.html +1 -1
- fides/ui-build/static/admin/notifications/templates/[id].html +1 -1
- fides/ui-build/static/admin/notifications/templates/add-template.html +1 -1
- fides/ui-build/static/admin/notifications/templates.html +1 -1
- fides/ui-build/static/admin/notifications.html +1 -1
- fides/ui-build/static/admin/poc/ant-components.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
- fides/ui-build/static/admin/poc/forms.html +1 -1
- fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
- fides/ui-build/static/admin/privacy-requests.html +1 -1
- fides/ui-build/static/admin/properties/[id].html +1 -1
- fides/ui-build/static/admin/properties/add-property.html +1 -1
- fides/ui-build/static/admin/properties.html +1 -1
- fides/ui-build/static/admin/reporting/datamap.html +1 -1
- fides/ui-build/static/admin/sandbox/privacy-notices.html +1 -1
- fides/ui-build/static/admin/settings/about/alpha.html +1 -1
- fides/ui-build/static/admin/settings/about.html +1 -1
- fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
- fides/ui-build/static/admin/settings/consent.html +1 -1
- fides/ui-build/static/admin/settings/custom-fields/[id].html +1 -1
- fides/ui-build/static/admin/settings/custom-fields/new.html +1 -1
- fides/ui-build/static/admin/settings/custom-fields.html +1 -1
- fides/ui-build/static/admin/settings/domain-records.html +1 -1
- fides/ui-build/static/admin/settings/domains.html +1 -1
- fides/ui-build/static/admin/settings/email-templates.html +1 -1
- fides/ui-build/static/admin/settings/locations.html +1 -1
- fides/ui-build/static/admin/settings/organization.html +1 -1
- fides/ui-build/static/admin/settings/privacy-requests.html +1 -1
- fides/ui-build/static/admin/settings/regulations.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id].html +1 -1
- fides/ui-build/static/admin/systems.html +1 -1
- fides/ui-build/static/admin/taxonomy.html +1 -1
- fides/ui-build/static/admin/user-management/new.html +1 -1
- fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
- fides/ui-build/static/admin/user-management.html +1 -1
- fides/api/service/privacy_request/dsr_package/templates/welcome.html +0 -66
- fides/ui-build/static/admin/_next/static/chunks/1099-31f9d973bc287df8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1316-2606e19807c08aa5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1437-8b1f6c8797c68bfd.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1467-8808ec8836e033f9.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/155-f6302d32cba4cab6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1817-2d5cf537a2992c79.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2121.1de2fa060eae34aa.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2921-34a43f2f8f5e5e69.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2962-342ad1b4ab402ded.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3377-988ac2f3a2e8d5d4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3446-f40c352c43ac950c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/346-aa3b88efb85f2e28.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3696-6f90e41a53d22920.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3700-f695f2f6b8251971.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3772-9f1713f9d5f97a10.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3873-d18e47b327445db5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3923-f0a85dc5c3684fa0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4496-4ff19366c597ec16.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4817-1f3e6ea38625d8d5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5163-e682273cd76a7d07.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5258-62d6bc19add60aa6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5279-bd6cccabdd6ca447.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/549-28537a6de666944b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5619-9b50cec521203989.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5643-3459282d296a3c59.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6277-3759894435cb8569.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6315-e2fb5ea77179a871.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6344-ca66a6e10d128179.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6419-11d67f7fd4e2f247.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6954-84789a4e4fb04eb9.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/699-8ca44b0de9fa20f0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7059-2bb7c38578549703.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7202.3febe9e89640c712.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7476-a02d970ea4d3f7d0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7488-cf92601852e3c509.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7630-a11610c2b31ab2ca.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7773-9ae233109bc64ec2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/796-e36d610066135f8c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8011-75af8b480fa114e6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8373-22b4d20e8cc06b3a.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8765-f622a35b40a7ec63.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9037-453224ba3ee65b13.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9046-d9c6498368b993d1.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9187-7438242f0d380bb0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9278-08cc704317fe535e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9330-f753636a31c4ea04.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9682-d1a3afa1394f8304.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9729-fcf6ff4e3534e4a8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9899-d6437facac926264.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9965-25621dd507e0cfd6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-9af75caefc74eaca.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices-6528eb24165aceb6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-11f1683aa15e1a62.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-32bd7a7c990e5bf6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-d60761c20382b259.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-07e7d38ce34e1e6c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-b07a0707f8c2ec0d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources-aed94957009eb3fd.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-127c114dd8f102ed.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-5aa7a9fa96160de8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]/[systemId]-899bf30dde8b3292.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]-73085f50abb775c0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-823d0dd77e66585b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-24a82e07a0008516.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datamap-3b100c44ea9e3988.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-6fbe2b584a509226.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-3d1e48f4b95d7f6b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-d3c6ecf7f29bea6e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/[id]-0a4aa42be2da0255.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-14313e441a13192c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-f139d1ce26404f30.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-b2d3d28b10a758e6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-a733e5d7c3ce9bb8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-df0c95e408c54c7e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests-aed9afd988a48acf.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers-36a0ac36062abd02.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates-a14c876b49422597.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-9cfb469de7b4aeab.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/AntForm-e715cc654fb6a5cd.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikAntFormItem-72ae299bcb6adae6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikControlled-2337f8c81a766eb0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikField-0af454f55494f6fa.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/forms-d1b90ffa996fbd89.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/table-migration-19724b9e0581b96d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-cdd3754289a28317.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-cc41ae605f2b55ae.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-6e4c535b6d614596.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-632b3ee563d070f2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/sandbox/privacy-notices-afe921f6e2a526fb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-5b6807dced8d03c5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/[id]-8634aae3259def37.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/new-2d9dcca17965dc57.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-7dce52bfc1b2652c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/privacy-requests-084a2b4431d35322.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-b72d36243a0a545c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-cfaa37a0df83674b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-56a5434969cbe9ba.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management-e6a211d8a0401086.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/webpack-c2c11809187b9f84.js +0 -1
- fides/ui-build/static/admin/_next/static/css/d41a048a166d50e4.css +0 -1
- fides/ui-build/static/admin/_next/static/css/d78390d6134d8328.css +0 -1
- fides/ui-build/static/admin/_next/static/wCNFtmYQhEDMaMPeBB4BM/_buildManifest.js +0 -1
- fides/ui-build/static/admin/poc/table-migration.html +0 -1
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.73.2b0.dist-info → ethyca_fides-2.76.0rc2.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{wCNFtmYQhEDMaMPeBB4BM → l2vgGUHB04Fi4oEVlVMrc}/_ssgManifest.js +0 -0
|
@@ -6,12 +6,13 @@ from packaging.version import parse as parse_version
|
|
|
6
6
|
from sqlalchemy.orm import Session
|
|
7
7
|
|
|
8
8
|
from fides.api.models.connectionconfig import ConnectionConfig
|
|
9
|
+
from fides.api.models.saas_template_dataset import SaasTemplateDataset
|
|
9
10
|
from fides.api.schemas.saas.connector_template import ConnectorTemplate
|
|
10
11
|
from fides.api.schemas.saas.saas_config import SaaSConfig
|
|
11
12
|
from fides.api.service.connectors.saas.connector_registry_service import (
|
|
12
13
|
ConnectorRegistry,
|
|
13
14
|
)
|
|
14
|
-
from fides.api.util.saas_util import load_config_from_string
|
|
15
|
+
from fides.api.util.saas_util import load_config_from_string, load_dataset_from_string
|
|
15
16
|
from fides.service.connection.connection_service import ConnectionService
|
|
16
17
|
from fides.service.event_audit_service import EventAuditService
|
|
17
18
|
|
|
@@ -34,9 +35,18 @@ def update_saas_configs(db: Session) -> None:
|
|
|
34
35
|
template: ConnectorTemplate = ConnectorRegistry.get_connector_template( # type: ignore
|
|
35
36
|
connector_type
|
|
36
37
|
)
|
|
38
|
+
|
|
39
|
+
# Store the original template dataset (with placeholders) instead of the modified version
|
|
40
|
+
template_dataset_json = load_dataset_from_string(template.dataset)
|
|
41
|
+
|
|
42
|
+
SaasTemplateDataset.get_or_create(
|
|
43
|
+
db=db,
|
|
44
|
+
connector_type=connector_type,
|
|
45
|
+
dataset_json=template_dataset_json,
|
|
46
|
+
)
|
|
47
|
+
|
|
37
48
|
saas_config = SaaSConfig(**load_config_from_string(template.config))
|
|
38
49
|
template_version: Version = parse_version(saas_config.version)
|
|
39
|
-
|
|
40
50
|
connection_configs: Iterable[ConnectionConfig] = ConnectionConfig.filter(
|
|
41
51
|
db=db,
|
|
42
52
|
conditions=(ConnectionConfig.saas_config["type"].astext == connector_type),
|
fides/api/worker/__init__.py
CHANGED
|
@@ -14,6 +14,8 @@ from fides.api.tasks import (
|
|
|
14
14
|
DISCOVERY_MONITORS_PROMOTION_QUEUE_NAME,
|
|
15
15
|
DSR_QUEUE_NAME,
|
|
16
16
|
MESSAGING_QUEUE_NAME,
|
|
17
|
+
PRIVACY_PREFERENCES_EXPORT_JOB_QUEUE_NAME,
|
|
18
|
+
PRIVACY_PREFERENCES_INGESTION_JOB_QUEUE_NAME,
|
|
17
19
|
PRIVACY_PREFERENCES_QUEUE_NAME,
|
|
18
20
|
celery_app,
|
|
19
21
|
)
|
|
@@ -39,6 +41,8 @@ def start_worker(
|
|
|
39
41
|
default_queue_name,
|
|
40
42
|
MESSAGING_QUEUE_NAME,
|
|
41
43
|
PRIVACY_PREFERENCES_QUEUE_NAME,
|
|
44
|
+
PRIVACY_PREFERENCES_EXPORT_JOB_QUEUE_NAME,
|
|
45
|
+
PRIVACY_PREFERENCES_INGESTION_JOB_QUEUE_NAME,
|
|
42
46
|
DSR_QUEUE_NAME,
|
|
43
47
|
CONSENT_WEBHOOK_QUEUE_NAME,
|
|
44
48
|
DISCOVERY_MONITORS_DETECTION_QUEUE_NAME,
|
|
@@ -76,6 +76,7 @@ VALIDATE = "validate"
|
|
|
76
76
|
VIEW_DATA = "view_data"
|
|
77
77
|
WEBHOOK = "webhook"
|
|
78
78
|
WORKER_STATS = "worker-stats"
|
|
79
|
+
HEAP_DUMP = "heap_dump"
|
|
79
80
|
|
|
80
81
|
ASSIGN_OWNERS = "assign_owners"
|
|
81
82
|
|
|
@@ -146,6 +147,8 @@ DATASET_TEST = f"{DATASET}:{TEST}"
|
|
|
146
147
|
|
|
147
148
|
ENCRYPTION_EXEC = f"{ENCRYPTION}:{EXEC}"
|
|
148
149
|
|
|
150
|
+
HEAP_DUMP_EXEC = f"{HEAP_DUMP}:{EXEC}"
|
|
151
|
+
|
|
149
152
|
EVALUATION_CREATE = f"{EVALUATION}:{CREATE}"
|
|
150
153
|
EVALUATION_READ = f"{EVALUATION}:{READ}"
|
|
151
154
|
EVALUATION_UPDATE = f"{EVALUATION}:{UPDATE}"
|
|
@@ -209,6 +212,7 @@ SAAS_CONFIG_READ = f"{SAAS_CONFIG}:{READ}"
|
|
|
209
212
|
|
|
210
213
|
SAAS_CONNECTION_INSTANTIATE = f"{CONNECTION}:{INSTANTIATE}"
|
|
211
214
|
CONNECTOR_TEMPLATE_REGISTER = f"{CONNECTOR_TEMPLATE}:{REGISTER}"
|
|
215
|
+
CONNECTOR_TEMPLATE_READ = f"{CONNECTOR_TEMPLATE}:{READ}"
|
|
212
216
|
|
|
213
217
|
SCOPE_READ = f"{SCOPE}:{READ}"
|
|
214
218
|
|
|
@@ -263,6 +267,7 @@ SCOPE_DOCS = {
|
|
|
263
267
|
CONNECTION_AUTHORIZE: "OAuth2 Authorization",
|
|
264
268
|
CONNECTION_TYPE_READ: "View types of connections",
|
|
265
269
|
CONNECTOR_TEMPLATE_REGISTER: "Register a connector template",
|
|
270
|
+
CONNECTOR_TEMPLATE_READ: "View connector template configurations",
|
|
266
271
|
CONSENT_READ: "Read consent preferences",
|
|
267
272
|
CONSENT_SETTINGS_READ: "Read org-wide consent settings",
|
|
268
273
|
CONSENT_SETTINGS_UPDATE: "Update org-wide consent settings",
|
|
@@ -295,6 +300,7 @@ SCOPE_DOCS = {
|
|
|
295
300
|
DATASET_READ: "View datasets",
|
|
296
301
|
DATASET_TEST: "Run a standalone privacy request test for a dataset",
|
|
297
302
|
ENCRYPTION_EXEC: "Encrypt data",
|
|
303
|
+
HEAP_DUMP_EXEC: "Execute a heap dump for memory diagnostics",
|
|
298
304
|
MESSAGING_TEMPLATE_UPDATE: "Update messaging templates",
|
|
299
305
|
EVALUATION_CREATE: "Create evaluation",
|
|
300
306
|
EVALUATION_READ: "Read evaluations",
|
|
@@ -87,6 +87,7 @@ PRIVACY_REQUEST_AUTHENTICATED = "/privacy-request/authenticated"
|
|
|
87
87
|
PRIVACY_REQUEST_BULK_FINALIZE = "/privacy-request/bulk/finalize"
|
|
88
88
|
PRIVACY_REQUEST_BULK_RETRY = "/privacy-request/bulk/retry"
|
|
89
89
|
PRIVACY_REQUEST_BULK_SOFT_DELETE = "/privacy-request/bulk/soft-delete"
|
|
90
|
+
PRIVACY_REQUEST_CANCEL = "/privacy-request/administrate/cancel"
|
|
90
91
|
PRIVACY_REQUEST_DENY = "/privacy-request/administrate/deny"
|
|
91
92
|
PRIVACY_REQUEST_SOFT_DELETE = "/privacy-request/{privacy_request_id}/soft-delete"
|
|
92
93
|
REQUEST_STATUS_LOGS = "/privacy-request/{privacy_request_id}/log"
|
|
@@ -190,13 +191,21 @@ YAML_DATASETS = YAML + CONNECTION_DATASETS
|
|
|
190
191
|
# SaaS Config URLs
|
|
191
192
|
SAAS_CONFIG_VALIDATE = CONNECTION_BY_KEY + "/validate_saas_config"
|
|
192
193
|
SAAS_CONFIG = CONNECTION_BY_KEY + "/saas_config"
|
|
193
|
-
SAAS_CONNECTOR_FROM_TEMPLATE = "/connection/instantiate/{
|
|
194
|
+
SAAS_CONNECTOR_FROM_TEMPLATE = "/connection/instantiate/{connector_template_type}"
|
|
195
|
+
|
|
196
|
+
# Connector Template URLs
|
|
197
|
+
CONNECTOR_TEMPLATES = "/connector-templates"
|
|
198
|
+
CONNECTOR_TEMPLATES_REGISTER = "/connector-templates/register"
|
|
199
|
+
CONNECTOR_TEMPLATES_CONFIG = "/connector-templates/{connector_template_type}/config"
|
|
200
|
+
CONNECTOR_TEMPLATES_DATASET = "/connector-templates/{connector_template_type}/dataset"
|
|
201
|
+
|
|
202
|
+
# Deprecated: Old connector template register URL
|
|
194
203
|
REGISTER_CONNECTOR_TEMPLATE = "/connector_template/register"
|
|
195
204
|
|
|
196
205
|
# System Connections
|
|
197
206
|
SYSTEM_CONNECTIONS = "/system/{fides_key}/connection"
|
|
198
207
|
INSTANTIATE_SYSTEM_CONNECTION = (
|
|
199
|
-
"/system/{fides_key}/connection/instantiate/{
|
|
208
|
+
"/system/{fides_key}/connection/instantiate/{connector_template_type}"
|
|
200
209
|
)
|
|
201
210
|
|
|
202
211
|
# User URLs
|
fides/config/__init__.py
CHANGED
|
@@ -19,7 +19,7 @@ from pydantic_settings import (
|
|
|
19
19
|
from fides.common.utils import echo_red
|
|
20
20
|
|
|
21
21
|
from .admin_ui_settings import AdminUISettings
|
|
22
|
-
from .celery_settings import CelerySettings
|
|
22
|
+
from .celery_settings import CelerySettings, merge_celery_environment
|
|
23
23
|
from .cli_settings import CLISettings
|
|
24
24
|
from .consent_settings import ConsentSettings
|
|
25
25
|
from .credentials_settings import merge_credentials_environment
|
|
@@ -157,6 +157,12 @@ def build_config(config_dict: Dict[str, Any]) -> FidesConfig:
|
|
|
157
157
|
config_dict = handle_deprecated_fields(config_dict)
|
|
158
158
|
config_dict = handle_deprecated_env_variables(config_dict)
|
|
159
159
|
|
|
160
|
+
# Logic for merging additional Celery environment variables before validation.
|
|
161
|
+
# This allows arbitrary Celery configuration via FIDES__CELERY__* env vars,
|
|
162
|
+
# not just the explicitly defined fields in CelerySettings.
|
|
163
|
+
# Environment variables override TOML file values.
|
|
164
|
+
config_dict["celery"] = merge_celery_environment(config_dict.get("celery", {}))
|
|
165
|
+
|
|
160
166
|
settings_map: Dict[str, Any] = {
|
|
161
167
|
"admin_ui": AdminUISettings,
|
|
162
168
|
"celery": CelerySettings,
|
|
@@ -208,7 +214,7 @@ def get_config(config_path_override: str = "", verbose: bool = False) -> FidesCo
|
|
|
208
214
|
settings = toml.load(config_path)
|
|
209
215
|
config = build_config(config_dict=settings)
|
|
210
216
|
if verbose:
|
|
211
|
-
|
|
217
|
+
log.info(f"Loaded config from: {config_path}")
|
|
212
218
|
return config
|
|
213
219
|
except FileNotFoundError:
|
|
214
220
|
pass
|
fides/config/celery_settings.py
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import json
|
|
2
|
+
import os
|
|
3
|
+
from json import JSONDecodeError
|
|
4
|
+
from typing import Any, Dict
|
|
5
|
+
|
|
1
6
|
from pydantic import Field
|
|
2
7
|
from pydantic_settings import SettingsConfigDict
|
|
3
8
|
|
|
@@ -23,3 +28,40 @@ class CelerySettings(FidesSettings):
|
|
|
23
28
|
"If False, tasks are sent to the queue.",
|
|
24
29
|
)
|
|
25
30
|
model_config = SettingsConfigDict(env_prefix=ENV_PREFIX)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def merge_celery_environment(celery_dict: Dict[str, Any]) -> Dict[str, Any]:
|
|
34
|
+
"""
|
|
35
|
+
Given a dict of config settings, merges configs which are found
|
|
36
|
+
in environment variables. Environment variable configs are treated
|
|
37
|
+
as overrides. Environment variables must use the prefix FIDES__CELERY__.
|
|
38
|
+
|
|
39
|
+
Example:
|
|
40
|
+
FIDES__CELERY__WORKER_PREFETCH_MULTIPLIER=4
|
|
41
|
+
|
|
42
|
+
Merges to:
|
|
43
|
+
{"worker_prefetch_multiplier": 4}
|
|
44
|
+
|
|
45
|
+
This allows arbitrary Celery configuration to be set via environment variables,
|
|
46
|
+
not just the explicitly defined fields in CelerySettings.
|
|
47
|
+
"""
|
|
48
|
+
for key, value in os.environ.items():
|
|
49
|
+
if key.startswith(ENV_PREFIX):
|
|
50
|
+
# Strip the prefix and convert to lowercase
|
|
51
|
+
stripped_key = key[len(ENV_PREFIX) :].lower()
|
|
52
|
+
if stripped_key:
|
|
53
|
+
# Normalize boolean strings only to preserve case-sensitive values
|
|
54
|
+
# like URLs (e.g., Redis://myhost) or passwords
|
|
55
|
+
normalized_value = value
|
|
56
|
+
if value.lower() in ("true", "false"):
|
|
57
|
+
normalized_value = value.lower()
|
|
58
|
+
|
|
59
|
+
# Use JSON parsing to handle type conversion properly
|
|
60
|
+
# This handles booleans (true/false), integers, floats, etc.
|
|
61
|
+
try:
|
|
62
|
+
celery_dict[stripped_key] = json.loads(normalized_value)
|
|
63
|
+
except (JSONDecodeError, ValueError):
|
|
64
|
+
# If JSON parsing fails, keep it as a string
|
|
65
|
+
celery_dict[stripped_key] = value
|
|
66
|
+
|
|
67
|
+
return celery_dict
|
|
@@ -2,12 +2,15 @@ import secrets
|
|
|
2
2
|
from typing import Optional, Set, Union
|
|
3
3
|
|
|
4
4
|
from loguru import logger
|
|
5
|
+
from pydantic import BaseModel
|
|
5
6
|
from sqlalchemy.orm import Session
|
|
6
7
|
|
|
7
8
|
from fides.api.common_exceptions import (
|
|
8
9
|
IdentityNotFoundException,
|
|
10
|
+
MessageDispatchException,
|
|
9
11
|
PolicyNotFoundException,
|
|
10
12
|
)
|
|
13
|
+
from fides.api.models.messaging import MessagingConfig
|
|
11
14
|
from fides.api.models.policy import Policy
|
|
12
15
|
from fides.api.models.privacy_request import (
|
|
13
16
|
ConsentRequest,
|
|
@@ -29,15 +32,22 @@ from fides.api.schemas.policy import ActionType
|
|
|
29
32
|
from fides.api.schemas.redis_cache import Identity
|
|
30
33
|
from fides.api.service.messaging.message_dispatch_service import (
|
|
31
34
|
EMAIL_JOIN_STRING,
|
|
32
|
-
dispatch_message,
|
|
33
35
|
dispatch_message_task,
|
|
36
|
+
get_email_messaging_config_service_type,
|
|
34
37
|
message_send_enabled,
|
|
35
38
|
)
|
|
36
39
|
from fides.api.tasks import MESSAGING_QUEUE_NAME
|
|
37
|
-
from fides.config import FidesConfig
|
|
40
|
+
from fides.config import FidesConfig
|
|
38
41
|
from fides.config.config_proxy import ConfigProxy
|
|
39
42
|
|
|
40
43
|
|
|
44
|
+
class MessageDispatchParams(BaseModel):
|
|
45
|
+
message_meta: Optional[FidesopsMessage]
|
|
46
|
+
service_type: Optional[str]
|
|
47
|
+
to_identity: Optional[Identity]
|
|
48
|
+
property_id: Optional[str]
|
|
49
|
+
|
|
50
|
+
|
|
41
51
|
class MessagingService:
|
|
42
52
|
def __init__(self, db: Session, config: FidesConfig, config_proxy: ConfigProxy):
|
|
43
53
|
self.db = db
|
|
@@ -67,15 +77,15 @@ class MessagingService:
|
|
|
67
77
|
|
|
68
78
|
dispatch_message_task.apply_async(
|
|
69
79
|
queue=MESSAGING_QUEUE_NAME,
|
|
70
|
-
kwargs=
|
|
71
|
-
|
|
80
|
+
kwargs=MessageDispatchParams(
|
|
81
|
+
message_meta=FidesopsMessage(
|
|
72
82
|
action_type=MessagingActionType.PRIVACY_REQUEST_REVIEW_APPROVE,
|
|
73
83
|
body_params=None,
|
|
74
|
-
)
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
),
|
|
85
|
+
service_type=self.config_proxy.notifications.notification_service_type,
|
|
86
|
+
to_identity=to_identity,
|
|
87
|
+
property_id=privacy_request.property_id,
|
|
88
|
+
).model_dump(mode="json"),
|
|
79
89
|
)
|
|
80
90
|
|
|
81
91
|
def send_request_denied(
|
|
@@ -103,17 +113,17 @@ class MessagingService:
|
|
|
103
113
|
|
|
104
114
|
dispatch_message_task.apply_async(
|
|
105
115
|
queue=MESSAGING_QUEUE_NAME,
|
|
106
|
-
kwargs=
|
|
107
|
-
|
|
116
|
+
kwargs=MessageDispatchParams(
|
|
117
|
+
message_meta=FidesopsMessage(
|
|
108
118
|
action_type=MessagingActionType.PRIVACY_REQUEST_REVIEW_DENY,
|
|
109
119
|
body_params=RequestReviewDenyBodyParams(
|
|
110
120
|
rejection_reason=deny_reason
|
|
111
121
|
),
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
122
|
+
),
|
|
123
|
+
service_type=self.config_proxy.notifications.notification_service_type,
|
|
124
|
+
to_identity=to_identity,
|
|
125
|
+
property_id=privacy_request.property_id,
|
|
126
|
+
).model_dump(mode="json"),
|
|
117
127
|
)
|
|
118
128
|
|
|
119
129
|
def send_verification_code(
|
|
@@ -131,19 +141,37 @@ class MessagingService:
|
|
|
131
141
|
MessagingActionType.SUBJECT_IDENTITY_VERIFICATION,
|
|
132
142
|
self.config_proxy.execution.subject_identity_verification_required,
|
|
133
143
|
):
|
|
144
|
+
# Note: Fallback to email messaging config is only used for ConsentRequests
|
|
145
|
+
service_type = (
|
|
146
|
+
self.config_proxy.notifications.notification_service_type
|
|
147
|
+
or get_email_messaging_config_service_type(db=self.db)
|
|
148
|
+
)
|
|
149
|
+
if not service_type:
|
|
150
|
+
raise MessageDispatchException(
|
|
151
|
+
"No notification service type configured."
|
|
152
|
+
)
|
|
153
|
+
|
|
154
|
+
# For PrivacyRequest, validate the config exists before dispatching
|
|
155
|
+
if isinstance(request, PrivacyRequest):
|
|
156
|
+
MessagingConfig.get_configuration(db=self.db, service_type=service_type)
|
|
157
|
+
|
|
134
158
|
verification_code = _generate_id_verification_code()
|
|
135
159
|
request.cache_identity_verification_code(verification_code)
|
|
136
160
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
161
|
+
dispatch_message_task.apply_async(
|
|
162
|
+
queue=MESSAGING_QUEUE_NAME,
|
|
163
|
+
kwargs=MessageDispatchParams(
|
|
164
|
+
message_meta=FidesopsMessage(
|
|
165
|
+
action_type=MessagingActionType.SUBJECT_IDENTITY_VERIFICATION,
|
|
166
|
+
body_params=SubjectIdentityVerificationBodyParams(
|
|
167
|
+
verification_code=verification_code,
|
|
168
|
+
verification_code_ttl_seconds=self.config.redis.identity_verification_code_ttl_seconds,
|
|
169
|
+
),
|
|
170
|
+
),
|
|
171
|
+
service_type=service_type,
|
|
172
|
+
to_identity=to_identity,
|
|
173
|
+
property_id=property_id,
|
|
174
|
+
).model_dump(mode="json"),
|
|
147
175
|
)
|
|
148
176
|
|
|
149
177
|
return verification_code
|
|
@@ -185,17 +213,17 @@ class MessagingService:
|
|
|
185
213
|
|
|
186
214
|
dispatch_message_task.apply_async(
|
|
187
215
|
queue=MESSAGING_QUEUE_NAME,
|
|
188
|
-
kwargs=
|
|
189
|
-
|
|
216
|
+
kwargs=MessageDispatchParams(
|
|
217
|
+
message_meta=FidesopsMessage(
|
|
190
218
|
action_type=MessagingActionType.PRIVACY_REQUEST_RECEIPT,
|
|
191
219
|
body_params=RequestReceiptBodyParams(
|
|
192
220
|
request_types=request_types_list
|
|
193
221
|
),
|
|
194
|
-
)
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
222
|
+
),
|
|
223
|
+
service_type=self.config.notifications.notification_service_type,
|
|
224
|
+
to_identity=identity,
|
|
225
|
+
property_id=privacy_request.property_id,
|
|
226
|
+
).model_dump(mode="json"),
|
|
199
227
|
)
|
|
200
228
|
|
|
201
229
|
|
|
@@ -229,17 +257,17 @@ def check_and_dispatch_error_notifications(db: Session) -> None:
|
|
|
229
257
|
for email in privacy_request_notifications[0].email.split(EMAIL_JOIN_STRING):
|
|
230
258
|
dispatch_message_task.apply_async(
|
|
231
259
|
queue=MESSAGING_QUEUE_NAME,
|
|
232
|
-
kwargs=
|
|
233
|
-
|
|
260
|
+
kwargs=MessageDispatchParams(
|
|
261
|
+
message_meta=FidesopsMessage(
|
|
234
262
|
action_type=MessagingActionType.PRIVACY_REQUEST_ERROR_NOTIFICATION,
|
|
235
263
|
body_params=ErrorNotificationBodyParams(
|
|
236
264
|
unsent_errors=len(unsent_errors)
|
|
237
265
|
),
|
|
238
|
-
)
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
266
|
+
),
|
|
267
|
+
service_type=config_proxy.notifications.notification_service_type,
|
|
268
|
+
to_identity=Identity(email=email),
|
|
269
|
+
property_id=None,
|
|
270
|
+
).model_dump(mode="json"),
|
|
243
271
|
)
|
|
244
272
|
|
|
245
273
|
for error in unsent_errors:
|
|
@@ -248,33 +276,6 @@ def check_and_dispatch_error_notifications(db: Session) -> None:
|
|
|
248
276
|
return None
|
|
249
277
|
|
|
250
278
|
|
|
251
|
-
def send_verification_code_to_user(
|
|
252
|
-
db: Session,
|
|
253
|
-
request: Union[ConsentRequest, PrivacyRequest],
|
|
254
|
-
to_identity: Optional[Identity],
|
|
255
|
-
property_id: Optional[str],
|
|
256
|
-
) -> str:
|
|
257
|
-
"""Generate and cache a verification code, and then message the user"""
|
|
258
|
-
config = get_config()
|
|
259
|
-
config_proxy = ConfigProxy(db)
|
|
260
|
-
verification_code = _generate_id_verification_code()
|
|
261
|
-
request.cache_identity_verification_code(verification_code)
|
|
262
|
-
messaging_action_type = MessagingActionType.SUBJECT_IDENTITY_VERIFICATION
|
|
263
|
-
dispatch_message(
|
|
264
|
-
db,
|
|
265
|
-
action_type=messaging_action_type,
|
|
266
|
-
to_identity=to_identity,
|
|
267
|
-
service_type=config_proxy.notifications.notification_service_type,
|
|
268
|
-
message_body_params=SubjectIdentityVerificationBodyParams(
|
|
269
|
-
verification_code=verification_code,
|
|
270
|
-
verification_code_ttl_seconds=config.redis.identity_verification_code_ttl_seconds,
|
|
271
|
-
),
|
|
272
|
-
property_id=property_id,
|
|
273
|
-
)
|
|
274
|
-
|
|
275
|
-
return verification_code
|
|
276
|
-
|
|
277
|
-
|
|
278
279
|
def send_privacy_request_receipt_message_to_user(
|
|
279
280
|
policy: Optional[Policy],
|
|
280
281
|
to_identity: Optional[Identity],
|
|
@@ -305,13 +306,13 @@ def send_privacy_request_receipt_message_to_user(
|
|
|
305
306
|
|
|
306
307
|
dispatch_message_task.apply_async(
|
|
307
308
|
queue=MESSAGING_QUEUE_NAME,
|
|
308
|
-
kwargs=
|
|
309
|
-
|
|
309
|
+
kwargs=MessageDispatchParams(
|
|
310
|
+
message_meta=FidesopsMessage(
|
|
310
311
|
action_type=MessagingActionType.PRIVACY_REQUEST_RECEIPT,
|
|
311
312
|
body_params=RequestReceiptBodyParams(request_types=request_types_list),
|
|
312
|
-
)
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
313
|
+
),
|
|
314
|
+
service_type=service_type,
|
|
315
|
+
to_identity=to_identity,
|
|
316
|
+
property_id=property_id,
|
|
317
|
+
).model_dump(mode="json"),
|
|
317
318
|
)
|