Internet-Draft | HTTP Requester Impairment Status Code | December 2023 |
Roda | Expires 11 June 2024 | [Page] |
This document specifies a Hypertext Transfer Protocol (HTTP) status code for use when an operation or resource is denied due to requester impairment.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 11 June 2024.¶
Copyright (c) 2023 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
This document specifies a Hypertext Transfer Protocol (HTTP) status code for use when a request is denied because the requester is impaired.¶
This request code may be used to provide visibility in cases where one or more valid requests create a dangerous situation, there is a pattern of erratic requests with the potential for danger, or the requester is otherwise detected as impaired.¶
Network-controlled devices are being used for beneficial but potentially dangerous activities such as construction and remote surgery. Identifying requester impairment is important for both accurately assessing the risk a given requester presents and preventing damage caused by a high-risk requester.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
The status code 420 indicates that the server is denying the request as a consequence of evidence of requester impairment.¶
The server in question might not be an origin server. An intermediate proxy closer to the requester may be in a better position to assess potential requester impairment. Such a proxy may refuse to forward the request and respond with this error code.¶
There is no requirement that the requester be human. Certain AI systems can exhibit behaviors such as giving hallucinated, incorrect, and differing answers for a given input. Given the speed at which such AI operates, it is no less important to detect the impairment of AI requesters as human requesters.¶
This response code provides greater visibility for requester impairment than the 403 Forbidden code. Such visibility will aid network monitoring for impaired requesters. This will improve remediation and risk assessment of possibly impaired requesters.¶
Such responses MAY include the inputs or evidence used to determine impairment, but SHOULD NOT reveal information that a requester can use to evade impairment detection.¶
A 420 response is non-cacheable by default, i.e., unless otherwise indicated by the method definition or explicit cache controls; see [RFC9111].¶
IANA is asked to update the HTTP Status Codes Registry with the following entry:¶
If the impaired requesters are identifiable because they have been authenticated, their requests SHOULD be denied until they have been determined not to be impaired. If the impaired requesters are unauthenticated, all requests SHOULD be denied until it can be determined that no impaired requesters are using the system.¶