Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

write unique password to see the data of that partucal person

Hi All,

 

I am trying to create a report and publish across all production operator their daily output(on mobile view)

 

But i want the report to function in this way, a seceret password is shared to them, so when they type the password on search they get to see the daily output quantity about them alone.

 

is it possible to do such thing in BI report?

 

Data table

 

data table.JPG

 

Password

 

password.JPG

 

 

 

1)ideally the report should display blank data

1.JPG

 

2. each operator was given a secret password , and they will enter in search filter their own password and can able to see their data alone. 

in the below case operator = vin, password = 2

2.JPG

 

 

operator=mar, passwoed = 5

4.JPG

 

the challenges for me are, i donot know how to make the initial data table emply, and how to make a search column or search filter where you can only enter data and wont see any hint text/number or all available password from data table. 

 

it would be very helpful if someone can help me with this, or you can also recommend me someother way so i can reach the same conclusion. 

 

the plan is to give some kind of seceret number to each operator which only they know, they go to shared report of power bi in their mobile and type their own password in the search and get to see only their data. and the initial data table should be empty in the start and search filter should not show any hint password of all possible data password available from the password table.

 

any help is appreciated.

 

1 ACCEPTED SOLUTION
avatorl
Impactful Individual
Impactful Individual

Hi @Anonymous 

Brilliant idea! And I've just found a way to implement this!

Seems to be working! Let me know if you see any flaws.

 

https://app.powerbi.com/view?r=eyJrIjoiYzkyNDA2MmUtZmU5Yy00ZjAwLTlmZWItMjMzYmQ0MjM2YjdmIiwidCI6IjYzNjBkMTZhLTk3MWQtNGQzMC1hOWE5LTdiY2I0ODUzMDhlMSIsImMiOjl9

 

Passwords for testing: power and dserw


chrome_2020-06-12_09-54-43[1].png

chrome_2020-06-12_09-55-13[1].png

chrome_2020-06-12_09-56-08[1].png

1) Install Text Filter slicer: 

2020-06-12_09-53-43.png




2) Two measures used:

Password selected := SELECTEDVALUE( Pwds[pwds] ) - jsut to show entered password on a card (not really required)

Protected Value = IF (HASONEFILTER( Pwds[pwds] ), SUM( [Value] ), BLANK() )

2020-06-12_10-00-46[1].png

P.S. I do not recommend the use of 'Publish to web' feature for sharing reports that contains really sensitive and confidential information. But if all parties using this kind of sharing understand pros and cons and accept risks - you're free to do whatever you want if it's technically possible. I belive this solution will provide you a basic level of security which is (in some cases) better than no security at all. But I take no responibility for any loses. Use row level security https://docs.microsoft.com/en-us/power-bi/admin/service-admin-rls if you're not ready to accept risks.






View solution in original post

15 REPLIES 15
avatorl
Impactful Individual
Impactful Individual

Hi @Anonymous 

Brilliant idea! And I've just found a way to implement this!

Seems to be working! Let me know if you see any flaws.

 

https://app.powerbi.com/view?r=eyJrIjoiYzkyNDA2MmUtZmU5Yy00ZjAwLTlmZWItMjMzYmQ0MjM2YjdmIiwidCI6IjYzNjBkMTZhLTk3MWQtNGQzMC1hOWE5LTdiY2I0ODUzMDhlMSIsImMiOjl9

 

Passwords for testing: power and dserw


chrome_2020-06-12_09-54-43[1].png

chrome_2020-06-12_09-55-13[1].png

chrome_2020-06-12_09-56-08[1].png

1) Install Text Filter slicer: 

2020-06-12_09-53-43.png




2) Two measures used:

Password selected := SELECTEDVALUE( Pwds[pwds] ) - jsut to show entered password on a card (not really required)

Protected Value = IF (HASONEFILTER( Pwds[pwds] ), SUM( [Value] ), BLANK() )

2020-06-12_10-00-46[1].png

P.S. I do not recommend the use of 'Publish to web' feature for sharing reports that contains really sensitive and confidential information. But if all parties using this kind of sharing understand pros and cons and accept risks - you're free to do whatever you want if it's technically possible. I belive this solution will provide you a basic level of security which is (in some cases) better than no security at all. But I take no responibility for any loses. Use row level security https://docs.microsoft.com/en-us/power-bi/admin/service-admin-rls if you're not ready to accept risks.






Anonymous
Not applicable

Hi @avatorl ,

 

Thanks for idea. and it worked great. 

 

