Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
How to hide the column data (not entire row) for GDPR compliance.
I have tried this. This works perfect at my desktop but when deployed and access from Access Point it does data reduction instead on masking data.
The example Marcus pointed to works for me on both Desktop and Server.
-Rob
I have tried the sample code but the data gets duplicated if there are multiple rows for a user
Below is my code:
UserList:
Load * Inline
[
USERID,School
userA,SchoolA
userB,SchoolB
userA,SchoolD
userC,<ANY>
];
Result:
LOAD * Inline
[
School,Teacher,Student,Subject,Result
SchoolA,Anne,Peter,History,80
SchoolB,Simon,Jhon,Maths,70
SchoolC,Tony,Paul,History,58
SchoolA,Stuart,Mathew,Maths,90
SchoolB,Chris,Kai,Science,82
SchoolC,Philp,Andrew,Maths,66
SchoolD,Philp_1,Andrew_1,Maths_1,77
];
ACL_Users_Step1:
load Distinct
USERID AS USERID,
'USER' AS ACCESS,
0 AS _FlagIdentified,
School as _UserSchool
Resident UserList WHERE School <> '<ANY>';
Join(ACL_Users_Step1)
LOAD Distinct School as _FactSchool Resident Result;
ACL_Users:
NoConcatenate
Load Distinct
USERID,
ACCESS,
_FlagIdentified,
_FactSchool
Resident ACL_Users_Step1 Where _FactSchool <> _UserSchool;
Concatenate
Load Distinct
USERID,
ACCESS,
1 as _FlagIdentified,
_FactSchool
Resident ACL_Users_Step1 Where _FactSchool = _UserSchool;
DROP table ACL_Users_Step1
;
ACL_Users_ANY:
NoConcatenate
LOAD Distinct
USERID as USERID,
'USER' AS ACCESS,
1 AS _FlagIdentified,
School as _UserSchool
Resident UserList WHERE UPPER(School) = '<ANY>';
Join (ACL_Users_ANY)
LOAD distinct School as _FactSchool Resident Result;
Concatenate (ACL_Users)
LOAD Distinct USERID,ACCESS,_FlagIdentified,_FactSchool Resident ACL_Users_ANY;
DROP table ACL_Users_ANY;
DROP Table UserList;
SST:
NoConcatenate LOAD Distinct
Upper(USERID) as USERID,
Upper(ACCESS) as ACCESS,
Upper(_FlagIdentified & '--' & _FactSchool) AS ACCESS_KEY
Resident ACL_Users;
SECTION Access;
SA:
NoConcatenate LOAD Distinct
Upper(USERID) as USERID,
Upper(ACCESS) as ACCESS,
Upper(_FlagIdentified & '--' & _FactSchool) AS ACCESS_KEY
Resident ACL_Users;
SA:
LOAD DISTINCT
'ADMIN' as USERID,
'ADMIN' as ACCESS,
1 & '--' & Upper(School) as ACCESS_KEY
Resident Result;
SECTION Application;
FACT:
LOAD
Upper(_FlagIdentified & '--' & School) A
S ACCESS_KEY,*;
LOAD
1 as _FlagIdentified,
Teacher as _Teacher,
Student as _Student,
* Resident Result;
Concatenate(FACT)
LOAD UPPER(_FlagIdentified & '--' & School) AS ACCESS_KEY,*;
LOAD
0 AS _FlagIdentified,
'De-identified' as _Teacher,
'De-identified' as _Student,
*
Resident Result;
DROP Table Result;
DROP Table ACL_Users;
DROP Fields Teacher,Student;
RENAME Field _Teacher to Teacher;
RENAME Field _Student to Student;
--------
When I login using ADMIN I able to see 7 rows.
When I login using userB I able to see 7 rows (userB.jpg).
But when I login using userA I able to see 10 rows (userA.jpg). The data for userA gets doubled
Please suggest, if I am missing anything
I have tried the sample code but the data gets duplicated if there are multiple rows for a user
Below is my code:
UserList:
Load * Inline
[
USERID,School
userA,SchoolA
userB,SchoolB
userA,SchoolD
userC,<ANY>
];
Result:
LOAD * Inline
[
School,Teacher,Student,Subject,Result
SchoolA,Anne,Peter,History,80
SchoolB,Simon,Jhon,Maths,70
SchoolC,Tony,Paul,History,58
SchoolA,Stuart,Mathew,Maths,90
SchoolB,Chris,Kai,Science,82
SchoolC,Philp,Andrew,Maths,66
SchoolD,Philp_1,Andrew_1,Maths_1,77
];
ACL_Users_Step1:
load Distinct
USERID AS USERID,
'USER' AS ACCESS,
0 AS _FlagIdentified,
School as _UserSchool
Resident UserList WHERE School <> '<ANY>';
Join(ACL_Users_Step1)
LOAD Distinct School as _FactSchool Resident Result;
ACL_Users:
NoConcatenate
Load Distinct
USERID,
ACCESS,
_FlagIdentified,
_FactSchool
Resident ACL_Users_Step1 Where _FactSchool <> _UserSchool;
Concatenate
Load Distinct
USERID,
ACCESS,
1 as _FlagIdentified,
_FactSchool
Resident ACL_Users_Step1 Where _FactSchool = _UserSchool;
DROP table ACL_Users_Step1
;
ACL_Users_ANY:
NoConcatenate
LOAD Distinct
USERID as USERID,
'USER' AS ACCESS,
1 AS _FlagIdentified,
School as _UserSchool
Resident UserList WHERE UPPER(School) = '<ANY>';
Join (ACL_Users_ANY)
LOAD distinct School as _FactSchool Resident Result;
Concatenate (ACL_Users)
LOAD Distinct USERID,ACCESS,_FlagIdentified,_FactSchool Resident ACL_Users_ANY;
DROP table ACL_Users_ANY;
DROP Table UserList;
SST:
NoConcatenate LOAD Distinct
Upper(USERID) as USERID,
Upper(ACCESS) as ACCESS,
Upper(_FlagIdentified & '--' & _FactSchool) AS ACCESS_KEY
Resident ACL_Users;
SECTION Access;
SA:
NoConcatenate LOAD Distinct
Upper(USERID) as USERID,
Upper(ACCESS) as ACCESS,
Upper(_FlagIdentified & '--' & _FactSchool) AS ACCESS_KEY
Resident ACL_Users;
SA:
LOAD DISTINCT
'ADMIN' as USERID,
'ADMIN' as ACCESS,
1 & '--' & Upper(School) as ACCESS_KEY
Resident Result;
SECTION Application;
FACT:
LOAD
Upper(_FlagIdentified & '--' & School) A
S ACCESS_KEY,*;
LOAD
1 as _FlagIdentified,
Teacher as _Teacher,
Student as _Student,
* Resident Result;
Concatenate(FACT)
LOAD UPPER(_FlagIdentified & '--' & School) AS ACCESS_KEY,*;
LOAD
0 AS _FlagIdentified,
'De-identified' as _Teacher,
'De-identified' as _Student,
*
Resident Result;
DROP Table Result;
DROP Table ACL_Users;
DROP Fields Teacher,Student;
RENAME Field _Teacher to Teacher;
RENAME Field _Student to Student;
--------
When I login using ADMIN I able to see 7 rows.
When I login using userB I able to see 7 rows (userB.jpg).
But when I login using userA I able to see 10 rows (userA.jpg). The data for userA gets doubled
Please suggest, if I am missing anything
Any suggestion..
The data gets duplicated when I tried the solution of the link
Mask or de-identify data for certain users using Section Access