Web server basic authentication
Web server basic authentication
Hi Guys,
I've added HTTP basic authentication to the webserver.
We failed to implement this in the past, but I think it should be stable this time.
It is currently in the dev branch.
This is the github issue: https://github.com/reefangel/Libraries/issues/154
If you get to test it, please post back here or log it into the github issue tracking whether it worked for you or not.
One point to remind is that your phone app will not work if you enable authentication.
I've added HTTP basic authentication to the webserver.
We failed to implement this in the past, but I think it should be stable this time.
It is currently in the dev branch.
This is the github issue: https://github.com/reefangel/Libraries/issues/154
If you get to test it, please post back here or log it into the github issue tracking whether it worked for you or not.
One point to remind is that your phone app will not work if you enable authentication.
Roberto.
Re: Web server basic authentication
what version of libraries will this be added? 1.11? or something or later?
Sent from my Moto X
Sent from my Moto X
Re: Web server basic authentication
The webserver authentication only works on the controller, correct?
This is not the same as the security key that is used for the portal....ie. ReefAngel.Portal(username, password)
Is that correct?
Then, using this authentication, you would use this url to communicate with your controller:
Hopefully I'm following correctly. Provided I am, I was going to implement this into my android app for those that wanted to test it out and use it.
This is not the same as the security key that is used for the portal....ie. ReefAngel.Portal(username, password)
Is that correct?
Then, using this authentication, you would use this url to communicate with your controller:
Code: Select all
http://user:pass@DEVICE_IP:PORT/
Re: Web server basic authentication
Yes, it is just basic authentication in the internal RA webserver and sending the url like you mentioned should work, although IE had problems understanding it for some reason, but firefox worked fine with an url like that.
Roberto.
Re: Web server basic authentication
ok. good to know.
i'm going to add this in (doesn't look the best, but works for now). and then allow people to test things out to see how well it works.
i'm going to add this in (doesn't look the best, but works for now). and then allow people to test things out to see how well it works.
Re: Web server basic authentication
Ok. I've got a working build for the webserver authentication. I'm going to sleep on it and verify things are working properly before I release it tomorrow. I have tested it on my controller at my desk and it works just fine communicating with a v1.1.0 controller with or without the authentication set. I am interested to see / hear how it works when the authentication is actually enabled. I may have to update my errors appropriately because I am not doing anything special for the authentication errors.
Re: Web server basic authentication
just posted a beta release of my app that should incorporate the authentication. check my thread for a link to download it.
Re: Web server basic authentication
this is awesome! you guys freaking rock!
Re: Web server basic authentication
thanks. i decided i would try to stay up on things if i could.Smotz wrote:this is awesome! you guys freaking rock!
Re: Web server basic authentication
Sorry but I am not getting it...how do I enable authentication on my RA webpage?
Re: Web server basic authentication
You need to grab the latest copy of the libraries from the DEV branch. Then you must add this to your setup() of your INO.Smotz wrote:Sorry but I am not getting it...how do I enable authentication on my RA webpage?
Code: Select all
ReefAngel.Network.WifiAuthentication("username:password");
So you could do:
Code: Select all
ReefAngel.Network.WifiAuthentication("myuser:pass4321");
Re: Web server basic authentication
This is perfect! Thank you as always.binder wrote:You need to grab the latest copy of the libraries from the DEV branch. Then you must add this to your setup() of your INO.Smotz wrote:Sorry but I am not getting it...how do I enable authentication on my RA webpage?Then, that will require that username and password combination to access your controller through the web page.Code: Select all
ReefAngel.Network.WifiAuthentication("username:password");
So you could do:Or whatever else you wanted to do. The only requirement is that string of your username:password must be 50 chars or less, including the colon (:).Code: Select all
ReefAngel.Network.WifiAuthentication("myuser:pass4321");
Can I have multiple lines for multiple usernames?
Will this affect the portal in anyway?
Re: Web server basic authentication
NoSmotz wrote: This is perfect! Thank you as always.
Can I have multiple lines for multiple usernames?
I think it will because the portal will have to use the username and password to connect to your controller. However, I believe Roberto has this implemented and working now so the portal can connect but I am not 100% positive. He (or someone else) will have to confirm this (also, I have not checked, but I'm sure you could check on the portal for some authentication).Will this affect the portal in anyway?
Re: Web server basic authentication
Gotcha - Everything is working except the portal.binder wrote:NoSmotz wrote: This is perfect! Thank you as always.
Can I have multiple lines for multiple usernames?I think it will because the portal will have to use the username and password to connect to your controller. However, I believe Roberto has this implemented and working now so the portal can connect but I am not 100% positive. He (or someone else) will have to confirm this (also, I have not checked, but I'm sure you could check on the portal for some authentication).Will this affect the portal in anyway?
Roberto, can you chime in? I cannot figure out where on the portal to set this.
Re: Web server basic authentication
Gotcha. Well, looks good so far!rimai wrote:Not implemented yet.
Re: Web server basic authentication
Was the Webserver Authentication enabled on the Portal after the update to the 1.1.1 libraries.
I uncommented it from my code and when I load the portal I get Unreachable Address and it pulls the info from the database.
When I comment it out again the portal works fine.
With the xxx's representing my actual password.
It is in my setup section.
Does the password need to be the same as what the portal uses or the Portal key?
For example the portal or forum password maybe ABCDefgh but my Portal key is AbCdEfGh
I uncommented it from my code and when I load the portal I get Unreachable Address and it pulls the info from the database.
When I comment it out again the portal works fine.
Code: Select all
ReefAngel.Network.WifiAuthentication("Sacohen:xxxxxxxx");
It is in my setup section.
Does the password need to be the same as what the portal uses or the Portal key?
For example the portal or forum password maybe ABCDefgh but my Portal key is AbCdEfGh
Re: Web server basic authentication
I tried changing my forum password to match my Portal Key and the Server Authentication in my code and still got Unreachable Address.
Re: Web server basic authentication
following
Re: Web server basic authentication
This wouldn't happen to be the reason I've been getting authentication errors is it?
Re: Web server basic authentication
Authentication errors where???
Have you added the web authentication to your code?
Have you added the web authentication to your code?
Re: Web server basic authentication
I get it constantly on the Android app, I haven't added any code.
Re: Web server basic authentication
Then no.
The Android app has the authentication in it already.
Try changing your timeout time and # of retries.
The Android app has the authentication in it already.
Try changing your timeout time and # of retries.
Re: Web server basic authentication
I added controller authentication username and password fields to your user profile page.
Please go there and enter the same username and password you coded in your controller.
The portal should recognize it and apply the authentication automatically.
Please let me know how it goes.
Please go there and enter the same username and password you coded in your controller.
The portal should recognize it and apply the authentication automatically.
Please let me know how it goes.
Roberto.
Re: Web server basic authentication
Where are the authentication username and password fields?
I don't see them.
I looked under the portal settings and nothing new is there.
I don't see them.
I looked under the portal settings and nothing new is there.
Re: Web server basic authentication
On your forum user profile page.
It's a more secure place to have them stored.
It's a more secure place to have them stored.
Roberto.
Re: Web server basic authentication
Works great. Thanks.
I don't really use the U-App, but it would need to be added to that when you have a chance.
The Andiod App works great.
I'll try to get Russ at Reftronic to implement something on this page.
I don't really use the U-App, but it would need to be added to that when you have a chance.
The Andiod App works great.
I'll try to get Russ at Reftronic to implement something on this page.