cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
lisarinehart
Helper I
Helper I

PowerApps Portal How to Limit Page Visibility to select users

Hello!

I've created a PowerApps Portal & added all my pages, but now I need to set up the authorization for certain users to view certain pages and can't seem to find help online - I'd like users to have to authenticate (create a login) to see anything beyond the home page, THEN they see a just a few basic pages, and to see final level of 'secured' pages (i.e. with things like specials pricing/products) they must complete a form and provide us with certain info (i.e. a special #), one that we have to verify with an outside source as valid. I have a form set up in MS Forms and a flow set up previous to the portal & and know I need to set up a new CDS Entity and Portal Form tied to this entity for this 2nd 'registration' - the issue i have is how to set visibility of my pages and tie it to this form/# validation.  I cannot set up an API externally to verify this special # , and do not have a list to reference so we have to have our new customer fill out a form (I have flows set up to automate as much as I can, but it’s ultimately still a manual process at heart) & we 'manually' change their validation status from false to true.

2 main questions:

1-How do I push/require login registration, so my external users have to register when first getting to the site? there is a setting: Profile/ForceSignUp , set to false...if i change this to true, will it require them to register or login or is this just forcing them to enter profile info when they do register?  If this isn't a setting to help with this, should I instead put the directions as text on the home page (i.e. please register/login by doing 'A,B,C') and set the visibilty on all the other pages as a formula to reference authentication (and if so, what is that formula??)?

2 - IF I set up a CDS entity and form in the portal to collect this special # that we need, can I tie it to the user contact used for portal login authentication (in azure)? Or just tie it to it's own separate entity that contains a true/false value, and then set page visibility as a (another/nested) formula referencing this Boolean value in the contact or CDS entity data (again, what would the formula be)???

 

I’ve seen in so many videos that this is a capability in the PowerApps portal, but I can seem to cross that line of how to do, to toggle access for a page to point, by perhaps pointing to a CDS entity (and/or a contact item as either true or false) for reference.

We have the proper license (I believe :-)) for external users...this issue is my last big fundamental hurtle to get this portal operational.

 

THANK YOU in advance for ANY advice or help anyone can provide!!!!

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
timl
Super User III
Super User III

Hi @lisarinehart 

To set up the security for a portal, you would define web roles.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/create-web-roles

You can then define webpage access control rules to specify the areas of your site that require authentication.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/webpage-access-control

It's likely that you don't want to require authentication across your entire site, because you may want to allow unauthenticated access to the registration areas/pages.

Portal users can authenticate using Azure AAD and all users are associated with a contact record in the CDS.

There is an invitation model that is typically used and there are more details here.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/invite-contacts

Hope that's of some help.

View solution in original post

5 REPLIES 5
timl
Super User III
Super User III

Hi @lisarinehart 

To set up the security for a portal, you would define web roles.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/create-web-roles

You can then define webpage access control rules to specify the areas of your site that require authentication.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/webpage-access-control

It's likely that you don't want to require authentication across your entire site, because you may want to allow unauthenticated access to the registration areas/pages.

Portal users can authenticate using Azure AAD and all users are associated with a contact record in the CDS.

There is an invitation model that is typically used and there are more details here.

https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/invite-contacts

Hope that's of some help.

View solution in original post

Thank you for pointing in the direction of Web Roles (there are so many options, it's hard to know where to start!) - you are right, i think I don't want to require auth across the whole site, as that landing page is a good place for registration directives. Unfortunately I've explored the indentation reg option and that won't work in general, as we don't know who will be registering before hand and we don't have access to the list of people that can be accepted until they register and provide us their specific contact info and have our 3rd party check against their list  - i know...it's weirdly complex....right?! 🙂

 

Again, your help is SUPER appreciated!! I've previously set up some tentative web roles, but didn't know what settings to turn on/off, etc. & I will definitely be checking out more info on this & the web access control rules link!!! Thanks @timl 

Hi @lisarinehart 

I'm glad to be of help. Good luck with this! 🙂

Thank you @timl , I got my Web Roles entered and thanks to your direction & links, it led me to the one final piece I needed: Add record-based security by using entity permissions for portals. I believe this is exactly what I'm looking for. 

I will set home/landing page & registration with 'open' access, direct my external users after Auth registration & login to a form (tied to a CDS entity solution) and then set my 2 main created web roles up with entity permissions appropriately, then set the webpages in question to restrict read access for only those appropriate web roles.


I'm not sure if my explanation is all that clear (it's hard to summarize a complicated set up into a few sentences, LOL) but your direction was invaluable. ‌‌ Much Appreciated! 😃

 

Hi @lisarinehart 

Thanks for the update!

I'm glad you found what you were looking for, and I'm pleased that it didn't seem too difficult for you to set up the entity permissions to secure your CDS data. Hope the rest of this goes smoothly for you.

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

Power Query PA Forum 768x460.png

Check it out!

Did you know that you can visit the Power Query Forum in Power BI and now Power Apps

V3_PVA CAmpaign Carousel.png

Community Challenge - Giveaways!

Participate in the Power Virtual Agents Community Challenge

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Carousel April Dunnam Updated 768x460.jpg

Urdu Hindi D365 Bootcamp

Dont miss our very own April Dunnam’s The Developer Guide to the Galaxy! Find out what the Power Platform has to offer for the traditional developer.

Top Solution Authors
Top Kudoed Authors
Users online (4,096)