Password protecting certain touch panel pages
John Paul
Posts: 143
I have certain settings touch panel pages for which i want to give access control.
Now each panel comes with four passwords, how do i put a keypad to point to any one of them so that when i click on a button, the keypad pop ups and the password entered will be one of the four passwords. This way if the client wants to change the password in the future, he can change and the programming doesnt have to be modified.
Now each panel comes with four passwords, how do i put a keypad to point to any one of them so that when i click on a button, the keypad pop ups and the password entered will be one of the four passwords. This way if the client wants to change the password in the future, he can change and the programming doesnt have to be modified.
0
Comments
If you're doing your panel page/popup navigation from code, this is not a problem.
Make your own keypad, check the password, send the command. Pretty simple.
If you don't want to do the whole page navigation in code, you can do a manual/passive page flip on the TP to pop up your password page then have your code process the password and navigate to the destination page.
In my experience though, password protections are a pain for the end user. 90% of the time they think they need it, then they end up asking me to just remove them.
--John
I can also attest to the password being a pain in the 'p'*** for the client. I have yet to have a client ask for one and later ask for it to be removed. It's happened every time. This is a drag if you try to come up with some trick password schema and actually spend the time figuring it out.
Thanks Guys for giving me the tips but i am thinking i dont want to use my saved passwords but each panel has its own four passwords which can be changed right? So the client has option to change password and i just ve to call the system keypad and then just check if the passwords are matching.Any idea on implementing this feature
You can do this a lot slicker, but we'll keep it easy to illustrate the point.
So, let's say we setup buttons 101,102,103,104 to be the "call up the keypad so a user can enter one of their passwords" on the access page. When they hit one of those buttons we call up the keypad and set the flag for which touch panel they're at. I'lll use a button stack but I'd normally use an array.
Okay, so now we know what they're trying to do. Once they hit done on the keypad we get the password from their entry.
]
This crude example allows for 4 passwords per touch panel and each touch panel has it's own set of passwords. You can create another page/popup for the user to enter in thier passwords.
that's one way to do it.
Ppl,
I dont want to store a bunch of passwords in the code, .i want to check if the password fed is the same as the one in the protected settings of the panel
If you are under the protected settings of any panel, you have an option under 'other settings' to go to 'cache' and 'password' 's page. Under 'Passwords', you have option to change the four passwords and user access.
Now when i get a keypad press after the user feeds the passwords, it has to check with the password list under the panel and see if its one of them.
You probably don't have an option. There are commands that can set the passwords, but none that get them from the panel.
you can write code that will take whatever the user types in and send it to the panel to change the passwords but not check against what's already there. So, the problem is that there still needs to be some kind of main user password that you set otherwise anyone will be able to go in and change passwords.
The doing it form code option gives you much more control and ability. But, there are many threads on this forum arguing the 'run the panel from code' vs. 'run the panel from the panel' debate. I do not wish to further contribute to the argument.
I've only ever used the TPs passwords to allow a user to undock a panel but as far as restricting access to pages I'm not sure how possible that may be. There is a command in PI for password page flip which might just work if you let the display time out and go to a splash page where you have to touch a button to go to the main page which you've already set up with the password page flip command.
To many unknowns for my brain to process so I'd opt to handle it in code where I know what's going on. Then you can do other stuff like allow full access when the homeowners are there whhich you can determine via the security system being diarmed with their code.
Thanks Eric,
I get your point. The client over here is in the AV field and he knows about touch panels. Now he just wants to restrict access to the house cleaning staff, these pages in the panels.
Now but like you said its easier to feed our own passwords
I take a hybrid approach - yes, it's one way, you can't extract it, but if you always set it from code, your code can store what you set in a persistent variable. I had the exact situation as the original poster, and whipped up a module for the homeowner to change his panel passwords himself ... it did every panel in the house at one time, so it really made life a lot easier. It's also far easier to set the panel password than to parse your own and pass/fail it.
Some direction on this would be to have a "change password" page and have the user enter the existing password and then the desired password. Compare the entered password against the stored password and if it's correct then change the password to the second entry:
This could be expanded to multiple users each with their own passwords, level of access, panels that they're allowed to access, etc...
--John
--John
I second your thoughts on the experienced end users, they make my life a hell with their modifications
Or they start their own comapnys. (Savant) Perhaps that's why I get annoyed every time I talk to their CEO.
I can explain a way to do it. Go to the button properties of the button you want to flip to the protected page. Look for the password protected property and select password protected to password1,or 2 etc...
In the data event for the touch panel. track the page flips in the panel. your logic would have to say if the security keypad pops up and the the next page to show up after that is the 'Secret page' the password was typed correctly
If you want the end user to change the passwords without going into protected setup
1. In tp4 select file open system page template. Find the buttons for changing the password and copy and paste it into your page.
Finally got the answer i wanted .