ethyca-fides 2.66.2b1__py2.py3-none-any.whl → 2.66.2rc0__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.
Potentially problematic release.
This version of ethyca-fides might be problematic. Click here for more details.
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/METADATA +1 -1
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/RECORD +254 -264
- fides/_version.py +3 -3
- fides/api/api/v1/endpoints/dataset_config_endpoints.py +5 -13
- fides/api/api/v1/endpoints/drp_endpoints.py +1 -7
- fides/api/api/v1/endpoints/privacy_request_endpoints.py +1 -44
- fides/api/api/v1/endpoints/user_endpoints.py +7 -83
- fides/api/app_setup.py +2 -3
- fides/api/common_exceptions.py +0 -4
- fides/api/db/base.py +0 -1
- fides/api/db/database.py +1 -1
- fides/api/graph/execution.py +0 -30
- fides/api/models/{manual_task/manual_task.py → manual_task.py} +0 -10
- fides/api/models/policy.py +0 -23
- fides/api/models/privacy_request/execution_log.py +0 -1
- fides/api/models/privacy_request/privacy_request.py +13 -31
- fides/api/oauth/roles.py +0 -2
- fides/api/schemas/application_config.py +1 -11
- fides/api/schemas/masking/masking_secrets.py +1 -1
- fides/api/schemas/policy.py +0 -1
- fides/api/schemas/privacy_request.py +0 -5
- fides/api/service/connectors/base_connector.py +0 -1
- fides/api/service/connectors/bigquery_connector.py +19 -67
- fides/api/service/connectors/dynamodb_connector.py +1 -2
- fides/api/service/connectors/fides_connector.py +0 -1
- fides/api/service/connectors/http_connector.py +0 -1
- fides/api/service/connectors/manual_task_connector.py +0 -1
- fides/api/service/connectors/manual_webhook_connector.py +1 -2
- fides/api/service/connectors/mongodb_connector.py +0 -1
- fides/api/service/connectors/okta_connector.py +0 -1
- fides/api/service/connectors/query_configs/bigquery_query_config.py +32 -91
- fides/api/service/connectors/rds_mysql_connector.py +0 -1
- fides/api/service/connectors/rds_postgres_connector.py +0 -1
- fides/api/service/connectors/s3_connector.py +0 -1
- fides/api/service/connectors/saas_connector.py +0 -1
- fides/api/service/connectors/scylla_connector.py +0 -1
- fides/api/service/connectors/sql_connector.py +4 -36
- fides/api/service/connectors/website_connector.py +0 -1
- fides/api/service/privacy_request/request_runner_service.py +53 -142
- fides/api/service/privacy_request/request_service.py +22 -1
- fides/api/task/deprecated_graph_task.py +6 -24
- fides/api/task/execute_request_tasks.py +11 -88
- fides/api/task/graph_task.py +3 -38
- fides/api/task/manual/manual_task_graph_task.py +0 -1
- fides/api/util/cache.py +0 -5
- fides/api/util/encryption/secrets_util.py +18 -48
- fides/common/api/scope_registry.py +0 -3
- fides/common/api/v1/urn_registry.py +1 -1
- fides/config/execution_settings.py +0 -4
- fides/config/utils.py +0 -1
- fides/service/privacy_request/privacy_request_service.py +1 -6
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1817-e601e737e3cc7a0e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{203-4e777c324a01dbec.js → 203-5a663f465ba26bb4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/431-34f0b91c26f8d9ab.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/5309-b2c4803370634ff8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6780-e3d40aa17a4bf2e9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9046-5c4c22c375de25b1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-be7889cec5a0f5cd.js → _app-39ccb07327c2c5d5.js} +56 -56
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-2265ecb899d45fbc.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-5d522637871ac6c8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-0a58aee2d1e7fa01.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-f10a7dcf7541c865.js → integrations-e2d5d7e2a5265e68.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{table-migration-05616e2ae20ff4f8.js → table-migration-69ad86b7a8a9a115.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-32600543eb7b584f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-10ce53ea356f8bad.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-5501bbb129fee9c4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-cbe4c8f9096b6543.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/[id]-ff5738706da07801.js +1 -0
- fides/ui-build/static/admin/_next/static/css/2cadb5f62dcd7c2b.css +1 -0
- fides/ui-build/static/admin/_next/static/css/{23cf870196941c9a.css → 5bfb2473e5701527.css} +1 -1
- 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/[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-preview.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.js +3 -3
- fides/ui-build/static/admin/lib/fides.js +3 -3
- 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/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/poc/table-migration.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/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.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/api/alembic/migrations/versions/7e9a2b52f498_adding_masking_secrets.py +0 -60
- fides/api/alembic/migrations/versions/a7065df4dcf1_add_finalized_fields_to_privacy_request.py +0 -65
- fides/api/alembic/migrations/versions/d0031087eacb_create_manualtaskconditionaldependency_.py +0 -106
- fides/api/models/manual_task/__init__.py +0 -2
- fides/api/models/manual_task/conditional_dependency.py +0 -144
- fides/api/models/masking_secret.py +0 -72
- fides/api/task/conditional_dependencies/__init__.py +0 -0
- fides/api/task/conditional_dependencies/evaluator.py +0 -109
- fides/api/task/conditional_dependencies/schemas.py +0 -54
- fides/ui-build/static/admin/_next/static/CQD5hIjm-4lH18YYESYuD/_buildManifest.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1817-6f35f58cd08b04ae.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/431-ade3e312fac3430b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5309-67bdf9001531e972.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6780-4b687168dd8daa84.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8237-55049f8f5fd5e058.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9046-54877976a0529de2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-71579a199158952e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-7e63ac744c45f6da.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-8d83a5518c00fcfc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-1caa552a8f11f2f2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-7498d1d5974a78b0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-2d3a2d967767a131.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-6a9068df48bdee05.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/[id]-fe58cebba358119d.js +0 -1
- fides/ui-build/static/admin/_next/static/css/b81194f2c3930152.css +0 -1
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.66.2b1.dist-info → ethyca_fides-2.66.2rc0.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{CQD5hIjm-4lH18YYESYuD → 8108ANFxs99VY7KZ_Xev2}/_ssgManifest.js +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{2921-86f1547ac40a5cdf.js → 2921-455e6357b74d2f76.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{3450-1cc2bb07ed142203.js → 3450-0ba194991d0cca88.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{3855-e2fa6db53d32c3de.js → 3855-e172870d3e21b0dd.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{3872-84b7e380b88b4454.js → 3872-46cebf7ec1b31a2b.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{3923-13a6b4da2d51bf8f.js → 3923-6cc911dafccc5f63.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{401-3cc1fee61494e3bd.js → 401-1b529d5800aa1f3a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{409-45a125437261580c.js → 409-a257e14acebcd73b.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{4121-f50675521dfee6eb.js → 4121-2bc09fc4ddbfe5cb.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{4230-840c287045c88b34.js → 4230-60100f7ef3ddcde1.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{4608-a8e3100e2806dbff.js → 4608-bbb7bf511a05c3c2.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{5574-9312f97b637d9ee2.js → 5574-b13021775a15bfd2.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{6084-5d7598b7bcb548cf.js → 6084-7178ff6ea6822475.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{6662-efb2cf74641647f2.js → 6662-507be5d46e5b719b.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{6853-4f8bf6558f8c6a46.js → 6853-2ad3e08fe6f9f5f2.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{6882-586b84aeb02d5830.js → 6882-6af16fef26c21e06.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{6954-34e062e4bffc7e71.js → 6954-bb875d9ac89f6030.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{7476-d206c11823c91088.js → 7476-281ee9a8286556f3.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{7630-b1c93688013ef013.js → 7630-9aac73191ed5ed13.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{787-cbe2d0bfb513d90a.js → 787-fb41002f797eb2df.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{79-3db1941d274f40c7.js → 79-7e87aff851423d4a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{796-98d4bd68909fbe1e.js → 796-329a5f823ec258a5.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{9226-72ad691ca57b83ef.js → 9226-746771d47dff6266.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{9826-3c578665c6d3b21d.js → 9826-111aaee8bd8dbd09.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{9951-595d0f1588215081.js → 9951-9b753ad7c3f51bdf.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{404-2d803dab6a00f353.js → 404-aece2c920ea14514.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-acb59f8b5e97512a.js → manual-98777246bec9dc2a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-8ff7f37913ad736a.js → multiple-dc75dc6e37e52f05.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{add-systems-0943633a8e422695.js → add-systems-a71c0aff4e0e6535.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-d00c9034cdeb0236.js → add-vendors-24d226b5a8de5c74.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/{configure-0e1ca0f4c8e7f4da.js → configure-6a8ef51138ac926a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-fc3a011154a2e1de.js → [id]-1edf582ba3cd3bbb.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-09d4408014bcfe1c.js → privacy-experience-685771e5f7196d87.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-d67542783ef5ddac.js → [id]-6ccedc70dc447089.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-3f20e8a316bb3d5b.js → new-944bca1cc57985b5.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-23e9dcd4590312d2.js → privacy-notices-84f4bd14ce8673bc.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-057cad65e7414a44.js → properties-6f86ab63a08a6528.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/consent/{reporting-8f891957c8944137.js → reporting-afdbd4665657cfa1.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{consent-e17c56eec8d91371.js → consent-73d3cbf68f7c3a31.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-99c9092d65c94807.js → [resourceUrn]-11d52f1570759c4d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-80a6cc8e8573514a.js → [projectUrn]-6ba9e160dae64695.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-774fecea22ba8852.js → projects-32eac8bbd217615a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-f6bd6aff389cb9fe.js → [resourceUrn]-b83afa5565d0c84e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{resources-6c3714ee97a718c1.js → resources-7648bbd4f6711e4d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-8a7f9285da66b965.js → data-catalog-6f630d42ac9fb6b4.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{action-center-85e140788e251272.js → action-center-9ddb52ebb7ac4c71.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-5af9381f02b2aff6.js → activity-9aa744d56cdacb0d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-31e6c54794a9883e.js → [resourceUrn]-393e20924c83373e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-2822a423a7ad0550.js → detection-8733807dad4bc96e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-6421ce247549c5d6.js → [resourceUrn]-14bd7500362ff224.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-3eac407ac5181a3c.js → discovery-9e7dfd5a6acc2e8f.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-d2b275d83089820d.js → datamap-7674b97d655c193b.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-1c98bd0959d9570a.js → [...subfieldNames]-c0d2bfd465df20e0.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-e548cabda7da32c9.js → [collectionName]-28280a8a39a6e37c.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-a8e8b5f4ee7af86c.js → [datasetId]-006b695e5af5ef24.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{new-513c862c3a707735.js → new-82fb246d87e58ebd.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{dataset-747b7a13289f1cd7.js → dataset-20165c31ab1bc7cf.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-3d22525b3c327b2e.js → [id]-b4a6bcc87d126840.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-d2cad97495e86adb.js → new-f95d7b0bbfc58f5a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{datastore-connection-0f29b47402292070.js → datastore-connection-c391c6fad56eec48.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{index-12ac3e317fc86f21.js → index-1919aab9e5834b51.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-5627d0d0668077f9.js → [id]-53fecfb9dd6a1e0c.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-feca66ad5c5fe54a.js → add-template-76b01cec5fde10a9.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{messaging-c1bd3e7adbe8d2d3.js → messaging-5094ffea13f32ed9.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/{ant-components-64a322d01aae5ca7.js → ant-components-5c08e8447c45ce44.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{AntForm-8bca16a7726e7eb2.js → AntForm-06ad5f34585480aa.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikAntFormItem-b0f246fc3b67ebf7.js → FormikAntFormItem-6f071c2bc9446cb0.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikControlled-1a0852b090bfc392.js → FormikControlled-efcc38c58991ac9e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikField-11f3de1b45e36583.js → FormikField-430ba5c979abfb7c.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/poc/{forms-1b73a1c2b6c6285f.js → forms-5c561880bf131afb.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-e551a860ec727802.js → configure-d888a69a3bbe040e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-dd99183f93763ae4.js → [id]-d3d8e3d7583ec635.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-0bdbc1fcbf553b8f.js → add-property-1af10ed303815d46.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{properties-e959378bb32b6b73.js → properties-cebc0dc186be499a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/reporting/{datamap-2a98bd257edd8f47.js → datamap-e130c0197362e8f3.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/about/{alpha-8f98a4895e74725e.js → alpha-5e1322de868d615e.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{about-8155a35a62fdb5ae.js → about-241f95e372b65d0f.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-668d74c041d74650.js → [purpose_id]-fc201657f4a782c7.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{consent-a989532a12c40dcf.js → consent-c2d39cba8396ef3a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-45bea76ff7eda3cb.js → custom-fields-d992103cc55901ae.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-51333dbd21cb37c8.js → domain-records-41242f805599feda.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domains-bde86e5f6c09da5a.js → domains-2e885f74c92f669c.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-4f9a5cc8bea7725b.js → email-templates-ff112655ad5f41e5.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-6946e78a5d43e654.js → locations-023e1895552817de.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-55a10e01dffc8039.js → organization-ac403c0886b20e20.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-102efd9199e87124.js → regulations-86062a18e081a52a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/{test-datasets-f91f22cf96566ed4.js → test-datasets-7a3396ac819c7904.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-d4a57ea18935dd70.js → [id]-8314a819837f5b2a.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{systems-648a0ff4920579ce.js → systems-21f423a7c417aa9d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{taxonomy-0b9d1a24188f65a9.js → taxonomy-6387fcc8cce872eb.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-bc4eb541906781e6.js → new-a2524414e968f862.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-45bfa04e45a7d13f.js → user-management-173ac3a1ed2b05a6.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/{webpack-63a0c45b150a1037.js → webpack-ff0cd6bff75588da.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><link rel="preload" href="/_next/static/css/304c6f148886a8d4.css" as="style"/><link rel="stylesheet" href="/_next/static/css/304c6f148886a8d4.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/2858-0b44609b6be7850b.js" defer=""></script><script src="/_next/static/chunks/2866-a73888c17a195cbe.js" defer=""></script><script src="/_next/static/chunks/9278-9b1b5970f0702668.js" defer=""></script><script src="/_next/static/chunks/699-8ca44b0de9fa20f0.js" defer=""></script><script src="/_next/static/chunks/5277-e8a036319456127f.js" defer=""></script><script src="/_next/static/chunks/409-a257e14acebcd73b.js" defer=""></script><script src="/_next/static/chunks/401-1b529d5800aa1f3a.js" defer=""></script><script src="/_next/static/chunks/9951-9b753ad7c3f51bdf.js" defer=""></script><script src="/_next/static/chunks/6780-e3d40aa17a4bf2e9.js" defer=""></script><script src="/_next/static/chunks/3450-0ba194991d0cca88.js" defer=""></script><script src="/_next/static/chunks/pages/systems/configure/%5Bid%5D-8314a819837f5b2a.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/systems/configure/[id]","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/pages/systems-21f423a7c417aa9d.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/systems","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><link rel="preload" href="/_next/static/css/34a7eb08b86ddb57.css" as="style"/><link rel="stylesheet" href="/_next/static/css/34a7eb08b86ddb57.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/678d4732-50255cc09048e643.js" defer=""></script><script src="/_next/static/chunks/2858-0b44609b6be7850b.js" defer=""></script><script src="/_next/static/chunks/2866-a73888c17a195cbe.js" defer=""></script><script src="/_next/static/chunks/9278-9b1b5970f0702668.js" defer=""></script><script src="/_next/static/chunks/3662-f6a1ddca5ee42076.js" defer=""></script><script src="/_next/static/chunks/570-c99f07161bd339cd.js" defer=""></script><script src="/_next/static/chunks/pages/taxonomy-6387fcc8cce872eb.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/taxonomy","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/7476-281ee9a8286556f3.js" defer=""></script><script src="/_next/static/chunks/4121-2bc09fc4ddbfe5cb.js" defer=""></script><script src="/_next/static/chunks/pages/user-management/new-a2524414e968f862.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/user-management/new","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/7476-281ee9a8286556f3.js" defer=""></script><script src="/_next/static/chunks/4121-2bc09fc4ddbfe5cb.js" defer=""></script><script src="/_next/static/chunks/pages/user-management/profile/%5Bid%5D-ff5738706da07801.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/user-management/profile/[id]","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/2cadb5f62dcd7c2b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/2cadb5f62dcd7c2b.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-ff0cd6bff75588da.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-39ccb07327c2c5d5.js" defer=""></script><script src="/_next/static/chunks/7476-281ee9a8286556f3.js" defer=""></script><script src="/_next/static/chunks/pages/user-management-173ac3a1ed2b05a6.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_buildManifest.js" defer=""></script><script src="/_next/static/8108ANFxs99VY7KZ_Xev2/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/user-management","query":{},"buildId":"8108ANFxs99VY7KZ_Xev2","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"""adding masking secrets
|
|
2
|
-
|
|
3
|
-
Revision ID: 7e9a2b52f498
|
|
4
|
-
Revises: d0031087eacb
|
|
5
|
-
Create Date: 2024-12-23 23:29:53.557951
|
|
6
|
-
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
import sqlalchemy as sa
|
|
10
|
-
import sqlalchemy_utils
|
|
11
|
-
from alembic import op
|
|
12
|
-
|
|
13
|
-
# revision identifiers, used by Alembic.
|
|
14
|
-
revision = "7e9a2b52f498"
|
|
15
|
-
down_revision = "d0031087eacb"
|
|
16
|
-
branch_labels = None
|
|
17
|
-
depends_on = None
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
def upgrade():
|
|
21
|
-
op.create_table(
|
|
22
|
-
"masking_secret",
|
|
23
|
-
sa.Column("id", sa.String(length=255), nullable=False),
|
|
24
|
-
sa.Column(
|
|
25
|
-
"created_at",
|
|
26
|
-
sa.DateTime(timezone=True),
|
|
27
|
-
server_default=sa.text("now()"),
|
|
28
|
-
nullable=True,
|
|
29
|
-
),
|
|
30
|
-
sa.Column(
|
|
31
|
-
"updated_at",
|
|
32
|
-
sa.DateTime(timezone=True),
|
|
33
|
-
server_default=sa.text("now()"),
|
|
34
|
-
nullable=True,
|
|
35
|
-
),
|
|
36
|
-
sa.Column("privacy_request_id", sa.String(), nullable=False),
|
|
37
|
-
sa.Column(
|
|
38
|
-
"secret",
|
|
39
|
-
sqlalchemy_utils.types.encrypted.encrypted_type.StringEncryptedType(),
|
|
40
|
-
nullable=False,
|
|
41
|
-
),
|
|
42
|
-
sa.Column("masking_strategy", sa.String(), nullable=False),
|
|
43
|
-
sa.Column(
|
|
44
|
-
"secret_type",
|
|
45
|
-
sa.String(),
|
|
46
|
-
nullable=False,
|
|
47
|
-
),
|
|
48
|
-
sa.ForeignKeyConstraint(
|
|
49
|
-
["privacy_request_id"], ["privacyrequest.id"], ondelete="CASCADE"
|
|
50
|
-
),
|
|
51
|
-
sa.PrimaryKeyConstraint("id"),
|
|
52
|
-
)
|
|
53
|
-
op.create_index(
|
|
54
|
-
op.f("ix_masking_secret_id"), "masking_secret", ["id"], unique=False
|
|
55
|
-
)
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
def downgrade():
|
|
59
|
-
op.drop_index(op.f("ix_masking_secret_id"), table_name="masking_secret")
|
|
60
|
-
op.drop_table("masking_secret")
|
fides/api/alembic/migrations/versions/a7065df4dcf1_add_finalized_fields_to_privacy_request.py
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"""add finalized fields to privacy request
|
|
2
|
-
|
|
3
|
-
Revision ID: a7065df4dcf1
|
|
4
|
-
Revises: 7e9a2b52f498
|
|
5
|
-
Create Date: 2025-07-01 14:07:36.779437
|
|
6
|
-
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
import sqlalchemy as sa
|
|
10
|
-
from alembic import op
|
|
11
|
-
|
|
12
|
-
# revision identifiers, used by Alembic.
|
|
13
|
-
revision = "a7065df4dcf1"
|
|
14
|
-
down_revision = "7e9a2b52f498"
|
|
15
|
-
branch_labels = None
|
|
16
|
-
depends_on = None
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def upgrade():
|
|
20
|
-
# ### commands auto generated by Alembic - please adjust! ###
|
|
21
|
-
op.add_column(
|
|
22
|
-
"privacyrequest",
|
|
23
|
-
sa.Column("finalized_at", sa.DateTime(timezone=True), nullable=True),
|
|
24
|
-
)
|
|
25
|
-
op.add_column(
|
|
26
|
-
"privacyrequest", sa.Column("finalized_by", sa.String(), nullable=True)
|
|
27
|
-
)
|
|
28
|
-
op.create_foreign_key(
|
|
29
|
-
"privacyrequest_fidesuser_id_fkey",
|
|
30
|
-
"privacyrequest",
|
|
31
|
-
"fidesuser",
|
|
32
|
-
["finalized_by"],
|
|
33
|
-
["id"],
|
|
34
|
-
ondelete="SET NULL",
|
|
35
|
-
)
|
|
36
|
-
op.execute(
|
|
37
|
-
"alter type privacyrequeststatus add value 'requires_manual_finalization'"
|
|
38
|
-
)
|
|
39
|
-
# ### end Alembic commands ###
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
def downgrade():
|
|
43
|
-
# ### commands auto generated by Alembic - please adjust! ###
|
|
44
|
-
op.drop_constraint(
|
|
45
|
-
"privacyrequest_fidesuser_id_fkey", "privacyrequest", type_="foreignkey"
|
|
46
|
-
)
|
|
47
|
-
op.drop_column("privacyrequest", "finalized_by")
|
|
48
|
-
op.drop_column("privacyrequest", "finalized_at")
|
|
49
|
-
|
|
50
|
-
op.execute(
|
|
51
|
-
"delete from privacyrequest where status in ('requires_manual_finalization')"
|
|
52
|
-
)
|
|
53
|
-
|
|
54
|
-
op.execute("alter type privacyrequeststatus rename to privacyrequeststatus_old")
|
|
55
|
-
op.execute(
|
|
56
|
-
"create type privacyrequeststatus as enum('identity_unverified', 'requires_input', 'pending', 'in_processing', 'complete', 'pending', 'error', 'paused', 'approved', 'denied', 'canceled', 'awaiting_email_send')"
|
|
57
|
-
)
|
|
58
|
-
op.execute(
|
|
59
|
-
(
|
|
60
|
-
"alter table privacyrequest alter column status type privacyrequeststatus using "
|
|
61
|
-
"status::text::privacyrequeststatus"
|
|
62
|
-
)
|
|
63
|
-
)
|
|
64
|
-
op.execute("drop type privacyrequeststatus_old")
|
|
65
|
-
# ### end Alembic commands ###
|
fides/api/alembic/migrations/versions/d0031087eacb_create_manualtaskconditionaldependency_.py
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"""create ManualTaskConditionalDependency table
|
|
2
|
-
|
|
3
|
-
Revision ID: d0031087eacb
|
|
4
|
-
Revises: 9e3dab26f75f
|
|
5
|
-
Create Date: 2025-07-17 21:28:20.937945
|
|
6
|
-
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
import sqlalchemy as sa
|
|
10
|
-
from alembic import op
|
|
11
|
-
from sqlalchemy.dialects import postgresql
|
|
12
|
-
|
|
13
|
-
# revision identifiers, used by Alembic.
|
|
14
|
-
revision = "d0031087eacb"
|
|
15
|
-
down_revision = "9e3dab26f75f"
|
|
16
|
-
branch_labels = None
|
|
17
|
-
depends_on = None
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
def upgrade():
|
|
21
|
-
# ### commands auto generated by Alembic - please adjust! ###
|
|
22
|
-
|
|
23
|
-
op.create_table(
|
|
24
|
-
"manual_task_conditional_dependency",
|
|
25
|
-
sa.Column(
|
|
26
|
-
"created_at",
|
|
27
|
-
sa.DateTime(timezone=True),
|
|
28
|
-
server_default=sa.text("now()"),
|
|
29
|
-
nullable=True,
|
|
30
|
-
),
|
|
31
|
-
sa.Column(
|
|
32
|
-
"updated_at",
|
|
33
|
-
sa.DateTime(timezone=True),
|
|
34
|
-
server_default=sa.text("now()"),
|
|
35
|
-
nullable=True,
|
|
36
|
-
),
|
|
37
|
-
sa.Column("id", sa.String(length=255), nullable=False),
|
|
38
|
-
sa.Column("manual_task_id", sa.String(), nullable=False),
|
|
39
|
-
sa.Column("parent_id", sa.String(), nullable=True),
|
|
40
|
-
sa.Column(
|
|
41
|
-
"condition_type",
|
|
42
|
-
sa.String(), # Use String instead of Enum to avoid auto-creation
|
|
43
|
-
nullable=False,
|
|
44
|
-
),
|
|
45
|
-
sa.Column("field_address", sa.String(), nullable=True),
|
|
46
|
-
sa.Column("operator", sa.String(), nullable=True),
|
|
47
|
-
sa.Column("value", postgresql.JSONB(astext_type=sa.Text()), nullable=True),
|
|
48
|
-
sa.Column("logical_operator", sa.String(), nullable=True),
|
|
49
|
-
sa.Column("sort_order", sa.Integer(), nullable=False),
|
|
50
|
-
sa.ForeignKeyConstraint(
|
|
51
|
-
["manual_task_id"], ["manual_task.id"], ondelete="CASCADE"
|
|
52
|
-
),
|
|
53
|
-
sa.ForeignKeyConstraint(
|
|
54
|
-
["parent_id"], ["manual_task_conditional_dependency.id"], ondelete="CASCADE"
|
|
55
|
-
),
|
|
56
|
-
sa.PrimaryKeyConstraint("id"),
|
|
57
|
-
)
|
|
58
|
-
|
|
59
|
-
op.create_index(
|
|
60
|
-
"ix_manual_task_conditional_dependency_condition_type",
|
|
61
|
-
"manual_task_conditional_dependency",
|
|
62
|
-
["condition_type"],
|
|
63
|
-
unique=False,
|
|
64
|
-
)
|
|
65
|
-
op.create_index(
|
|
66
|
-
"ix_manual_task_conditional_dependency_manual_task_id",
|
|
67
|
-
"manual_task_conditional_dependency",
|
|
68
|
-
["manual_task_id"],
|
|
69
|
-
unique=False,
|
|
70
|
-
)
|
|
71
|
-
op.create_index(
|
|
72
|
-
"ix_manual_task_conditional_dependency_parent_id",
|
|
73
|
-
"manual_task_conditional_dependency",
|
|
74
|
-
["parent_id"],
|
|
75
|
-
unique=False,
|
|
76
|
-
)
|
|
77
|
-
op.create_index(
|
|
78
|
-
"ix_manual_task_conditional_dependency_sort_order",
|
|
79
|
-
"manual_task_conditional_dependency",
|
|
80
|
-
["sort_order"],
|
|
81
|
-
unique=False,
|
|
82
|
-
)
|
|
83
|
-
# ### end Alembic commands ###
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
def downgrade():
|
|
87
|
-
# ### commands auto generated by Alembic - please adjust! ###
|
|
88
|
-
op.drop_index(
|
|
89
|
-
"ix_manual_task_conditional_dependency_sort_order",
|
|
90
|
-
table_name="manual_task_conditional_dependency",
|
|
91
|
-
)
|
|
92
|
-
op.drop_index(
|
|
93
|
-
"ix_manual_task_conditional_dependency_parent_id",
|
|
94
|
-
table_name="manual_task_conditional_dependency",
|
|
95
|
-
)
|
|
96
|
-
op.drop_index(
|
|
97
|
-
"ix_manual_task_conditional_dependency_manual_task_id",
|
|
98
|
-
table_name="manual_task_conditional_dependency",
|
|
99
|
-
)
|
|
100
|
-
op.drop_index(
|
|
101
|
-
"ix_manual_task_conditional_dependency_condition_type",
|
|
102
|
-
table_name="manual_task_conditional_dependency",
|
|
103
|
-
)
|
|
104
|
-
|
|
105
|
-
op.drop_table("manual_task_conditional_dependency")
|
|
106
|
-
# ### end Alembic commands ###
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
from enum import Enum
|
|
2
|
-
from typing import TYPE_CHECKING, Optional, Union
|
|
3
|
-
|
|
4
|
-
from sqlalchemy import Column, ForeignKey, Index, Integer, String
|
|
5
|
-
from sqlalchemy.dialects.postgresql import JSONB
|
|
6
|
-
from sqlalchemy.ext.declarative import declared_attr
|
|
7
|
-
from sqlalchemy.orm import Session, relationship
|
|
8
|
-
|
|
9
|
-
from fides.api.db.base_class import Base, FidesBase
|
|
10
|
-
from fides.api.db.util import EnumColumn
|
|
11
|
-
from fides.api.task.conditional_dependencies.schemas import (
|
|
12
|
-
ConditionGroup,
|
|
13
|
-
ConditionLeaf,
|
|
14
|
-
)
|
|
15
|
-
|
|
16
|
-
if TYPE_CHECKING:
|
|
17
|
-
from fides.api.models.manual_task.manual_task import ManualTask
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
class ManualTaskConditionalDependencyType(str, Enum):
|
|
21
|
-
"""Enum for manual task conditional dependency types.
|
|
22
|
-
|
|
23
|
-
This enum defines the two types of nodes in a conditional dependency tree:
|
|
24
|
-
|
|
25
|
-
- leaf: A terminal node that represents a single condition (e.g., "user.age >= 18")
|
|
26
|
-
- group: A non-terminal node that groups multiple conditions with logical operators (AND/OR)
|
|
27
|
-
|
|
28
|
-
Examples:
|
|
29
|
-
leaf: Used for simple field comparisons like:
|
|
30
|
-
- "user.name exists"
|
|
31
|
-
- "user.age >= 18"
|
|
32
|
-
- "billing.subscription.status == 'active'"
|
|
33
|
-
|
|
34
|
-
group: Used to combine multiple conditions with logical operators:
|
|
35
|
-
- AND group: "user.age >= 18 AND user.active == true"
|
|
36
|
-
- OR group: "user.role == 'admin' OR user.verified == true"
|
|
37
|
-
- Nested groups: "(user.age >= 18 AND (user.role == 'admin' OR user.verified == true))"
|
|
38
|
-
"""
|
|
39
|
-
|
|
40
|
-
leaf = "leaf"
|
|
41
|
-
group = "group"
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
class ManualTaskConditionalDependency(Base):
|
|
45
|
-
"""Model for storing conditional dependencies."""
|
|
46
|
-
|
|
47
|
-
@declared_attr
|
|
48
|
-
def __tablename__(cls) -> str:
|
|
49
|
-
"""Overriding base class method to set the table name."""
|
|
50
|
-
return "manual_task_conditional_dependency"
|
|
51
|
-
|
|
52
|
-
# We need to redefine it here so that self-referential relationships
|
|
53
|
-
# can properly reference the `id` column instead of the built-in Python function.
|
|
54
|
-
id = Column(String(255), primary_key=True, default=FidesBase.generate_uuid)
|
|
55
|
-
|
|
56
|
-
# Foreign key relationships
|
|
57
|
-
manual_task_id = Column(
|
|
58
|
-
String, ForeignKey("manual_task.id", ondelete="CASCADE"), nullable=False
|
|
59
|
-
)
|
|
60
|
-
parent_id = Column(
|
|
61
|
-
String,
|
|
62
|
-
ForeignKey("manual_task_conditional_dependency.id", ondelete="CASCADE"),
|
|
63
|
-
nullable=True,
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
# Condition metadata
|
|
67
|
-
condition_type = Column(
|
|
68
|
-
EnumColumn(ManualTaskConditionalDependencyType), nullable=False
|
|
69
|
-
) # leaf or group
|
|
70
|
-
field_address = Column(String, nullable=True) # For leaf conditions
|
|
71
|
-
operator = Column(String, nullable=True) # For leaf conditions
|
|
72
|
-
value = Column(JSONB, nullable=True) # For leaf conditions
|
|
73
|
-
logical_operator = Column(String, nullable=True) # 'and' or 'or' for groups
|
|
74
|
-
|
|
75
|
-
# Ordering
|
|
76
|
-
sort_order = Column(Integer, nullable=False, default=0)
|
|
77
|
-
|
|
78
|
-
__table_args__ = (
|
|
79
|
-
Index("ix_manual_task_conditional_dependency_manual_task_id", "manual_task_id"),
|
|
80
|
-
Index("ix_manual_task_conditional_dependency_parent_id", "parent_id"),
|
|
81
|
-
Index("ix_manual_task_conditional_dependency_condition_type", "condition_type"),
|
|
82
|
-
Index("ix_manual_task_conditional_dependency_sort_order", "sort_order"),
|
|
83
|
-
)
|
|
84
|
-
|
|
85
|
-
# Relationships
|
|
86
|
-
task = relationship("ManualTask", back_populates="conditional_dependencies")
|
|
87
|
-
parent = relationship(
|
|
88
|
-
"ManualTaskConditionalDependency",
|
|
89
|
-
remote_side=[id],
|
|
90
|
-
back_populates="children",
|
|
91
|
-
foreign_keys=[parent_id],
|
|
92
|
-
)
|
|
93
|
-
children = relationship(
|
|
94
|
-
"ManualTaskConditionalDependency",
|
|
95
|
-
back_populates="parent",
|
|
96
|
-
cascade="all, delete-orphan",
|
|
97
|
-
foreign_keys=[parent_id],
|
|
98
|
-
)
|
|
99
|
-
|
|
100
|
-
def to_condition_leaf(self) -> ConditionLeaf:
|
|
101
|
-
"""Convert to ConditionLeaf if this is a leaf condition"""
|
|
102
|
-
if self.condition_type != "leaf":
|
|
103
|
-
raise ValueError("Cannot convert group condition to leaf")
|
|
104
|
-
|
|
105
|
-
return ConditionLeaf(
|
|
106
|
-
field_address=self.field_address, operator=self.operator, value=self.value
|
|
107
|
-
)
|
|
108
|
-
|
|
109
|
-
def to_condition_group(self) -> ConditionGroup:
|
|
110
|
-
"""Convert to ConditionGroup if this is a group condition"""
|
|
111
|
-
if self.condition_type != "group":
|
|
112
|
-
raise ValueError("Cannot convert leaf condition to group")
|
|
113
|
-
|
|
114
|
-
# Recursively build children
|
|
115
|
-
child_conditions = []
|
|
116
|
-
children_list = [child for child in self.children] # type: ignore[attr-defined]
|
|
117
|
-
for child in sorted(children_list, key=lambda x: x.sort_order):
|
|
118
|
-
if child.condition_type == "leaf":
|
|
119
|
-
child_conditions.append(child.to_condition_leaf())
|
|
120
|
-
else:
|
|
121
|
-
child_conditions.append(child.to_condition_group())
|
|
122
|
-
|
|
123
|
-
return ConditionGroup(
|
|
124
|
-
logical_operator=self.logical_operator, conditions=child_conditions
|
|
125
|
-
)
|
|
126
|
-
|
|
127
|
-
@classmethod
|
|
128
|
-
def get_root_condition(
|
|
129
|
-
cls, db: Session, manual_task_id: str
|
|
130
|
-
) -> Optional[Union[ConditionLeaf, ConditionGroup]]:
|
|
131
|
-
"""Get the root condition for a config"""
|
|
132
|
-
root = (
|
|
133
|
-
db.query(cls)
|
|
134
|
-
.filter(cls.manual_task_id == manual_task_id, cls.parent_id.is_(None))
|
|
135
|
-
.first()
|
|
136
|
-
)
|
|
137
|
-
|
|
138
|
-
if not root:
|
|
139
|
-
return None
|
|
140
|
-
|
|
141
|
-
if root.condition_type == "leaf":
|
|
142
|
-
return root.to_condition_leaf()
|
|
143
|
-
|
|
144
|
-
return root.to_condition_group()
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from typing import TYPE_CHECKING, Any, Union
|
|
4
|
-
from urllib.parse import unquote_to_bytes
|
|
5
|
-
|
|
6
|
-
from sqlalchemy import Column, ForeignKey, String
|
|
7
|
-
from sqlalchemy.ext.declarative import declared_attr
|
|
8
|
-
from sqlalchemy.orm import Session, relationship
|
|
9
|
-
from sqlalchemy_utils.types.encrypted.encrypted_type import (
|
|
10
|
-
AesGcmEngine,
|
|
11
|
-
StringEncryptedType,
|
|
12
|
-
)
|
|
13
|
-
|
|
14
|
-
from fides.api.db.base_class import Base, JSONTypeOverride
|
|
15
|
-
from fides.api.util.custom_json_encoder import ENCODED_BYTES_PREFIX
|
|
16
|
-
from fides.config import CONFIG
|
|
17
|
-
|
|
18
|
-
if TYPE_CHECKING:
|
|
19
|
-
from fides.api.models.privacy_request import PrivacyRequest
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class MaskingSecret(Base):
|
|
23
|
-
"""SQLAlchemy model for storing secret caching information"""
|
|
24
|
-
|
|
25
|
-
@declared_attr
|
|
26
|
-
def __tablename__(self) -> str:
|
|
27
|
-
return "masking_secret"
|
|
28
|
-
|
|
29
|
-
privacy_request_id = Column(
|
|
30
|
-
String, ForeignKey("privacyrequest.id", ondelete="CASCADE"), nullable=False
|
|
31
|
-
)
|
|
32
|
-
secret = Column(
|
|
33
|
-
StringEncryptedType(
|
|
34
|
-
JSONTypeOverride,
|
|
35
|
-
CONFIG.security.app_encryption_key,
|
|
36
|
-
AesGcmEngine,
|
|
37
|
-
"pkcs5",
|
|
38
|
-
),
|
|
39
|
-
nullable=False,
|
|
40
|
-
)
|
|
41
|
-
masking_strategy = Column(String, nullable=False)
|
|
42
|
-
secret_type = Column(String, nullable=False)
|
|
43
|
-
privacy_request = relationship("PrivacyRequest", back_populates="masking_secrets")
|
|
44
|
-
|
|
45
|
-
def set_secret(self, secret: Union[str, bytes]) -> None:
|
|
46
|
-
"""Set the secret value, handling both string and bytes types"""
|
|
47
|
-
if isinstance(secret, str):
|
|
48
|
-
self.secret = secret.encode("utf-8")
|
|
49
|
-
elif isinstance(secret, bytes):
|
|
50
|
-
self.secret = secret
|
|
51
|
-
else:
|
|
52
|
-
raise ValueError("Secret must be either string or bytes")
|
|
53
|
-
|
|
54
|
-
def get_secret(self) -> Union[str, bytes]:
|
|
55
|
-
"""Retrieve the secret in its original type"""
|
|
56
|
-
secret = self.secret
|
|
57
|
-
if isinstance(secret, str) and secret.startswith(ENCODED_BYTES_PREFIX):
|
|
58
|
-
return unquote_to_bytes(secret)[len(ENCODED_BYTES_PREFIX) :]
|
|
59
|
-
return secret
|
|
60
|
-
|
|
61
|
-
@classmethod
|
|
62
|
-
def create(
|
|
63
|
-
cls,
|
|
64
|
-
db: Session,
|
|
65
|
-
*,
|
|
66
|
-
data: dict[str, Any],
|
|
67
|
-
check_name: bool = True,
|
|
68
|
-
) -> "MaskingSecret":
|
|
69
|
-
"""
|
|
70
|
-
Create a new masking secret. Handles both string and bytes secrets automatically, encrypting them for storage.
|
|
71
|
-
"""
|
|
72
|
-
return super().create(db=db, data=data, check_name=check_name)
|
|
File without changes
|