Skip to main content
Solved

Profiling with row based access

  • April 30, 2024
  • 1 reply
  • 51 views

Marcel-Jan
Star Blazer L2
Forum|alt.badge.img+1

We're currently working on a setup where different customers can see their own data in our Cloudera data lake. So when a customer looks at sample data or profiling data they should only see the row of their own data. I'm currently working on a solution for the profiling data. 

For this I want a service account for that customer to do the profiling. This service account can also only see the rows for that customer. I was thinking of creating a component for this that reads a database table with lists of customers, url resources and CIs (Hive tables) to profile. And then use a Json call that runs a GraphQL command to run the profiling as the correct service account.

 

Unfortunately the url resource in the Json Call is the only part that cannot be parameterized (as far as I can see). The url resource has the authentication (One Desktop server connection), so that will not be the way to go then.

 

Alternatively I was thinking of using authorization in the HTTP Header. Like this.

But some experiments show that the Json Call ignores this. It will use the authorization in the One Desktop server connection anyway. This also happens when I define the server connection with authorization is Basic or None.

Is there any other way around this without creating components per customer?

 

I'm also working on a Python solution, should the One Desktop way not be working. So it's not a big deal if it wouldn't work. But my team is better versed in One Desktop than Python, so the One Desktop way is preferred.

Best answer by AKislyakov

Hi @Marcel-Jan the Url Resource part is not mandatory in JSON Call step. You can put your entire address to the Url field.


But combination of Url resource with None authorization and an Authorization header should work.

In your case you need to remove the (double quotes) in the Value part. Should look like this:

And if you want to set it dynamically like this (where base64_user_password is a column name)
 

 

View original
Did this topic help you find an answer to your question?

1 reply

Forum|alt.badge.img+2
  • Ataccamer
  • 146 replies
  • Answer
  • May 1, 2024

Hi @Marcel-Jan the Url Resource part is not mandatory in JSON Call step. You can put your entire address to the Url field.


But combination of Url resource with None authorization and an Authorization header should work.

In your case you need to remove the (double quotes) in the Value part. Should look like this:

And if you want to set it dynamically like this (where base64_user_password is a column name)
 

 


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings