You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/ROOT/pages/abac-user-parameters.adoc
+14-10Lines changed: 14 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,17 +36,15 @@ Binds a single value to any Parameter in any Worksheet or Model by Parameter Nam
36
36
[IMPORTANT]
37
37
====
38
38
[#column-name-warning]
39
-
The filter rules require passing the *exact* ThoughtSpot Worksheet or Model column name the values will not bind to any column.
40
-
41
-
You must coordinate between the team that maintains the Worksheets and Models and the team that builds the xref:trusted-auth-token-request-service.adoc[token request service] if any changes will be made to a Model or Worksheet.
42
-
43
-
For the same reasons, end users of an embedded app cannot have *edit* access to any Worksheet or Model using ABAC RLS via tokens.
39
+
The filter rules require passing the *exact* ThoughtSpot Worksheet or Model column name the values will not bind to any column. You must coordinate between the team that maintains the Worksheets and Models and the team that builds the xref:trusted-auth-token-request-service.adoc[token request service] if any changes will be made to a Model or Worksheet.
40
+
For the same reasons, the end users of an embedded app cannot have *edit* access to any Worksheet or Model using ABAC RLS via tokens.
41
+
When column names change, ensure that the `is_mandatory_token_filter: true` property is set on every column where a filter rule is expected.
44
42
====
45
43
46
44
The request for a token with ABAC details can xref:abac-user-parameters.adoc#persistForUser[persist] the set of filters and Parameter values to user sessions within ThoughtSpot, after which all sessions and scheduled reports will use the persisted values until they are changed by another token generation request.
47
45
48
46
== Token request
49
-
The ABAC message to ThoughtSpot is encoded in JSON Web Token (JWT) format. The token can be used as a bearer token for cookieless trusted authentication or REST API access, or as a sign-in token to create a ThoughtSpot session, in which casethe ABAC user properties should be *persisted*.
47
+
The ABAC message to ThoughtSpot is encoded in JSON Web Token (JWT) format. This token can be used as a bearer token for Cookieless trusted authentication or REST API access. You can also use it as a sign-in token to create a session, in which case, we recommend that the ABAC user properties be *persisted*, to ensure scheduled exports remain secure after the session ends.
50
48
51
49
[NOTE]
52
50
====
@@ -119,6 +117,12 @@ When using a `persist_option` other than `NONE`, the *filter_rules* and *paramet
119
117
120
118
Persisted values for a user are used by ThoughtSpot for any scheduled reports, as well as when no other token is provided.
121
119
120
+
[IMPORTANT]
121
+
====
122
+
* When `persist_option` is set to `NONE`, it only acts as an *override*, with the values tied only to the specific token. The REST API token request with any values where `persist_option` is not `NONE` acts as an "update the user object" API endpoint even if you don't use the token generated from the API request.
123
+
* Note that the stored properties of the user are updated when the token request is successful, rather than at the first use of the token.
124
+
====
125
+
122
126
The `persist_option` has the following possible values :
123
127
124
128
[cols="1,1,2"]
@@ -148,8 +152,6 @@ In 10.4.0.cl, the `REPLACE` behavior can be achieved by making a `RESET` request
148
152
====
149
153
|=====
150
154
151
-
When `persist_option` is set to `NONE`, it only acts as an *override*, with the values tied only to the specific token. The REST API token request with any values where `persist_option` is not `NONE` acts as an "update the user object" API endpoint, even if you don't use the token generated from the API request.
152
-
153
155
Filters and parameters must be *persisted* for them to apply to user sessions when using xref:trusted-authentication.adoc#cookie[cookie-based trusted authentication] or scheduled reports.
154
156
155
157
[cols="1,1,2"]
@@ -160,6 +162,10 @@ Filters and parameters must be *persisted* for them to apply to user sessions wh
160
162
|Cookieless Trusted Authentication
161
163
|Attributes assigned to the token override the user's access control properties, without updating the user object.
162
164
165
+
|`NONE`
166
+
|Cookie-based Trusted Authentication
167
+
|Attributes assigned to the token will not be considered. The user logs in using a session cookie and the properties from the previous session persist.
168
+
163
169
|`APPEND` or `REPLACE`
164
170
|Cookieless Trusted Authentication
165
171
|Attributes assigned to the token override the user's access control properties, but the user object is also updated
@@ -173,8 +179,6 @@ Filters and parameters must be *persisted* for them to apply to user sessions wh
173
179
|Token request updates the user object.
174
180
|=====
175
181
176
-
Note that the successful *request* for a token updates the stored property of the user, rather than the first use of the token.
177
-
178
182
Persisting values opens up use cases for ABAC outside of the cookieless Trusted Authentication pattern: even if users authenticate via SAML, OIDC, or go directly into ThoughtSpot via username and password, an administrator can make a token request with a `persist_option` to write `filter_rules` and `parameter_values` to the user object.
Copy file name to clipboardExpand all lines: modules/ROOT/pages/jwt-migration.adoc
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -146,7 +146,7 @@ The API returns the configuration override details in the response.
146
146
"category": "MAIN",
147
147
"dataType": "BOOLEAN",
148
148
"description": "Flag to enable honoring of JWT Token where from Beta Endpoint.",
149
-
"current": false
149
+
"current": true
150
150
}
151
151
}
152
152
}
@@ -174,7 +174,7 @@ Choosing option 1 results in the following behavior:
174
174
. As long as `honorJwTokenParametersFromBetaEndpoint` is set to `true`: +
175
175
Your users will be logged in with the data security entitlements assigned to the JWT token generated via `/api/rest/2.0/auth/token/full` endpoint, or via the data security rules persisted on the `user` > `user_parameters` object.
176
176
. When `honorJwTokenParametersFromBetaEndpoint` is set to `false`: +
177
-
Your users will see no data (assuming you secured your Worksheet/Model columns as described in xref:jwt-migration.adoc#_step_3_flag_columns_whose_data_will_be_secured_using_the_jwt_endpoint[Step 3]) until you switch to using the `POST /api/rest/2.0/auth/token/custom` endpoint. Your instance will start using this endpoint soon after the flag setting is switched.
177
+
Your users will see no data (assuming you secured your Worksheet/Model columns as described in xref:jwt-migration.adoc#_step_3_flag_columns_whose_data_will_be_secured_using_the_jwt_endpoint[Step 3]) until you switch to using the `POST /api/rest/2.0/auth/token/custom` endpoint. Your instance should start using this endpoint soon after the flag setting is switched.
0 commit comments