<div dir="ltr"><div>>Depending on the result of the script, the <span class="">SPNEGO</span> login flow will run or not.<br><br></div>Nice solution.    This is the type of solution I was referring to when I said it would be nice to make it general ie if all auth scripts could easily use a similar activation condition.   For examples force more 2 factor type auth plugins for users outside of a specific IP range. <br><div><br></div><div>Thank you Daniel and Scott for your feedback.  Your solution(s) will help me remove some of my less general custom code going forward.<br><br></div><div>-Topher<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 28, 2015 at 9:08 AM, Daniel Lutz <span dir="ltr"><<a href="mailto:daniel.lutz@switch.ch" target="_blank">daniel.lutz@switch.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">cneberg schrieb am 26.09.15 um 22:36:<br>
<span class="">> The solution I use to this problem is pretty simple modify the 401 error<br>
> response to redirect or just be the failover auth mechanism.   If the<br>
> browser can't do spnego it'll render the error page.<br>
<br>
</span>Thank you for your comments.<br>
<br>
The SPNEGO login flow for IdP V3 will support such an error page.<br>
The page will be customizable by a velocity template.<br>
<br>
Besides showing an error message, JavaScript code in the page can<br>
redirect back to the IdP, in case the browser doesn't support SPNEGO<br>
(and shows the error page instead). This way, the user won't see the<br>
error page at all. The redirection back to the IdP will notify the<br>
login flow about an error, so the IdP can cancel SPNEGO and show<br>
the user a meaningful error message.<br>
<span class=""><br>
> Issues<br>
> 1) there is at least one off mobile browsers which can't do this so you<br>
> still need exclusions based on useragent  (thursby browser)<br>
> 2) IE must have the DNS range in its intranet sites list and auto login<br>
> in intranet zone or users will be prompted anyway and if they can't<br>
> reach a DC the prompt will fail. So you need to push some configuration<br>
> to your clients and still have ip restrictions for those off site.<br>
> 3) IE logged into a different AD domain unrelated to the shib will<br>
> prompt in a way that can't succeed. (Ip restrictions needed)<br>
<br>
</span>The SPNEGO login flow will allow a deployer to specify conditions<br>
using JavaScript. This is implemented by attaching a script based<br>
activation condition to the login flow. Depending on the result<br>
of the script, the SPNEGO login flow will run or not.<br>
<br>
The script will be able to access information like the client's IP<br>
address, user agent identifier, cookie values, etc.<br>
<br>
This script based activation condition should allow to address the<br>
issues described above.<br>
<span class=""><br>
> 4) you need to include conversation key in the error redirect or all is<br>
> lost which is sometimes difficult if you try to do this in the webserver<br>
> or app server assumes a static error page URL.<br>
<br>
</span>Yes. The error page the SPNEGO login flow sends to the browser will<br>
contain the conversation key in the link back to the IdP, so this<br>
will work.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
-- Daniel<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
--<br>
To unsubscribe from this list send an email to <a href="mailto:dev-unsubscribe@shibboleth.net">dev-unsubscribe@shibboleth.net</a><br>
</div></div></blockquote></div><br></div>