MFA result reuse with Duo.
Scott Koranda
skoranda at gmail.com
Wed Jan 18 17:03:21 EST 2017
> On 1/18/17, 4:46 PM, "users on behalf of Scott Koranda" <users-bounces at shibboleth.net on behalf of skoranda at gmail.com> wrote:
>
> > So you are suggesting that by setting
> >
> > idp.authn.favorSSO=false
> >
> > AND
> >
> > configuring a relying party for a particular SP to "request"
> > "MFA" OR "Password" (in that order!) then the IdP will see it has an active
> > "Password" but because idp.authn.favorSSO=false it will go
> > ahead and run the MFA flow?
>
> I was using Password and MFA as stand ins for context
> classes corresponding to the Password and Duo flows, but
> otherwise yes, I think so.
Understood, yes.
> The 2.x IdP had a semi-incorrect behavior such that it would
> prioritize SSO over processing the requested classes in
> order, which is technically not SAML compliant. 3.x doesn't
> promise to be totally strict but it does have this option to
> turn off that priority rule since I decided we should try
> and be more correct at least optionally.
>
> So what it does is check each requested Principal in
> sequence, and determine if it can be satisfied. If not, it
> looks for a flow to run that supports it. So I think it will
> run the MFA flow (which will support both/all of course) in
> such cases before it sees the second Principal and decides
> to reuse the old result.
So yes, the MFA flow is running and yes, the script logic in
my "next flow strategy" script is executing, but I see
java.lang.RuntimeException: javax.script.ScriptException:
TypeError: null has no such function "getPrincipalName" in
<eval> at line number 59
for this line in the script
username = input.getSubcontext("net.shibboleth.idp.authn.context.SubjectCanonicalizationContext").getPrincipalName();
So presumably the SubjectCanonicalizationContext is not
available for some reason?
Can I walk the context tree and find another context from
which to pull the principal tree? (I assume yes...)
Thanks,
Scott K
More information about the users
mailing list