How to redirect users to the Power Apps app from SharePoint

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] hey everyone this is Daniel and in today's video I'm going to talk about how to redirect users to the power apps app especially if you are using SharePoint lists and instead of using the SharePoint list form or the quick edit functionality how do you go ahead and redirect them to the power apps app now Before we jump into all the details I know some of you are thinking is that Daniel why do I even want to do this and there's actually a very simple and a very valid reason for that something you should be aware of if you are using the SharePoint list as a connected connector and that is that when it comes to the security or the power amps granted I gotta give you access to the app but the main security is connected to the backend connector which is SharePoint list so two things you have to do is you've got to go ahead and give people access to that SharePoint list over there and then the app has to have that connection so if you use the app you've got to have that read and write capability all the way down to that SharePoint listen not just the app maker but the app user as well so before I jump into the details of you know how are we gonna do that and how they're gonna find a good workaround for that and some security trips tips and tricks I can show you were there I won't actually show you how this app solution works over here and it also factors in the tricks that I've shown you so here is the app right here's the power apps app that everybody will be using and it will go ahead and first save the data to the first list that's correct there's actually gonna be two lists but I'll talk more about that later on so it first goes ahead and saves it to the first list then what happens is using power automates flow we do a security check the security check is to see did this data come in through power apps or did it come in through that sharepoint customized form or through the quick edit option over there if it is a legitimate power apps entry then it'll go ahead and save that data to the secondary list over there it goes ahead and deletes the data from the primary list so I think you're already understanding that the primary list of the first list over there is just a temporary location to house the data that's basically the functionality over there the main data is stored in the secondary SharePoint list or there and then after it is stored over there it goes ahead and you know store the blood the process stops over there the second functionality is that if the user somehow stored the data using directly that SharePoint list number ones functionality we quick edit or customize form the the the we are able to find that out is hey this was not the entry didn't come in through the power apps form it came in directly through the SharePoint list number one and then from there on in immediately go ahead and delete that item it sends the email notification to user saying hey you gotta go and use the apps over there and that's basically how the process works now I'm gonna go ahead and share that tip and tricks that I have over here so all in all this is what I'm gonna do is I'm gonna show you how to use the SharePoint connector in the app no I don't mean by going ahead and setting up the SharePoint connection and putting in the app that's that's not what I mean I'm gonna show you that in reality there's a SharePoint connector and there's actually two connections coming in which other two SharePoint lists that's what I'm gonna talk about I'm also going to talk about how those permissions are set up set up on the SharePoint list because you got to think about that I need to show the data that's coming from the SharePoint list but only one of them I need to be able to save the data or there so how do I do that I'm gonna walk you through that process over there second thing is how I'm gonna plan the viewing and the saving of data and that's again comes up to you know some of the SharePoint list views that I'm gonna show but how I'm gonna save that data so two and three are very close to each other how I'm gonna configure the SharePoint lists and that's basically configuring it with the views over there and also configure the permissions of the SharePoint list and then finally how the flow works so what I'm gonna do now is Before we jump in and see how the the logic works behind that so I'm just gonna go to to two demos first demo will be done by me I'm the app builder so how I am able to go ahead and run the app and how the flow goes ahead and saves the data second add the demo well show us through the everyday user and how the everyday user is able to go ahead and save the data using the app and then how he or she is able to try to do the work along by going by finding that SharePoint list and going ahead and finding I mean making an attempt to use the quick edit functionality and we'll see what happens over there all right so as always enough with the talking let's jump into the demo let me get out of this app over here I mean this PowerPoint presentation and then I'll jump in first with that first time we talked about which is gonna be me I'm the app maker and you can actually see over here that's me alright so here is the app so I'll go ahead and open it up I'm gonna close this I'll just open up the app and me will I'll go ahead and make one entry because I just want to show you that it works now what happens is the app directly goes and opens up this screen over here but if you go to the home screen it basically says that you currently have no hotel reservations and now you guessed it this is my infamous example that I use all the time is just making a hotel reservation entry over there so that's the same example I'm doing it went and checked that right now there is no entry made at all which means there is no entries in the SharePoint list as well which means I gotta click on the plus icon and put in an entry so it's a very simple entry so I just put that in because the apps the easy part there's no emphasis on the app over here and how the app works just change some things we can know the difference of code five four three two one all right that's fine I'll just change the departure date to the attending a conference save yes so right now what's happened is it is going to go ahead and save the data so as I have the maker I know that the temp the data is actually coming to this SharePoint list now this SharePoint list is going to be a temporary location all right now there's a power auto make full running in the backend its flows kicked off already so in a few seconds what you're gonna notice is that the data is gonna disappear from this primary location and since me as Daniel Christian used the app to do it which is the correct way it will validate that the flow goes ahead and validates it and then it will take the data from here any second and it moves it over to the secondary loss this is the secure SharePoint list for that app I'll just give it another second I'll just refresh it over here I see the data already came through over here which means if i refresh it it's gone over here all right so this is the verification pieces that I'm securing the place the app saves the data right here but that list everybody has access to so from a security standpoint I'm moving it from here to the secondary secured list but we'll talk more about that I'm gonna jump now over to logging in as an other user this user is Gabriel once the app were shared with Gabriel Gabriel got this email notification or he can log into power apps and he will see that the app is available for him over there but for the sake of simplicity I'm gonna click on that and I'll say open up the app the same type of pop-up screen opens up for Gabriel because he's not actually done an entry entry before so he goes straight to the hotel reservation but now even though I which is Daniel made an entry Gabriel still sees this over there because I'm going ahead and filtering the data to see that right now there is no entries done by Gabriel over here alright so that's just a little tip that I use a filter functionality based on the login user and that there's no entries by the login user in the SharePoint list then it goes ahead and just shows me that so that was the easy part I'm gonna come over here and now Gabriel is doing an entry Gabriel Christian five-four-three-two-one South Boulevard State this will do the arrival date on the 18th family vacation say that are you sure temporary you see this per minute refresh is you know that goes away so that's not this is not the place to worry about and then I'll go ahead and jump out and I'll go back straight as me as the maker and I'd refresh this place Gabriel's data is temporarily available over here see it shows up over here and then any second it's gonna disappear from here and it's going to go into the SPE securely storia alright the secondary list so i refresh it you will see any second the you know the flow is running and the now we will have two entries over here all right so to say the second entry sees Gabriel's new when I come in it disappears from here now let's go through the third scenario where Gabriel is very SharePoint savvy now Gabriel saw that here that app name was something called as a hotel reservation let me jump in over here Gabriel is pretty savvy you know he knows that hey this is a pretty you know the app name is called as hotel reservations so let me just jump into the SharePoint list you know he's got a few ideas of what the SharePoint list could be and key thing is through the SharePoint search she could actually come in and find out you know go through the few sites that he already he already has access to and just start typing in hotel you know he's something to do with hotel and then he can find out that list so that's basically how he's able to find out because he's got an access to the list he will be able to know hey there is there is something Oracle reservations so as any other savvy SharePoint user he comes into the content section I said oh I do see a hotel reservation list over there I'm gonna click on that and lo and behold that is the list where that SharePoint data is being stored so again it's nothing that he did any bad things he just has access to this because that's how power apps works but over here there's a couple of things we can do from a power apps maker standpoint to make this very secure and that's the whole concept of this video is how can I make this secure so I get back into the Gabriel's role over here alright so Gabriel comes in over here and now he's gonna say well let me just try submitting it as a form so I click in new and BAM that shows up over here so that's the first security thing that you as an app maker can do is you can enforce a form to show up over here saying that this form is now available as a web app click here to access this so you've already made that first attempt right off security is that now even with the end user tries to click on the new item to actually get the customize form the default form doesn't show up and if there is a customized form it's just that simple form it says that alert this is not available you got to go use the app and put the link over there so you've taken care of that first possibility all right but let's let's take it a step further that Gabriel is savy all right so what he's gonna do is alright I couldn't do it as a new item I'm gonna try the quick edit so I do a quick edit over here I click on the quick edit shows up so let's try Gabriel Christian you know to Main Street put in some information you know just try to kind of spice things up a little bit zero two zero two zero arrival date I'm gonna change that to zero five zero one twenty eight twenty I'm just typing in I could have you know go ahead and clicked on this as well just completely fine either way it works and after I do this I could select the pet and then if I just hit enter it comes into the next row over here or I can just click on exit and Gabriel has successfully saved data in that list my gosh what do we do to solve that because he has found a way of not using the app but directly putting the entry over there but has he really been that smart or born we the app makers smarter than him and it's actually the latter one right so I'm gonna actually wait for a second over here I'm gonna keep refreshing because you will see what's happening any second now it's gonna disappear from there and I'm gonna say but Daniel that's normal it disappears from here and it goes and saves it in that secondary location we'll test that all right this way wait for this thing to disappear it disappeared you notice that an email pop-up came over there but what's what's one two that let's jump back in as a maker was the hotel reservation obviously there is nothing in the hotel reservations over here let's go to that secure list secure list we knew that they were all ready to write I'm refreshing and the third one hasn't shown up so now let's go take a look at that email which Gabriel guard alright so we go to the email and there is actually a new conversation that's come up over here and it's telling us that hi Gabriel Christian the new item you added to that list has been deleted you need to use the the new online feature to submit the submit the request so the Flo was smart enough to go ahead and catch that um this entry was actually not put the correct way you've got to use the apps form and it sends a notification to is that hey you did it the wrong way so I've gone and deleted that entry you gotta go and use the form so now we've taken care of it from the second point as well we went ahead and in the first way we took care of this way we'd be pretty put up the caution and told them go use the form but even if the end user uses the quick edit way we've got a really smart flow running in the backend which catches that and goes ahead and you know deletes that and sends a notification over here so you understood the process of how this is working we've really secured the data from that SharePoint list and form the end users actually don't even see what happens over here they've come to the primary list they don't see it it actually goes ahead and saves in the backend so now I'm gonna pop up on the hood of this app let's figure out what's going on all right because there's an app as well as a flow all right so I'm gonna come back in a snowmaker and here was the app in fact if i refresh it since there is data over here it should show up some other data as well but okay that's that's not the whole point of this app all right so I'm gonna come over here oh and by the way another tidbit I'll show you is if you notice vanilla Gabriel walked in he sees the app over here not that way this way you see that he doesn't see the lock functionality but the maker which is me I see the loire functionality because I'm going I'm going doing the visible and invisible so that the maker can actually come in and see all the entries the one which was put by Gabriel and put by me over there very simple way you go ahead and do the visible and invisible just by filtering it based on who's logged in whoever is logged in to do a validation check with your own login emails name and that's how it works okay just another tidbit I throw out over there all right so I came in and a couple of things are going on first over here alright so when the entry is made all the form is filled out and everything you know the the app is actually very simple come in over here galleries there you know if you click on it it does of you again easy not not the you know big deal over here entry saying going head and filling on all the forms that I showed over there and you know how I'm very you know a big proponent doing the whole trust but verify said they clicked on that and now let's look at this entry over here right everything is the same except for this person over here it is call control is true which means I am validating just by that one little extra column is that did Daniel or the user used the app if it has used the app then set the control value as true now that control value or the control place is actually a control column that I've put in SharePoint listen let me show you that I came over here by default and in the default view I don't have it over here alright and there's no data to begin with so there's no way the end user can even figure out what the control value is but if I just go to the list settings and the list settings you'll actually see that I've got that control column and I'm calling it as a single line of text all right just nothing fancy it's just the control over there now what happens is since I have set this data I mean submitted the data to the SharePoint list through the app that control value becomes true alright that's the way I can do it if it goes through the SharePoint list that control values gonna be blank so let's see how flow looks at all this data and does its magic in the backend so now I'm going to focus my attention on the flow side so this is the flow that I call that just call it as secure SharePoint apps and the first thing I'm doing is I'm kicking off the app when a new item is created in the hotel reservation list right so in the hotel reservation list the trigger is when the new item is added over there then I'm doing something funky I'm doing I'm validating that was the control value set to true remember that true is coming only from the power apps it will not come and it's used with the quick added functionality in the SharePoint list so if it is set to true we know for sure that this is coming from power apps all right which means if it's coming from power apps then I'm gonna take that entry I'm gonna store it in my secure SharePoint let's do it and after it's stolen my security upon this I'm gonna delete it from the front of the primary list because I'm already storing it over here all right but if it is not true which means we know for sure that Gabriel actually did use the quick edit functionality I'm gonna send that email and that email was the one that I just showed you - Gabriel got that email I said hey your SharePoint has been deleted you need to go to this functionality and I need to change that over there and then it also goes ahead and deletes it so you see how the magic of flow in the backend was the brains behind the whole option right because in power apps thanks to power apps I was able to validate that yes this is a true entry using power apps and then all based on that little tidbit that I'm sending it to flow it is able to do all this magic over here all right so that's basically how I can go ahead and I validate and make sure that the user is using the forms over there I mean the power apps and not using the SharePoint list even though he was able to find the SharePoint list we've taken all the levels of security over them now I know there's some of you who are pretty sharp all right I know who those people are in the back of your mind it is just bugging you it's telling you that Daniel I get it this is all cool but you did save the data into the secondary list which is the SharePoint list or there and then the user which was Gabriel when Gabriel came in he is able to see all that list which is stored in the SharePoint secure list the secondary list order and just to validate that I'll come in over here on the new form when I click on this the data is coming from the SP list so Daniel that person actually does have access to that list over there so how are you validating that this is where you do you really use the magic of SharePoint option of breaking the inheritance of that list and only allowing the maker of the apps to send the data over so let me show you what that means right so in the original list which was hotel reservation everybody needs access to it so when I come over here to the list and go to permissions on the list and I need you guys to focus on this cuz this is a big deal this is how it's by default everybody all the members of the site have access to this which means Daniel has access to it and other people including Gabriel has access to this as well that's how he was able to save that data but they have full team site member access which means they can do adding editing controlling contribute level accesses what they have over here let's switch over to the second list over there all right the secure SP list I'm gonna come in over here and I'm going to now go to the list settings in the list settings when I go to permissions for the sake of this simplicity I've actually just put in individual users you could add some groups to that or you could use the existing office 365 groups whatever works but you got to go ahead and break the inheritance over here as you can see I have gone ahead and broken the inheritance and over here the people are basically allowing two different in various bunch of permissions and you can see Daniel Christian he's got full edit level access over here the Elijah and Gabriel have only read level access so that's basically how it's working is that I have got to give them access read level access over here and the reason I'm doing the read level access is so that they can go ahead and when they come in they can see their data over there now again you might ask is that Daniel I don't need to see them let's give them access to the list I could just use a collection when the app opens up just take the data from that SharePoint list and Rafa Nate the collection think about it you will still need any user still needs that read access to that SharePoint list and that's how they're able to take it and drop it into a collection so taking and dropping it into a collection really doesn't solve it now what you could do though is really go crazy with this and factor in flow airflow take when the app opens up the power ab c--'s who the user is sends that the flow of flow goes and gets both the data it stores it somebody generally you could go really crazy with this but I'm keeping this very simple and give you ideas so now you can go ahead and tinker around with this and you know making what works for you but I just want to point you out is that that read level access to that secondary list is important for the sake of this functionality so that when Gabriel comes in and looks at it he is still able to see only his entries in that SharePoint list over there now I understand that then the search has you know has crawled in SharePoint Elijah I mean Gabriel could go ahead and actually see that list or that I completely get it that's where you can put in some of your mad SharePoint skills and actually filter out some of those the views on that SharePoint list or that the secondary one so that when I cut user comes in they can only see their stuff over there you know you can play around with the SharePoint list views and again Mina prioritize it to only what that is but as a whole I've kind of walked you through the process of how we can secure now the SharePoint list which is the datasource thanks to power apps I can validate that the data is actually coming in from power apps and it didn't come in from the SharePoint list if the user was smart enough to find the SharePoint list then we've also got some workarounds over there first is in that customized form we've made it so that no and she can go through that form there's actually a link in the form to go use the app if the user was smart enough to use that edit functionality to put some quick items over there again Flo catches it because remember through that quick edit functionality it doesn't have that magic in a variable which is true which only goes through power apps so Flo catches that Flo says that and this was come through a power apps through a list so I'm gonna go ahead and delete that and tell the user nope you gotta go use that app so that so I've kind of played around with this and I've kind of come up with this foolproof way that you will have to force the users to go use the app and if they are smart enough there is still some workarounds over here so hopefully this was helpful to you at least start with this idea of how to go ahead and put some security and then go ahead and enhance enhance think you know your own functionalities over there you figured out something great perfect go ahead and add that to the comment sections over there and what I'll do is I also go in and submit this I mean I approve upload this to my onedrive and I'll put that link down here that way you can have access to that app as well but as always keep power wrapping [Music]
Info
Channel: Daniel Christian
Views: 2,308
Rating: 5 out of 5
Keywords: powerapps tutorial, Daniel Christian Power Apps, Using SharePoint Customized Forms, Secure SharePoint lists that are connected to Power Apps, SharePoint Customized Form, SharePoint List Customized Form, SharePoint with Power Apps and Power Automate, Secure SharePoint list connected to PowerApps, Secure SharePoint list using Power Automate, powerapps tutorial for beginners, powerapps forms, powerapps tutorial sharepoint, How to redirect users to the Power Apps app from SharePoint
Id: 2jeG-1uScaU
Channel Id: undefined
Length: 24min 10sec (1450 seconds)
Published: Fri May 01 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.