ethyca-fides 2.57.1rc0__py2.py3-none-any.whl → 2.58.0__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.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/METADATA +1 -1
- {ethyca_fides-2.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/RECORD +245 -230
- fides/_version.py +3 -3
- fides/api/alembic/migrations/versions/1d2f04ac19f2_add_page_column_to_asset_table.py +49 -0
- fides/api/alembic/migrations/versions/7c3fbee90c78_add_user_assigned_data_uses_and_system_.py +54 -0
- fides/api/alembic/migrations/versions/9a1eacd2666b_add_description_column_to_asset.py +25 -0
- fides/api/api/v1/endpoints/config_endpoints.py +4 -2
- fides/api/api/v1/endpoints/generic_overrides.py +48 -6
- fides/api/graph/traversal.py +8 -0
- fides/api/models/asset.py +37 -18
- fides/api/models/attachment.py +11 -13
- fides/api/models/comment.py +17 -17
- fides/api/models/connectionconfig.py +1 -1
- fides/api/models/detection_discovery.py +12 -0
- fides/api/models/location_regulation_selections.py +1 -0
- fides/api/models/privacy_request/__init__.py +44 -0
- fides/api/models/privacy_request/consent.py +155 -0
- fides/api/models/privacy_request/execution_log.py +108 -0
- fides/api/models/{privacy_request.py → privacy_request/privacy_request.py} +82 -691
- fides/api/models/privacy_request/provided_identity.py +149 -0
- fides/api/models/privacy_request/request_task.py +284 -0
- fides/api/models/privacy_request/webhook.py +94 -0
- fides/api/models/sql_models.py +28 -5
- fides/api/oauth/jwt.py +18 -0
- fides/api/oauth/utils.py +11 -11
- fides/api/schemas/connection_configuration/connection_secrets_datahub.py +2 -4
- fides/api/schemas/dataset.py +22 -2
- fides/api/schemas/saas/strategy_configuration.py +1 -0
- fides/api/service/pagination/pagination_strategy_cursor.py +15 -1
- fides/api/service/pagination/pagination_strategy_link.py +1 -1
- fides/api/service/storage/s3.py +193 -0
- fides/api/service/storage/util.py +10 -0
- fides/api/tasks/storage.py +12 -111
- fides/config/__init__.py +1 -1
- fides/data/language/languages.yml +2 -0
- fides/data/location/locations.yml +244 -1
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/83Gi0kdCvIdkdE1Kf6DS1/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/83Gi0kdCvIdkdE1Kf6DS1/_ssgManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1100-053fc6b76c65a00f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1150-73440d7b319558e8.js → 1150-035a721a04f4451e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1376-5cea5ef9362215e8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{2397-7177ecf4ebe68feb.js → 2397-ee53235fb21b5e97.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{255-bf1797f78249d090.js → 255-7db55b0e3a0f9dea.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/2fbcc6de-a6c61724c327e9fa.js +8 -0
- fides/ui-build/static/admin/_next/static/chunks/{3086-be6b52546c3efc90.js → 3086-b5054ec2c75700b9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/3412-7ec8751b8182e1bf.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/355-8a77c9a1cd027f2e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3615-5e2d062d684b8fa1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3855-5c7b11871f59e0e0.js → 3855-b6b7865dedd7bc2a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3872-f3d5054bdc584eaa.js → 3872-4e053c20d546f027.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/4060-8d165e1236ea521a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4450-36234280bee624ff.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4481-aab99ff80f707473.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4723-0a3c5e2ce143a7d0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5258-3a650be9142cf914.js → 5258-0658dc2274df6832.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5277-e8a036319456127f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5480-f5bec5e881f72f8d.js → 5480-f49696df5e8ae500.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5487-d96e1abc93f92631.js → 5487-3ad50d21cdbc9209.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/570-c99f07161bd339cd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5826-16e497af363a0cbc.js → 5826-e5dcb4e68cfe6289.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5973-52aee296edc44f7e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6060-cb1ab5be7067bf7b.js +4 -0
- fides/ui-build/static/admin/_next/static/chunks/{6315-dee79f6861c94d2d.js → 6315-fa1519cdf080f42d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6372-f1b54f3cb4888660.js → 6372-ca9c12ac8902365b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6527-0eed08abe252a918.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/678d4732-50255cc09048e643.js +2 -0
- fides/ui-build/static/admin/_next/static/chunks/{6853-cacea421af3bfc26.js → 6853-8941824350c3c1a8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6954-3b887fb444f9228c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{7088.0e7c92a7cbb57562.js → 7088.eb76fca286e5f2e6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7453-39761c38da31257e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{7751-25e0c1307988ffd7.js → 7751-a8f31c062d4cb09d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{79-ba88d0cf4c65aaa2.js → 79-f9b948ebb186900f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7980-4bd08957448dea32.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7c79804f.7a7112aece470725.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{8433-969280d321d1c3a2.js → 8433-b3008ecaf9834e7f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8499-07507004e8275df2.js → 8499-43606100edf42fdf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/8702-d1c8296f9f6afc10.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5908-532dfbc9d930f635.js → 9014-eeae6f581158e645.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9046-80f1ea44f89fe32c.js → 9046-04bd7becea207cb1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/905-8ab919e7b274ed50.js +8 -0
- fides/ui-build/static/admin/_next/static/chunks/9187-851756440f79cd75.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9282-2bfbdca45e84e810.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9327-2cba327d10586683.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9392.97b2e3327dceb7c9.js → 9392.da35a8e778812d91.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9676.f297a1347ac09c56.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9767-1a23925d2cb27b51.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9999-f2e40d5b13343220.js → 9999-637e0e5341f15f4a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/e3251fe7-5777b5d778e6fffa.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/main-24f422f93845a596.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{main-app-2650f704701c6a7b.js → main-app-94a0711202e08b15.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-1087258931760074.js → 404-b202c0d8f6fc75c3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/_app-fc89ce7bed454c84.js +923 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-d7f60624cbc12217.js → manual-9acaab973dfe86e2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-18b0b521255289a3.js → multiple-ba975134a85588f8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-d258f0c25fa020bf.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{ant-poc-b3b4d0a98450ffd1.js → ant-poc-b9932971a479f3a7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-64f83e9a2b777bf3.js → add-vendors-b34e5324461d0c87.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-723cc3d4f5740ea6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-443e6dd191ce5588.js → [id]-fb75fa0aea77678d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{new-36162d5bea29dcc2.js → new-a9d9402c219d13e5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-35e9df60b21e21a6.js → privacy-experience-c946b33b0322b8ad.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-2d651499c07d12d9.js → [id]-72251b48e2e03a1e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-36e57d2f2446be82.js → new-9611dd42856d6062.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-da37afbe5ec81339.js → privacy-notices-ea57f9d6ad17e957.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-c57b209feef7c2da.js → properties-e5748812ba055a56.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-788cf0e34829af46.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-24bef021ee71e36c.js → consent-39d65f13cc8f1cf8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-6cbd79481199812d.js → [resourceUrn]-ac033a16f043e6f9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-46b9790da2fec05a.js → [projectUrn]-a29850536c85d4b8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-1f965b9c496071d1.js → projects-c44ce244122e96d5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-e7833c1c606081a9.js → [resourceUrn]-71e26d262afcaea5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{resources-bed368d048ea6883.js → resources-305555b74c357bf2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-900004e402c31797.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-b66831fdafcdf67c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-5f9ef1f99818117c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-d001337d1bb73bd1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-1d7936f05d23097f.js → activity-11b3ce9f61d9bfe9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-68122dbf449a11b4.js → [resourceUrn]-054ca46a782e99a5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-0ceaf3c555e84714.js → detection-b75dd3e4306ac18e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-22c27fe0f898ad2a.js → [resourceUrn]-1da20aeb6fc995e4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-8f2b102e19b0b8f2.js → discovery-cad50b0cc6d1050c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-9cd0c40bef77b120.js → datamap-8cb714cdd44ac40e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d79551d4c64c398c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-7e5df4a0de7540bb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-e14c1c07658f8a10.js → [datasetId]-6ba18f92ba561114.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-803c1b577ab17ae3.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-fa743ddc7f89d76b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-0616437e1a82d3ed.js → [id]-bbe1ca2793798e6b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-f8218440494e8532.js → new-abc17fef69cd951b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-a78a73b65929853a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/fides-js-docs-80b241bf6cddb72e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-94e6d589c4edf360.js → index-bfaacdb55a5a6c9f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-d4329043219fed9b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-ef8000d7388dc915.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-6b032de0a6c2c400.js → [id]-ad02e019b2467958.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-c0d6ae68ff7979c6.js → add-template-f9693cb6a0b7ded8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-1e60754abec1ee6b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{[id]-bbe5854b7d19b7e9.js → [id]-fe765154315782cf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-f5f7a8069909ef24.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-9f7eaad05e5b9292.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-4bad69cd42c9722c.js → configure-2987edc77388e85a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-d85c0d16ba09ba35.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-b4c808a8a0287d11.js → [id]-94e2faa73dd6a3e6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-5a701477b006a63b.js → add-property-630a6a3dd6502ba6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-9a1899dfe052023e.js → properties-20ca2f963906674b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-afedc48ef4e7f858.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{about-d073be113e9ca7b0.js → about-a49d0f84cf0cf05e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-89524101b7279f6e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-744e7bbc200557e7.js → custom-fields-52d030b1db2ca1b9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-c5cd5fb578de9515.js → domain-records-fa42d8f18df44927.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-24cba38685dc872c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-39c7ae3602ac69b2.js → email-templates-6fd6071e2009b8f2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-45e33ba111f8f8b0.js → locations-66c757325cb58467.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-a08693d0d1e10bc8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-94975aeab348528e.js → regulations-c6c239996cfa6ae8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-151571cff4e85894.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-82d9af34546adaa2.js → [id]-4f5a28226575c976.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{systems-c320df35d51dc537.js → systems-abd68fc5ddde5482.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{taxonomy-181ea5b0ac975239.js → taxonomy-16b4d75c49276add.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-622e16a17a11c096.js → [id]-78eaf933f755bfe8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-aa872b21bb835d34.js → user-management-6c9ad62479a7d03e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-4df2ba5ee2d40f0a.js → webpack-2c7ccac5843c4d8e.js} +1 -1
- fides/ui-build/static/admin/_next/static/css/113d823fe71f6af0.css +1 -0
- fides/ui-build/static/admin/_next/static/css/ab65b8cc3144bfc8.css +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/ant-poc.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/[monitorId]/[systemId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId].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-tcf.js +3 -3
- 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/messaging/[id].html +1 -1
- fides/ui-build/static/admin/messaging/add-template.html +1 -1
- fides/ui-build/static/admin/messaging.html +1 -1
- fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure/messaging.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/settings/about.html +1 -1
- fides/ui-build/static/admin/settings/consent.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/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/ui-build/static/admin/_next/static/chunks/1995-0e4fc4f7b44ed72b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2780-8328de94968d05e4.js +0 -4
- fides/ui-build/static/admin/_next/static/chunks/3005-373de16453ed7eea.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3320-87c75df57a47487e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3627-fb83adac32c128e6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3662-420d9807c30008ab.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3949-9888699e2ac564c4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3967-845c902667e47c4f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3e38ba78-4487e45fd4ed2479.js +0 -2
- fides/ui-build/static/admin/_next/static/chunks/4481-ca8d2c75d634b6bc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4723-81d28e5be5c7b6d7.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4833-a85bd5d25ebc40c4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5246-9fc6af1a6499e0a4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5574-a4047e826a8cd4c3.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5834-bd9ed01c4ab2ef5c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5960-8895f51b30c35798.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5973-67c7562997f7d5cb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6277-515c922445b8edc5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6954-6eb480eb132239c3.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7044-9dc90893067f38ae.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7980-2597c279c30fbcda.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7c79804f.26834f883d5ad770.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8837-cf26e5ca1ae5aaf5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9282-1a5a2f6f4d9ed586.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9676.f4d5977a5f148797.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9767-4c591bd478c72650.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/main-ce7f38a12ea8c223.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/_app-9ceff88561dc1250.js +0 -909
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-136bcbd20ac59bf5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-e11ace4f273ebb47.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-97fea4ac45093cbd.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-942d68a88b321067.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-00526324583139ab.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-f0ab51d0d5f995de.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-2220c30c3863b5a5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-ab9bc1a3640547db.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-17ec8385bb1fa6d4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-740824dfa6823e26.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-5541ecd2f62711a5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-b8eaa9b9d3832b30.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-a6448ce6ba7f0cf5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-1a6965d78bfb26b0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-f263e6bacf0f2d19.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-b96ee3fea3920fcf.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-1b0f9469cb65abfc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-eebd2f4ead19cfd6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-a3fa3ad77730a03b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-4769f55b138073f7.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-775f55b3f80cd452.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-14def4ca3cc9cda5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-21f26c0dc4d09e9f.js +0 -1
- fides/ui-build/static/admin/_next/static/css/957d0e4fea846ff0.css +0 -1
- fides/ui-build/static/admin/_next/static/rOPehh5NMs1hjog7nTw1q/_buildManifest.js +0 -1
- fides/ui-build/static/admin/_next/static/rOPehh5NMs1hjog7nTw1q/_ssgManifest.js +0 -1
- {ethyca_fides-2.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/LICENSE +0 -0
- {ethyca_fides-2.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.57.1rc0.dist-info → ethyca_fides-2.58.0.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-d6717378b42982d5.js → new-be690621a944bfe2.js} +0 -0
@@ -0,0 +1,155 @@
|
|
1
|
+
# pylint: disable=R0401, C0302
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
|
5
|
+
from datetime import datetime
|
6
|
+
from typing import TYPE_CHECKING, Any, Dict, Optional
|
7
|
+
|
8
|
+
from loguru import logger
|
9
|
+
from sqlalchemy import Boolean, Column, DateTime, ForeignKey, String, UniqueConstraint
|
10
|
+
from sqlalchemy.dialects.postgresql import JSONB
|
11
|
+
from sqlalchemy.ext.mutable import MutableList
|
12
|
+
from sqlalchemy.orm import Session, relationship
|
13
|
+
|
14
|
+
from fides.api.db.base_class import Base # type: ignore[attr-defined]
|
15
|
+
from fides.api.db.util import EnumColumn
|
16
|
+
from fides.api.models.privacy_request.privacy_request import CustomPrivacyRequestField
|
17
|
+
from fides.api.models.privacy_request.provided_identity import ProvidedIdentity
|
18
|
+
from fides.api.schemas.privacy_request import PrivacyRequestSource
|
19
|
+
from fides.api.schemas.redis_cache import (
|
20
|
+
CustomPrivacyRequestField as CustomPrivacyRequestFieldSchema,
|
21
|
+
)
|
22
|
+
from fides.api.schemas.redis_cache import IdentityBase
|
23
|
+
from fides.api.util.cache import FidesopsRedis, get_cache
|
24
|
+
from fides.api.util.identity_verification import IdentityVerificationMixin
|
25
|
+
from fides.config import CONFIG
|
26
|
+
|
27
|
+
if TYPE_CHECKING:
|
28
|
+
from fides.api.models.privacy_request.privacy_request import (
|
29
|
+
PrivacyRequest, # type: ignore[attr-defined]
|
30
|
+
)
|
31
|
+
|
32
|
+
|
33
|
+
class Consent(Base):
|
34
|
+
"""The DB ORM model for Consent."""
|
35
|
+
|
36
|
+
provided_identity_id = Column(
|
37
|
+
String,
|
38
|
+
ForeignKey(ProvidedIdentity.id),
|
39
|
+
nullable=False,
|
40
|
+
)
|
41
|
+
data_use = Column(String, nullable=False)
|
42
|
+
data_use_description = Column(String)
|
43
|
+
opt_in = Column(Boolean, nullable=False)
|
44
|
+
has_gpc_flag = Column(
|
45
|
+
Boolean,
|
46
|
+
server_default="f",
|
47
|
+
default=False,
|
48
|
+
nullable=False,
|
49
|
+
)
|
50
|
+
conflicts_with_gpc = Column(
|
51
|
+
Boolean,
|
52
|
+
server_default="f",
|
53
|
+
default=False,
|
54
|
+
nullable=False,
|
55
|
+
)
|
56
|
+
|
57
|
+
provided_identity = relationship(ProvidedIdentity, back_populates="consent")
|
58
|
+
|
59
|
+
UniqueConstraint(provided_identity_id, data_use, name="uix_identity_data_use")
|
60
|
+
|
61
|
+
identity: Optional[IdentityBase] = None
|
62
|
+
|
63
|
+
|
64
|
+
class ConsentRequest(IdentityVerificationMixin, Base):
|
65
|
+
"""Tracks consent requests."""
|
66
|
+
|
67
|
+
property_id = Column(
|
68
|
+
String,
|
69
|
+
nullable=True,
|
70
|
+
)
|
71
|
+
provided_identity_id = Column(
|
72
|
+
String, ForeignKey(ProvidedIdentity.id), nullable=False
|
73
|
+
)
|
74
|
+
provided_identity = relationship(
|
75
|
+
ProvidedIdentity,
|
76
|
+
back_populates="consent_request",
|
77
|
+
)
|
78
|
+
|
79
|
+
custom_fields = relationship(
|
80
|
+
"CustomPrivacyRequestField", back_populates="consent_request"
|
81
|
+
)
|
82
|
+
|
83
|
+
preferences = Column(
|
84
|
+
MutableList.as_mutable(JSONB),
|
85
|
+
nullable=True,
|
86
|
+
)
|
87
|
+
|
88
|
+
identity_verified_at = Column(
|
89
|
+
DateTime(timezone=True),
|
90
|
+
nullable=True,
|
91
|
+
)
|
92
|
+
|
93
|
+
source = Column(EnumColumn(PrivacyRequestSource), nullable=True)
|
94
|
+
|
95
|
+
privacy_request_id = Column(String, ForeignKey("privacyrequest.id"), nullable=True)
|
96
|
+
privacy_request = relationship("PrivacyRequest")
|
97
|
+
|
98
|
+
def get_cached_identity_data(self) -> Dict[str, Any]:
|
99
|
+
"""Retrieves any identity data pertaining to this request from the cache."""
|
100
|
+
prefix = f"id-{self.id}-identity-*"
|
101
|
+
cache: FidesopsRedis = get_cache()
|
102
|
+
keys = cache.keys(prefix)
|
103
|
+
return {key.split("-")[-1]: cache.get(key) for key in keys}
|
104
|
+
|
105
|
+
def verify_identity(
|
106
|
+
self,
|
107
|
+
db: Session,
|
108
|
+
provided_code: Optional[str] = None,
|
109
|
+
) -> None:
|
110
|
+
"""
|
111
|
+
A method to call the internal identity verification method provided by the
|
112
|
+
`IdentityVerificationMixin`.
|
113
|
+
"""
|
114
|
+
self._verify_identity(provided_code=provided_code)
|
115
|
+
self.identity_verified_at = datetime.utcnow()
|
116
|
+
self.save(db)
|
117
|
+
|
118
|
+
def persist_custom_privacy_request_fields(
|
119
|
+
self,
|
120
|
+
db: Session,
|
121
|
+
custom_privacy_request_fields: Optional[
|
122
|
+
Dict[str, CustomPrivacyRequestFieldSchema]
|
123
|
+
],
|
124
|
+
) -> None:
|
125
|
+
if not custom_privacy_request_fields:
|
126
|
+
return
|
127
|
+
|
128
|
+
if CONFIG.execution.allow_custom_privacy_request_field_collection:
|
129
|
+
for key, item in custom_privacy_request_fields.items():
|
130
|
+
if item.value:
|
131
|
+
hashed_value = CustomPrivacyRequestField.hash_value(item.value)
|
132
|
+
CustomPrivacyRequestField.create(
|
133
|
+
db=db,
|
134
|
+
data={
|
135
|
+
"consent_request_id": self.id,
|
136
|
+
"field_name": key,
|
137
|
+
"field_label": item.label,
|
138
|
+
"encrypted_value": {"value": item.value},
|
139
|
+
"hashed_value": hashed_value,
|
140
|
+
},
|
141
|
+
)
|
142
|
+
else:
|
143
|
+
logger.info(
|
144
|
+
"Custom fields provided in consent request {}, but config setting 'CONFIG.execution.allow_custom_privacy_request_field_collection' prevents their storage.",
|
145
|
+
self.id,
|
146
|
+
)
|
147
|
+
|
148
|
+
def get_persisted_custom_privacy_request_fields(self) -> Dict[str, Any]:
|
149
|
+
return {
|
150
|
+
field.field_name: {
|
151
|
+
"label": field.field_label,
|
152
|
+
"value": field.encrypted_value["value"],
|
153
|
+
}
|
154
|
+
for field in self.custom_fields # type: ignore[attr-defined]
|
155
|
+
}
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# pylint: disable=R0401, C0302
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
|
5
|
+
from typing import Optional
|
6
|
+
|
7
|
+
from sqlalchemy import Column, DateTime, String
|
8
|
+
from sqlalchemy.dialects.postgresql import JSONB
|
9
|
+
from sqlalchemy.ext.mutable import MutableList
|
10
|
+
from sqlalchemy.sql import text
|
11
|
+
|
12
|
+
from fides.api.db.base_class import Base # type: ignore[attr-defined]
|
13
|
+
from fides.api.db.util import EnumColumn
|
14
|
+
from fides.api.schemas.policy import ActionType, CurrentStep
|
15
|
+
from fides.api.schemas.privacy_request import ExecutionLogStatus
|
16
|
+
|
17
|
+
# Locations from which privacy request execution can be resumed, in order.
|
18
|
+
EXECUTION_CHECKPOINTS = [
|
19
|
+
CurrentStep.pre_webhooks,
|
20
|
+
CurrentStep.access,
|
21
|
+
CurrentStep.upload_access,
|
22
|
+
CurrentStep.erasure,
|
23
|
+
CurrentStep.finalize_erasure,
|
24
|
+
CurrentStep.consent,
|
25
|
+
CurrentStep.finalize_consent,
|
26
|
+
CurrentStep.email_post_send,
|
27
|
+
CurrentStep.post_webhooks,
|
28
|
+
]
|
29
|
+
|
30
|
+
COMPLETED_EXECUTION_LOG_STATUSES = [
|
31
|
+
ExecutionLogStatus.complete,
|
32
|
+
ExecutionLogStatus.skipped,
|
33
|
+
]
|
34
|
+
|
35
|
+
EXITED_EXECUTION_LOG_STATUSES = [
|
36
|
+
ExecutionLogStatus.complete,
|
37
|
+
ExecutionLogStatus.error,
|
38
|
+
ExecutionLogStatus.skipped,
|
39
|
+
]
|
40
|
+
|
41
|
+
|
42
|
+
def can_run_checkpoint(
|
43
|
+
request_checkpoint: CurrentStep, from_checkpoint: Optional[CurrentStep] = None
|
44
|
+
) -> bool:
|
45
|
+
"""Determine whether we should run a specific checkpoint in privacy request execution
|
46
|
+
|
47
|
+
If there's no from_checkpoint specified we should always run the current checkpoint.
|
48
|
+
"""
|
49
|
+
if not from_checkpoint:
|
50
|
+
return True
|
51
|
+
return EXECUTION_CHECKPOINTS.index(
|
52
|
+
request_checkpoint
|
53
|
+
) >= EXECUTION_CHECKPOINTS.index(from_checkpoint)
|
54
|
+
|
55
|
+
|
56
|
+
class ExecutionLog(Base):
|
57
|
+
"""
|
58
|
+
Stores the individual execution logs associated with a PrivacyRequest.
|
59
|
+
|
60
|
+
Execution logs contain information about the individual queries as they progress through the workflow
|
61
|
+
generated by the query builder.
|
62
|
+
"""
|
63
|
+
|
64
|
+
connection_key = Column(String, index=True)
|
65
|
+
# Name of the fides-annotated dataset, for example: my-mongo-db
|
66
|
+
dataset_name = Column(String, index=True)
|
67
|
+
# Name of the particular collection or table affected
|
68
|
+
collection_name = Column(String, index=True)
|
69
|
+
# A JSON Array describing affected fields along with their data categories and paths
|
70
|
+
fields_affected = Column(MutableList.as_mutable(JSONB), nullable=True)
|
71
|
+
# Contains info, warning, or error messages
|
72
|
+
message = Column(String)
|
73
|
+
action_type = Column(
|
74
|
+
EnumColumn(ActionType),
|
75
|
+
index=True,
|
76
|
+
nullable=False,
|
77
|
+
)
|
78
|
+
status = Column(
|
79
|
+
EnumColumn(
|
80
|
+
ExecutionLogStatus,
|
81
|
+
native_enum=True,
|
82
|
+
values_callable=lambda x: [
|
83
|
+
i.value for i in x
|
84
|
+
], # Using ExecutionLogStatus values in database, even though app is using the names.
|
85
|
+
),
|
86
|
+
index=True,
|
87
|
+
nullable=False,
|
88
|
+
)
|
89
|
+
|
90
|
+
privacy_request_id = Column(
|
91
|
+
String,
|
92
|
+
nullable=False,
|
93
|
+
index=True,
|
94
|
+
)
|
95
|
+
|
96
|
+
# Use clock_timestamp() instead of NOW() to get the actual current time at row creation,
|
97
|
+
# regardless of transaction state. This prevents timestamp caching within transactions
|
98
|
+
# and ensures more accurate creation times.
|
99
|
+
# https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT
|
100
|
+
|
101
|
+
created_at = Column(
|
102
|
+
DateTime(timezone=True), server_default=text("clock_timestamp()")
|
103
|
+
)
|
104
|
+
updated_at = Column(
|
105
|
+
DateTime(timezone=True),
|
106
|
+
server_default=text("clock_timestamp()"),
|
107
|
+
onupdate=text("clock_timestamp()"),
|
108
|
+
)
|