on 2023 Jan 04 12:25 PM
Happy new year DWC community & SAP,
my customer noticed a behavior in a data flow which seems to be related to this remark in the SAP Help - Creating a Data Flow:
For more information, see Securing Data with Data Access Controls.
Main idea was to create a snapshot history of a quite complex relational dataset view to see the development over time. One of the base views of the relational dataset has DAC applied and is used in several other views.
Question is now if there is any option to overrule this limitation besides removing the DAC (which leads to high effort in other places). Is there e.g. a dedicated execution user name of the data flow which could be added to the DAC with full authorization etc?
Thanks in advance and best regards
Paul
Request clarification before answering.
Hi Paul,
the issue is that views protected by DAC, are evaluating the authorisation based on the application user, which is typically the DWC User. When a DataFlow reads, there is no DWC User in the application user, there is only the SQL User, that is also used as application user.
I created a view, protected by a DAC
The DAC values look like this
In the DataFlow it results in data is loaded.
The user is specific to a space and can be found in the workload class mapping (HANA Explorer).
select * from workload_mappings WHERE user_name like '<space>'
and the user we require is in the mapping SAP_DWC_WCM_<SPACE>_SPACEDISUSER
That at least worked for me.
Cheers
Hannes
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Hannes and Paul,
I have the same issue like Paul and try to solve it with like Hannes but it doesnt work.
Within the Dataflow in the source table I can preview the data but not in the target table. When I remove the DAC then it works.
@Paul: How did you solve you issue?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
We had the same issue. The solution provided by Hannes helped us!
You can use the following SQL statement.
select * from workload_mappings where workload_mapping_name LIKE '%_SPACEDISUSER'
Then insert the user from column USER_NAME into your DAC control table. You have to pick the user of the SPACE where your Data Flow is running.
User | Count |
---|---|
58 | |
10 | |
8 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.