wildcard/regex Auth-Type in authenticate section
Zenon Mousmoulas
zmousm at noc.grnet.gr
Fri Jul 25 17:58:14 CEST 2014
On 2014-07-21 15:27, Alan DeKok wrote:
> Zenon Mousmoulas wrote:
>> Apparently rlm_pap and rlm_mschap don't do this. Can you say more
>> specifically what other modules do this?
>
> Can you say why you care? Does it matter? Or are you just
> nit-picking?
It mattered because I was trying to understand the difference between
rlm_eap and rlm_ldap in this context. Perhaps the last question was not
in the right direction, but your answer didn't help either :)
So, to answer my own question:
>>> Right. I suppose it makes sense for rlm_eap to set Auth-Type to the
>>> instance name, while other modules don't do that, for example
>>> rlm_ldap
>>> (in 2.x)?
rlm_ldap sets Auth-Type (not anymore in 3.x) if set_auth_type = yes (the
default). This setting is overridden when a matching Auth-Type is not
found, upon instantiation. It determines the Auth-Type (in order of
preference: instance_name, LDAP) it will use when it is instantiated,
depending on what Auth-Type is declared in the authenticate section.
It is possible that a particular instance is instantiated in a virtual
server that has Auth-Type ldap_inst and then processes a request in a
different virtual server, which has Auth-Type LDAP. In such a case the
module will try to set Auth-Type := ldap_inst and fail.
On the other hand, rlm_eap always sets Auth-Type to the instance name.
Perhaps related is the fact that it gets instantiated when the module is
loaded (as opposed to when it is referenced in an authorize section), so
there are no Auth-Type declarations to look at, even if it wanted to
(like rlm_ldap).
>> And not really possible anyway, as I can only use unlang within
>> Auth-Type subsections and not directly in the authenticate section.
>> Right?
>
> This is documented.
I didn't find a specific answer to that question, which is why I asked.
Cheers,
Z.
More information about the Freeradius-Users
mailing list