[OAUTH-WG] FW: draft-ietf-oauth-json-web-token-19 Shepherd Write-up

Mike Jones <Michael.Jones@microsoft.com> Thu, 08 May 2014 19:04 UTC

Return-Path: <Michael.Jones@microsoft.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com []) by ietfa.amsl.com (Postfix) with ESMTP id 3255B1A00F4 for <oauth@ietfa.amsl.com>; Thu, 8 May 2014 12:04:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id EjfA3am1Hg1o for <oauth@ietfa.amsl.com>; Thu, 8 May 2014 12:04:04 -0700 (PDT)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1lp0141.outbound.protection.outlook.com []) by ietfa.amsl.com (Postfix) with ESMTP id AD8971A00DE for <oauth@ietf.org>; Thu, 8 May 2014 12:04:03 -0700 (PDT)
Received: from BLUPR03CA035.namprd03.prod.outlook.com ( by BLUPR03MB357.namprd03.prod.outlook.com ( with Microsoft SMTP Server (TLS) id 15.0.929.12; Thu, 8 May 2014 19:03:58 +0000
Received: from BN1BFFO11FD026.protection.gbl (2a01:111:f400:7c10::1:118) by BLUPR03CA035.outlook.office365.com (2a01:111:e400:879::28) with Microsoft SMTP Server (TLS) id 15.0.934.12 via Frontend Transport; Thu, 8 May 2014 19:03:57 +0000
Received: from mail.microsoft.com ( by BN1BFFO11FD026.mail.protection.outlook.com ( with Microsoft SMTP Server (TLS) id 15.0.929.8 via Frontend Transport; Thu, 8 May 2014 19:03:57 +0000
Received: from TK5EX14MBXC288.redmond.corp.microsoft.com ([]) by TK5EX14MLTC104.redmond.corp.microsoft.com ([]) with mapi id 14.03.0174.002; Thu, 8 May 2014 19:03:23 +0000
From: Mike Jones <Michael.Jones@microsoft.com>
To: "oauth@ietf.org" <oauth@ietf.org>
Thread-Topic: [OAUTH-WG] draft-ietf-oauth-json-web-token-19 Shepherd Write-up
Thread-Index: AQHPXuuAbJx37+xreUSkSd/lWmnNa5shTqCQgBXTv+A=
Date: Thu, 08 May 2014 19:03:22 +0000
Message-ID: <4E1F6AAD24975D4BA5B16804296739439A1AE2FB@TK5EX14MBXC288.redmond.corp.microsoft.com>
References: <5357AA4C.8080707@gmx.net>
Accept-Language: en-US
Content-Language: en-US
x-originating-ip: []
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-Forefront-Antispam-Report: CIP:; CTRY:US; IPV:CAL; IPV:NLI; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009001)(6009001)(438001)(377454003)(189002)(199002)(13464003)(53754006)(46406003)(15975445006)(81342001)(85852003)(76482001)(92726001)(92566001)(77982001)(97756001)(46102001)(81542001)(19580395003)(44976005)(97736001)(2656002)(66066001)(74662001)(50986999)(54356999)(47776003)(86362001)(33656001)(79102001)(31966008)(2009001)(15395725003)(50466002)(23726002)(83322001)(4396001)(55846006)(83072002)(20776003)(76176999)(19580405001)(86612001)(99396002)(74502001)(80022001)(6806004)(15202345003)(87936001)(84676001)(15398625002); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR03MB357; H:mail.microsoft.com; FPR:C60BF1CE.9EDAF301.B1E37B87.42E4C880.20776; MLV:sfv; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en;
X-O365ENT-EOP-Header: Message processed by - O365_ENT: Allow from ranges (Engineering ONLY)
X-Forefront-PRVS: 0205EDCD76
Received-SPF: Pass (: domain of microsoft.com designates as permitted sender) receiver=; client-ip=; helo=mail.microsoft.com;
X-OriginatorOrg: microsoft.onmicrosoft.com
Archived-At: http://mailarchive.ietf.org/arch/msg/oauth/ODSV8OLKrwqYWSlpMtC2j4auF-U
Subject: [OAUTH-WG] FW: draft-ietf-oauth-json-web-token-19 Shepherd Write-up
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth/>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 08 May 2014 19:04:08 -0000

Forwarding to the mailing list, since I mistakenly replied only to Hannes...

-----Original Message-----
From: Mike Jones 
Sent: Thursday, April 24, 2014 2:44 PM
To: 'Hannes Tschofenig'
Subject: RE: [OAUTH-WG] draft-ietf-oauth-json-web-token-19 Shepherd Write-up

I am not aware of any IPR that applies to this specification.

-----Original Message-----
From: OAuth [mailto:oauth-bounces@ietf.org] On Behalf Of Hannes Tschofenig
Sent: Wednesday, April 23, 2014 4:56 AM
To: oauth@ietf.org
Subject: [OAUTH-WG] draft-ietf-oauth-json-web-token-19 Shepherd Write-up

Hi all,

I am working on the shepherd writeup for the JWT. Here are a few questions:

- To the document authors: Please confirm that any and all appropriate IPR disclosures required for full conformance with the provisions of BCP
78 and BCP 79 have already been filed.

- To all: I have included various pointers to implementations in the write-up. Maybe there are others that should be included. If so, please let me know.

- To all: Please also go through the text to make sure that I correctly reflect the history and the status of this document.

Here is the latest version of the write-up:


PS: Here is the copy-and-paste text:


Writeup for "JSON Web Token (JWT)" <draft-ietf-oauth-json-web-token-19>

(1) What type of RFC is being requested (BCP, Proposed Standard, Internet Standard, Informational, Experimental, or Historic)? Why is this the proper type of RFC? Is this type of RFC indicated in the title page header?

The RFC type is 'Standards Track' and the type is indicated in the title page. This document defines the syntax and semantic of information elements.

(2) The IESG approval announcement includes a Document Announcement Write-Up. Please provide such a Document Announcement Write-Up. Recent examples can be found in the "Action" announcements for approved documents. The approval announcement contains the following sections:

Technical Summary:

   JSON Web Token (JWT) is a compact URL-safe means of representing
   claims to be transferred between two parties.  The claims in a JWT
   are encoded as a JavaScript Object Notation (JSON) object that is
   used as the payload of a JSON Web Signature (JWS) structure or as the
   plaintext of a JSON Web Encryption (JWE) structure, enabling the
   claims to be digitally signed or MACed and/or encrypted.

Working Group Summary:

Was there anything in WG process that is worth noting? For example, was there controversy about particular points or were there decisions where the consensus was particularly rough?

This document was uncontroversial. It allows OAuth deployments to use a standardized access token format, which increases interoperability of OAuth-based deployments.

Document Quality:

This document has gone through many iterations and has received substantial feedback.

A substantial number of implementations exist, as documented at http://openid.net/developers/libraries/
(scrowl down to the 'JWT/JWS/JWE/JWK/JWA Implementations' section)

An Excel document providing additional details can be found here:


The document shepherd is Hannes Tschofenig and the responsible area director is Kathleen Moriarty.

(3) Briefly describe the review of this document that was performed by the Document Shepherd. If this version of the document is not ready for publication, please explain why the document is being forwarded to the IESG.

The draft authors believe that this document is ready for publication.
The document has received review comments from working group members, and from the OAuth working group chairs. Implementations exist and they have tested for interoperability as part of the OpenID Connect interop events.

(4) Does the document Shepherd have any concerns about the depth or breadth of the reviews that have been performed?

This document has gotten enough feedback from the working group.

(5) Do portions of the document need review from a particular or from broader perspective, e.g., security, operational complexity, AAA, DNS, DHCP, XML, or internationalization? If so, describe the review that took place.

Since the OAuth working group develops security protocols any feedback from the security community is always appreciated.
The JWT document heavily depends on the work in the JOSE working group since it re-uses the JWE and the JWS specifications.

(6) Describe any specific concerns or issues that the Document Shepherd has with this document that the Responsible Area Director and/or the IESG should be aware of? For example, perhaps he or she is uncomfortable with certain parts of the document, or has concerns whether there really is a need for it. In any event, if the WG has discussed those issues and has indicated that it still wishes to advance the document, detail those concerns here.

The shepherd has no concerns with this document.

(7) Has each author confirmed that any and all appropriate IPR disclosures required for full conformance with the provisions of BCP 78 and BCP 79 have already been filed. If not, explain why?

[[Confirmation from the authors required.]]

(8) Has an IPR disclosure been filed that references this document? If so, summarize any WG discussion and conclusion regarding the IPR disclosures.

Two IPRs have been filed for the JWT specification this document relies on, see http://datatracker.ietf.org/ipr/search/?option=document_search&id=draft-ietf-oauth-json-web-token

There was no discussion regarding those two IPRs on the mailing list.

(9) How solid is the WG consensus behind this document? Does it represent the strong concurrence of a few individuals, with others being silent, or does the WG as a whole understand and agree with it?

The working group has consensus to publish this document.

(10) Has anyone threatened an appeal or otherwise indicated extreme discontent? If so, please summarise the areas of conflict in separate email messages to the Responsible Area Director. (It should be in a separate email because this questionnaire is publicly available.)

No appeal or extreme discontent has been raised.

(11) Identify any ID nits the Document Shepherd has found in this document. (See http://www.ietf.org/tools/idnits/ and the Internet-Drafts Checklist). Boilerplate checks are not enough; this check needs to be thorough.

The shepherd has checked the nits. The shepherd has not verified the examples for correctness.

(12) Describe how the document meets any required formal review criteria, such as the MIB Doctor, media type, and URI type reviews.

The document does not require a formal review even though it contains JSON-based examples.

(13) Have all references within this document been identified as either normative or informative?


(14) Are there normative references to documents that are not ready for advancement or are otherwise in an unclear state? If such normative references exist, what is the plan for their completion?

There are various JOSE documents that have not been published as RFCs yet. As such, this document cannot be published before the respective JOSE documents are finalized.

(15) Are there downward normative references references (see RFC 3967)?
If so, list these downward references to support the Area Director in the Last Call procedure.

The document contains a reference to

              Ecma International, "ECMAScript Language Specification,
              5.1 Edition", ECMA 262, June 2011.

which might require a downref.

RFC 6755 is also a downref.

(16) Will publication of this document change the status of any existing RFCs? Are those RFCs listed on the title page header, listed in the abstract, and discussed in the introduction? If the RFCs are not listed in the Abstract and Introduction, explain why, and point to the part of the document where the relationship of this document to the other RFCs is discussed. If this information is not in the document, explain why the WG considers it unnecessary.

The publication of this document does not change the status of other RFCs.

(17) Describe the Document Shepherd's review of the IANA considerations section, especially with regard to its consistency with the body of the document. Confirm that all protocol extensions that the document makes are associated with the appropriate reservations in IANA registries.
Confirm that any referenced IANA registries have been clearly identified. Confirm that newly created IANA registries include a detailed specification of the initial contents for the registry, that allocations procedures for future registrations are defined, and a reasonable name for the new registry has been suggested (see RFC 5226).

The document creates a new registry for JWT claims and populates this registry with values.
It also registers values into two existing registries, namely into
 * the RFC 6755 created OAuth URN registry, and
 * the media type registry

(18) List any new IANA registries that require Expert Review for future allocations. Provide any public guidance that the IESG would find useful in selecting the IANA Experts for these new registries.

The newly created JWT claims registry requires expert review for future allocations. Guidance is given in the document.
The document shepherd volunteers to become an expert review.

(19) Describe reviews and automated checks performed by the Document Shepherd to validate sections of the document written in a formal language, such as XML code, BNF rules, MIB definitions, etc.

There are examples in the document that use a JSON-based encoding. The document shepherd has reviewed those examples but has not verified the correctness of the cryptographic operations.