<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type='text/xsl' href='http://xml2rfc.tools.ietf.org/authoring/rfc2629.xslt' ?>
<!DOCTYPE rfc PUBLIC "-//IETF//DTD RFC 2629//EN"
"http://xml2rfc.tools.ietf.org/authoring/rfc2629.dtd">
<!--
  NOTE:  This XML file is input used to produce the authoritative copy of an
  OpenID Foundation specification.  The authoritative copy is the HTML output.
  This XML source file is not authoritative.  The statement ipr="none" is
  present only to satisfy the document compilation tool and is not indicative
  of the IPR status of this specification.  The IPR for this specification is
  described in the "Notices" section.  This is a public OpenID Foundation
  document and not a private document, as the private="..." declaration could
  be taken to indicate.
-->
<rfc category="std" docName="openid-connect-core-unmet-authentication-requirements-1_0" ipr="none">

  <?rfc toc="yes" ?>
  <?rfc tocdepth="5" ?>
  <?rfc symrefs="yes" ?>
  <?rfc sortrefs="yes"?>
  <?rfc strict="yes" ?>
  <?rfc iprnotified="no" ?>
  <?rfc private="Final" ?>

  <front>
    <title abbrev="OpenID Connect Core Unmet Authentication Requirements 1.0">OpenID 
    Connect Core Error Code unmet_authentication_requirements</title>

    <author fullname="Torsten Lodderstedt" initials="T." surname="Lodderstedt">
      <organization abbrev="yes.com">yes.com</organization>
      <address>
        <email>torsten@lodderstedt.net</email>
      </address>
    </author>

    <date day="17" month="November" year="2022" />

    <workgroup>OpenID Connect Working Group</workgroup>

    <abstract>
      <t>OpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0
      protocol. It enables Clients to verify the identity of the End-User based
      on the authentication performed by an Authorization Server, as well as to
      obtain basic profile information about the End-User in an interoperable and 
      REST-like manner.</t>

      <t>
	This specification augments OpenID Connect Core 1.0 by defining an additional 
	error code <spanx style="verb">unmet_authentication_requirements</spanx> to allow the 
	OpenID Provider to signal to the Relying Party it failed to authenticate 
	the End-User according to the requirements of the Relying Party.
      </t>
    </abstract>
  </front>

  <middle>
	  <section anchor="AuthError" title="Authentication Error Definition">

	    <t>
	      An Authentication Error Response is an <xref target="RFC6749">OAuth 2.0</xref> 
	      Authorization Error Response
	      message returned from the 
	      OP's Authorization Endpoint in response to the Authorization Request
	      message sent by the RP.
	    </t>

	    <t>
	      In addition to the error codes defined in Section 4.1.2.1 of
	      <xref target="RFC6749">OAuth 2.0</xref> and Section 3.1.2.6. of 
	      <xref target="OpenID.Core">OpenID Connect Core</xref>, this specification also 
	      defines the following error code:
	    </t>

	    <t>
	      <list style="hanging">

		<t hangText="unmet_authentication_requirements">
		  <vspace/>
		  The Authorization Server is unable to meet the requirements of the Relying 
		  Party for the authentication of the End-User. This error
		  code SHALL be used if the Relying Party wants the OP to conform to a 
		  certain Authentication Context Class Reference value using
		  an essential claim <spanx style="verb">acr</spanx> claim as specified in 
		  Section 5.5.1.1. 
		  of <xref target="OpenID.Core">OpenID Connect Core</xref> and the OP is 
		  unable to meet this requirement and MAY be used in other cases, if appropriate.
		</t>

	      </list>
	    </t>
	  </section>
	  

    <section anchor="IANA" title="IANA Considerations">

      <section anchor="OAuthErrorRegistry" title="OAuth Extensions Error Registration">

	<t>
	  This specification registers the following error
	  in the IANA
	  OAuth Extensions Error registry <xref target="IANA.OAuth.Parameters"/>
	  established by <xref target="RFC6749">RFC 6749</xref>.
	</t>

	<section anchor='ErrorContents' title='Registry Contents'>
	  <t> <?rfc subcompact="yes"?>
	    <list style="symbols">
	      <t>Error name: <spanx style="verb">unmet_authentication_requirements</spanx></t>

	      <t>Error usage location: Authorization Endpoint</t>

	      <t>Related protocol extension: OpenID Connect</t>

	      <t>Change controller: OpenID Foundation Artifact Binding Working Group - openid-specs-ab@lists.openid.net</t>

	      <t>Specification document(s): <xref target="AuthError"/> of this document</t>
	    </list>
	  </t>

	</section>

      </section>
    </section>


  </middle>

  <back>
    <references title="Normative References">
 
      <?rfc include="http://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.6749"?>
    

       <reference anchor="OpenID.Core" target="http://openid.net/specs/openid-connect-core-1_0.html">
        <front>
          <title>OpenID Connect Core 1.0</title>
 
          <author fullname="Nat Sakimura" initials="N." surname="Sakimura">
            <organization abbrev="NRI">Nomura Research Institute, Ltd.</organization>
          </author>
 
          <author fullname="John Bradley" initials="J." surname="Bradley">
            <organization abbrev="Ping Identity">Ping Identity</organization>
          </author>
 
          <author fullname="Michael B. Jones" initials="M.B." surname="Jones">
            <organization abbrev="Microsoft">Microsoft</organization>
          </author>
 
          <author fullname="Breno de Medeiros" initials="B." surname="de Medeiros">
            <organization abbrev="Google">Google</organization>
          </author>
 
                <author fullname="Chuck Mortimore" initials="C." surname="Mortimore">
                  <organization abbrev="Salesforce">Salesforce</organization>
                </author>
 
          <date day="8" month="November" year="2014"/>
        </front>
 
              <format target="http://openid.net/specs/openid-connect-core-1_0.html"
                type="HTML" />
      </reference>
      
  <reference anchor="IANA.OAuth.Parameters" target="https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml">
        <front>
          <title>OAuth Parameters</title>
          <author>
            <organization>IANA</organization>
          </author>
	  <date/>
        </front>
      </reference>
      
    </references>


      
    <section anchor="Acknowledgements" title="Acknowledgements">

      <t>
	The OpenID Community would like to thank the following people for
	their contributions to this specification:
      </t>
      <t>
	<list style="bullet">
	  <t>Nat Sakimura</t>
	  <t>Phil Hunt</t>
	  <t>George Fletcher</t>
	  <t>Vladimir Dzhuvinov</t>
	  <t>Michael B. Jones</t>
	</list>
      </t>
    </section>

    <section anchor="Notices" title="Notices">
      <t>Copyright (c) 2022 The OpenID Foundation.</t>
      <t>
	The OpenID Foundation (OIDF) grants to any Contributor, developer, 
	implementer, or other interested party a non-exclusive, royalty free, 
	worldwide copyright license to reproduce, prepare derivative works from, 
	distribute, perform and display, this Implementers Draft or 
	Final Specification solely for the purposes of (i) developing 
	specifications, and (ii) implementing Implementers Drafts and 
	Final Specifications based on such documents, provided that attribution 
	be made to the OIDF as the source of the material, but that such attribution 
	does not indicate an endorsement by the OIDF.
      </t>
      <t>
	The technology described in this specification was 
	made available from contributions from various sources, 
	including members of the OpenID Foundation and others.  
	Although the OpenID Foundation has taken steps to help ensure 
	that the technology is available for distribution, it takes 
	no position regarding the validity or scope of any intellectual 
	property or other rights that might be claimed to pertain to 
	the implementation or use of the technology described in 
	this specification or the extent to which any license under 
	such rights might or might not be available; neither does it 
	represent that it has made any independent effort to identify 
	any such rights.  The OpenID Foundation and the contributors 
	to this specification make no (and hereby expressly disclaim any) 
	warranties (express, implied, or otherwise), including implied 
	warranties of merchantability, non-infringement, fitness for 
	a particular purpose, or title, related to this specification, 
	and the entire risk as to implementing this specification is 
	assumed by the implementer.  The OpenID Intellectual 
	Property Rights policy requires contributors to offer 
	a patent promise not to assert certain patent claims against 
	other contributors and against implementers.  The OpenID Foundation invites 
	any interested party to bring to its attention any copyrights, 
	patents, patent applications, or other proprietary rights 
	that may cover technology that may be required to practice 
	this specification.
      </t>
    </section>

  </back>
</rfc>
