Skip to content

Commit e4096e6

Browse files
Added security_invoker (#42)
Co-authored-by: unknown <unknown>
1 parent e71edd9 commit e4096e6

File tree

2 files changed

+16
-9
lines changed

2 files changed

+16
-9
lines changed

forward_engineering/ddlProvider.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -441,9 +441,10 @@ module.exports = (baseProvider, options, app) => {
441441
? `check_option=${viewData.viewOptions?.check_option}`
442442
: '';
443443
const security_barrier = viewData.viewOptions?.security_barrier ? `security_barrier` : '';
444+
const security_invoker = viewData.viewOptions?.security_invoker ? 'security_invoker' : '';
444445
const withOptions =
445-
check_option || security_barrier
446-
? `\n\tWITH (${_.compact([check_option, security_barrier]).join(',')})`
446+
check_option || security_barrier || security_invoker
447+
? `\n\tWITH (${_.compact([check_option, security_barrier, security_invoker]).join(',')})`
447448
: '';
448449

449450
const getCheckOption = viewData => {

properties_pane/view_level/viewLevelConfig.json

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
* Copyright © 2016-2017 by IntegrIT S.A. dba Hackolade. All rights reserved.
33
*
44
* The copyright to the computer software herein is the property of IntegrIT S.A.
5-
* The software may be used and/or copied only with the written permission of
6-
* IntegrIT S.A. or in accordance with the terms and conditions stipulated in
7-
* the agreement/contract under which the software has been supplied.
5+
* The software may be used and/or copied only with the written permission of
6+
* IntegrIT S.A. or in accordance with the terms and conditions stipulated in
7+
* the agreement/contract under which the software has been supplied.
88
In order to define custom properties for any object's properties pane, you may copy/paste from the following,
99
making sure that you maintain a proper JSON format.
1010

@@ -69,8 +69,8 @@ making sure that you maintain a proper JSON format.
6969
]
7070
},
7171
// “groupInput” can have the following states - 0 items, 1 item, and many items.
72-
// “blockInput” has only 2 states - 0 items or 1 item.
73-
// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing
72+
// “blockInput” has only 2 states - 0 items or 1 item.
73+
// This gives us an easy way to represent it as an object and not as an array internally which is beneficial for processing
7474
// and forward-engineering in particular.
7575
{
7676
"propertyName": "Block",
@@ -98,7 +98,7 @@ making sure that you maintain a proper JSON format.
9898
"propertyKeyword": "keyList",
9999
"propertyType": "fieldList",
100100
"template": "orderedList"
101-
},
101+
},
102102
{
103103
"propertyName": "List with attribute",
104104
"propertyKeyword": "keyListOrder",
@@ -162,6 +162,12 @@ making sure that you maintain a proper JSON format.
162162
"propertyKeyword": "security_barrier",
163163
"propertyType": "checkbox",
164164
"propertyTooltip": "This should be used if the view is intended to provide row-level security."
165+
},
166+
{
167+
"propertyName": "Security invoker",
168+
"propertyKeyword": "security_invoker",
169+
"propertyType": "checkbox",
170+
"propertyTooltip": "This option causes the underlying base relations to be checked against the privileges of the user of the view rather than the view owner."
165171
}
166172
]
167173
},
@@ -420,4 +426,4 @@ making sure that you maintain a proper JSON format.
420426
}
421427
]
422428
}
423-
]
429+
]

0 commit comments

Comments
 (0)