avatorl
Impactful Individual
Impactful Individual

And one more idea is here!

Cover your headers with a white card that shows empty string.

Use this measure 

Background := IF( HASONEFILTER( Passwords[password] ), "#FFF0","#FFF" ) 

for card's background conditional formatting.
 
2020-06-12_12-44-11[1].png
2020-06-12_12-45-43[1].png
Result. Not authorized:
2020-06-12_12-46-37[1].png

Authorized:
2020-06-12_12-45-02[1].png
You can hide entire page now!

But there is cost. No interactivity, not tooltips. Do anyone know a solution?
Anonymous
Not applicable

Hi @avatorl ,

 

Thanks. i used this idea as well. I really appraciate your thinking.

avatorl
Impactful Individual
Impactful Individual

Important Update 

Duplicate every row of your passwords table (using Power Query). Replace last character of each duplicate password with "_" and add "_" to each duplicate user name. Add 'Real User' column with 1 for original rows and 0 for duplicate rows.

PBIDesktop_2020-06-12_15-56-53[1].png

Update measures. Instead of HASONEFILTER( Passwords[password] ) use this variable:

var _authorized = ( SELECTEDVALUE ( Passwords[Real User], 0 ) = 1 )

Protected Value :=
var _authorized = ( SELECTEDVALUE ( Passwords[Real User], 0 ) = 1 )
var _result =
IF (
_authorized,
SUM( [Value] ),
BLANK()
)
RETURN _result

Background :=
var _authorized = ( SELECTEDVALUE ( Passwords[Real User], 0 ) = 1 )
var _result =
IF (
_authorized,
"#FFF0",
"#FFF"
)
RETURN _result
 
User Name :=
var _authorized = ( SELECTEDVALUE ( Passwords[Real User], 0 ) = 1 )
var _result =
IF (
_authorized,
SELECTEDVALUE( 'Passwords'[Name] ),
"not authorized yet"
)
RETURN _result


This will prevent a slicer from accepting first characters of your password instead of complete password.

Never say 'it's not possible' if you din't try 😉






If I type "wer" I have access

@VictorLozovik 

Thanks for your comment. Easy to fix by adding one more set of duplicate records to Passwords table. With "_" instead of first character of a password. In this case 'wer' or 'ower' wont' open the data.




avatorl
Impactful Individual
Impactful Individual

Anonymous
Not applicable

Hi all & @avatorl ,

 

I wa working on similar thing and got stuck here.

 

How can i hide this table and display only the choosen result of searched order no through search filter?

 

I want to hide this table with a card and be visible only when an order no is searched.

 

But donot know what formula to use and how to proceed.

 

 

 

 

 

Capture.JPG

 

Any help is highly appreciated.

avatorl
Impactful Individual
Impactful Individual

@Anonymous 

sorry for the dealy, I've missed your question. I hope you already solved the problem. You can follow my instructions doesn't matter it's a password or order number. You just need to create duplicates with leadning and edning "_" to make sure partial password (order number) doesn't trigger value selection in the filter.

Anonymous
Not applicable

My general question is, "is there a way to have a sequrity roles for someone who doesnot have power bi or microsoft account, but just have access to published PBIX link", so they can enter some kind of password in the search column or in a text box and it will show only their data.

 

This is my whole idea behind my question on the post.

 

Thanks in advance. Any suggestion is welcome.

not that i know of, so you basically have you power bi open to everyone and you want to secure it within? dont think thats possible no. You will have to pay for the functionality to secure it.




If I took the time to answer your question and I came up with a solution, please mark my post as a solution and /or give kudos freely for the effort 🙂 Thank you!

Proud to be a Super User!




Anonymous
Not applicable

Ja, maybe so. i will check the possibilities. Thanks.

vanessafvg
Super User
Super User

i think you are looking for row level security you can read this very extensive blog about how to implement it https://radacad.com/row-level-security-configuration-in-power-bi-desktop




If I took the time to answer your question and I came up with a solution, please mark my post as a solution and /or give kudos freely for the effort 🙂 Thank you!

Proud to be a Super User!




Anonymous
Not applicable

Hi @vanessafvg,

 

Thanks for suggestion. I will use this idea in sharing the report with people who has microsoft user account, but for now i am sharing the power bi publish link to production operator, as they donot have microsoft account, they will just use the PBI publish link i send them to view their output. I am looking for a solution how i can create a solution/ provide security  or a password kind of thingy for someone who doesnot have microsoft / power bi account but will be simply using the published link.

 

Thanks for help.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors