privacyidea / FreeRADIUS

Add two factor authentication to FreeRADIUS via privacyIDEA
GNU General Public License v2.0
19 stars 17 forks source link

Add redundant privacyIDEA URLs #10

Closed cornelinux closed 4 years ago

cornelinux commented 6 years ago

Allow plugin to ask different privacyIDEA servers. If one privacyIDEA server is down, the next privacyIDEA server should be asked.

Unfortunately we have no state between the requests. So the question is, how we can remember, that one server is down. We probably need to keep track in an external persistant sourse the state of the servers (redis, file...)

We somehow need to enhance this:

[Default] 
URL = https://localhost/pi/validate/check

The best thing looks like adding a comma separated list of URLs.

We need to check the capabilites of the LWP:UserAgend. http://search.cpan.org/~ether/libwww-perl-6.31/lib/LWP/UserAgent.pm#post

Either it provides some capabitlites on its own or we need to loop over:

$ua->post()

cornelinux commented 4 years ago

In freeradius 3 we can solve this with a redundant statement and the perl config section.

https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/raddb/mods-available/perl#L61