<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    I think I'd prefer either 'access_denied' as defined by RFC 6749 or
    an 'authentication_failed' error that is a little more generic than
    'unable_to_meet_authentication_requirements' which I feel is leaking
    aspects of the authentication that shouldn't be exposed to the
    client.<br>
    <br>
    In the you case you provided Torsten, there isn't anything the RP
    can do as the user first needs to enable 2SV on their account at the
    OP.<br>
    <br>
    Thanks,<br>
    George<br>
    <br>
    <div class="moz-cite-prefix">On 5/29/18 6:06 AM, Torsten Lodderstedt
      via Openid-specs-ab wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:F707E4B0-58BE-4530-9E57-489C3FC510A7@lodderstedt.net">
      <pre wrap="">That’s rather tricky. The OP must use this parameter to indicate to the RP what acr policy it fulfilled in the respective transaction. The value in acr is not necessarily the value the RP asked for. But this holds only true if the acr claim was not requested as essential claim. In this case, the OP must „MUST treat that outcome as a failed authentication attempt.“ In my interpretation, this requires the OP to send an error response to the client, which only carries the error data.  

</pre>
      <blockquote type="cite">
        <pre wrap="">Am 28.05.2018 um 05:29 schrieb Phil Hunt <a class="moz-txt-link-rfc2396E" href="mailto:phil.hunt@oracle.com"><phil.hunt@oracle.com></a>:

Isn’t this what the acr response param is for...
</pre>
        <blockquote type="cite">
          <pre wrap="">
</pre>
        </blockquote>
        <pre wrap="">acr
OPTIONAL. Authentication Context Class Reference. String specifying an Authentication Context Class Reference value that identifies the Authentication Context Class that the authentication performed satisfied. The value "0" indicates the End-User authentication did not meet the requirements of ISO/IEC 29115 [ISO29115] level 1. 

Phil

On May 27, 2018, at 9:00 AM, Torsten Lodderstedt via Openid-specs-ab <a class="moz-txt-link-rfc2396E" href="mailto:openid-specs-ab@lists.openid.net"><openid-specs-ab@lists.openid.net></a> wrote:

</pre>
        <blockquote type="cite">
          <pre wrap="">Hi Vladimir,

</pre>
          <blockquote type="cite">
            <pre wrap="">Am 26.05.2018 um 23:42 schrieb Vladimir Dzhuvinov via Openid-specs-ab <a class="moz-txt-link-rfc2396E" href="mailto:openid-specs-ab@lists.openid.net"><openid-specs-ab@lists.openid.net></a>:

If you're looking for a standard error code for "user failed to authenticate (with required ACR)", access_denied appears to be the closest and only choice. What the RP would make of that error code is another question :)
<a class="moz-txt-link-freetext" href="http://openid.net/specs/openid-connect-core-1_0.html#AuthError">http://openid.net/specs/openid-connect-core-1_0.html#AuthError</a>

In practice, many OPs won't send the browser back to the RP if the user failed to authenticate, i.e. the browser will remain at the login screen, with the user given the option for some sort of recovery and perhaps the option to cancel the request and return to the RP.
As for login_required and interaction_required - my reading of the spec is that these are intended for error responses to prompt=none authentication requests and shouldn't be used to signal other conditions.
<a class="moz-txt-link-freetext" href="http://openid.net/specs/openid-connect-core-1_0.html#AuthRequest">http://openid.net/specs/openid-connect-core-1_0.html#AuthRequest</a>
</pre>
          </blockquote>
          <pre wrap="">
That’s my problem. In my use case, the OP is unable to meet the RP’s requirements either entirely or for the particular user (e.g. no second factor available). I think stopping request processing at the OP is not a good option. I would like to send the user agent back to the RP along with enough information to act upon. My current feeling is we need another, distinct error code - something like authentication_failed or unable_to_meet_authentication_requirements.

best regards,
Torsten. 

</pre>
          <blockquote type="cite">
            <pre wrap="">

</pre>
            <blockquote type="cite">
              <pre wrap="">none
The Authorization Server MUST NOT display any authentication or consent user interface pages. An error is returned if an End-User is not already authenticated or the Client does not have pre-configured consent for the requested Claims or does not fulfill other conditions for processing the request. The error code will typically be login_required, interaction_required, or another code defined in Section 3.1.2.6. This can be used as a method to check for existing authentication and/or consent.
</pre>
            </blockquote>
            <pre wrap="">

Vladimir


On 25/05/18 18:41, Filip Skokan via Openid-specs-ab wrote:
</pre>
            <blockquote type="cite">
              <pre wrap="">Depending on the situation at the OP I believe this could be any of (in
order of my preference) login_required, interaction_required, access_denied

Best,
*Filip Skokan*

On Fri, May 25, 2018 at 4:13 PM, Torsten Lodderstedt via Openid-specs-ab <

<a class="moz-txt-link-abbreviated" href="mailto:openid-specs-ab@lists.openid.net">openid-specs-ab@lists.openid.net</a>
</pre>
              <blockquote type="cite">
                <pre wrap="">wrote:
</pre>
              </blockquote>
              <pre wrap="">

</pre>
              <blockquote type="cite">
                <pre wrap="">Hi all,

I just came across the following text (again) in the OpenID Connect Core
Spec:

"If the acr Claim is requested as an Essential Claim for the ID Token with
a values parameter requesting specific Authentication Context Class
Reference values and the implementation supports the claims parameter, the
Authorization Server MUST return an acr Claim Value that matches one of the
requested values. The Authorization Server MAY ask the End-User to
re-authenticate with additional factors to meet this requirement. If this
is an Essential Claim and the requirement cannot be met, then the
Authorization Server MUST treat that outcome as a failed authentication
attempt.“

What error code is the OP supposed to use to signal the failed
authentication to the RP?

best regards,
Torsten.
_______________________________________________

</pre>
              </blockquote>
            </blockquote>
            <pre wrap="">
_______________________________________________
Openid-specs-ab mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Openid-specs-ab@lists.openid.net">Openid-specs-ab@lists.openid.net</a>
<a class="moz-txt-link-freetext" href="http://lists.openid.net/mailman/listinfo/openid-specs-ab">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a>
</pre>
          </blockquote>
          <pre wrap="">
</pre>
        </blockquote>
      </blockquote>
      <pre wrap="">
</pre>
      <!--'"--><br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Openid-specs-ab mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Openid-specs-ab@lists.openid.net">Openid-specs-ab@lists.openid.net</a>
<a class="moz-txt-link-freetext" href="http://lists.openid.net/mailman/listinfo/openid-specs-ab">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>