Segment
Implementation Summary
Fidesops uses the following Segment endpoints to retrieve and delete Personally Identifiable Information (PII) when processing a Data Subject Request (DSR). Right to Access and Right to Delete (Right to Forget) support for each endpoint is noted below.
Connection Settings
Fidesops provides a Postman collection for easily establishing connections to your third party applications. Additional connection instructions may be found in the configuration guide.
Deletion requests are fulfilled by masking PII via UPDATE
endpoints. To give fidesops permission to remove PII using DELETE
endpoints, ensure the masking_strict
variable in your fidesops.toml
file is set to false
.
Example Segment Configuration
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158 | saas_config:
fides_key: segment_connector_example
name: Segment SaaS Config
description: A sample schema representing the Segment connector for fidesops
version: 0.0.1
connector_params:
- name: domain
- name: personas_domain
- name: workspace
- name: access_token
- name: namespace_id
- name: access_secret
client_config:
protocol: https
host:
connector_param: domain
authentication:
strategy: bearer_authentication
configuration:
token:
connector_param: access_token
test_request:
method: GET
path: /v1beta/workspaces/
endpoints:
- name: segment_user
requests:
read:
method: GET
path: /v1/spaces/<namespace_id>/collections/users/profiles/user_id:<user_id>/metadata
param_values:
- name: namespace_id
connector_param: namespace_id
- name: user_id
identity: email
client_config:
protocol: https
host:
connector_param: personas_domain
authentication:
strategy: basic_authentication
configuration:
username:
connector_param: access_secret
- name: track_events
requests:
read:
method: GET
path: /v1/spaces/<namespace_id>/collections/users/profiles/<segment_id>/events
param_values:
- name: namespace_id
connector_param: namespace_id
- name: segment_id
references:
- dataset: segment_connector_example
field: segment_user.segment_id
direction: from
data_path: data
pagination:
strategy: link
configuration:
source: body
path: cursor.url
client_config:
protocol: https
host:
connector_param: personas_domain
authentication:
strategy: basic_authentication
configuration:
username:
connector_param: access_secret
- name: traits
requests:
read:
method: GET
path: /v1/spaces/<namespace_id>/collections/users/profiles/<segment_id>/traits
query_params:
- name: limit
value: 17
param_values:
- name: namespace_id
connector_param: namespace_id
- name: segment_id
references:
- dataset: segment_connector_example
field: segment_user.segment_id
direction: from
data_path: traits
pagination:
strategy: link
configuration:
source: body
path: cursor.url
client_config:
protocol: https
host:
connector_param: personas_domain
authentication:
strategy: basic_authentication
configuration:
username:
connector_param: access_secret
- name: external_ids
requests:
read:
method: GET
path: /v1/spaces/<namespace_id>/collections/users/profiles/<segment_id>/external_ids
param_values:
- name: namespace_id
connector_param: namespace_id
- name: segment_id
references:
- dataset: segment_connector_example
field: segment_user.segment_id
direction: from
data_path: data
pagination:
strategy: link
configuration:
source: body
path: cursor.url
client_config:
protocol: https
host:
connector_param: personas_domain
authentication:
strategy: basic_authentication
configuration:
username:
connector_param: access_secret
data_protection_request:
method: POST
path: /v1beta/workspaces/<workspace_name>/regulations
headers:
- name: Content-Type
value: application/json
param_values:
- name: workspace_name
connector_param: workspace
- name: user_id
identity: email
body: '{"regulation_type": "Suppress_With_Delete", "attributes": {"name": "userId", "values": ["<user_id>"]}}'
client_config:
protocol: https
host:
connector_param: domain
authentication:
strategy: bearer_authentication
configuration:
token:
connector_param: access_token
|