Re: [OAUTH-WG] JSON Web Token (JWT) Profile

Hannes Tschofenig <hannes.tschofenig@gmx.net> Tue, 11 March 2014 15:15 UTC

Return-Path: <hannes.tschofenig@gmx.net>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28B1A1A0746 for <oauth@ietfa.amsl.com>; Tue, 11 Mar 2014 08:15:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.447
X-Spam-Level:
X-Spam-Status: No, score=-2.447 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.547, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6xtRPetn5DbL for <oauth@ietfa.amsl.com>; Tue, 11 Mar 2014 08:15:01 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by ietfa.amsl.com (Postfix) with ESMTP id 86A361A0479 for <oauth@ietf.org>; Tue, 11 Mar 2014 08:15:01 -0700 (PDT)
Received: from [192.168.131.134] ([80.92.123.72]) by mail.gmx.com (mrgmx101) with ESMTPSA (Nemesis) id 0LoaCE-1Wpabc1Wfq-00gXsO; Tue, 11 Mar 2014 16:14:54 +0100
Message-ID: <531F2632.2090204@gmx.net>
Date: Tue, 11 Mar 2014 16:05:22 +0100
From: Hannes Tschofenig <hannes.tschofenig@gmx.net>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0
MIME-Version: 1.0
To: Antonio Sanso <asanso@adobe.com>
References: <3A1BC33F-1AE2-492F-BCE9-CCB9CF4C3C83@adobe.com> <531F1F72.8010805@gmx.net> <5275E1B4-64DD-48FF-A1A9-959C75EA5DE2@adobe.com> <531F234E.90609@gmx.net> <E8EF9394-73F1-413F-A064-C8543C52EAFD@adobe.com>
In-Reply-To: <E8EF9394-73F1-413F-A064-C8543C52EAFD@adobe.com>
X-Enigmail-Version: 1.5.2
Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="o5LEDUoQamiQIhNtSlHP2nwcXNljVTU7U"
X-Provags-ID: V03:K0:rBeAAt5u52iB8tLaivXCYrtwtE94OoBXSweQ7zLeU1Jdv0vUom0 P9HBnrB66LcZ1ROMB2G2ToUrwLklUhnjx4Y9AbWlq7H7d6cdRJiaAmsik6nj97Gs8Z0Nrac UHDg+zrtc2CA5TG/B40nqFBBWs5CuDoPr1R8yzK504yDrFHsukiGGdoDSWna/OYZs1BiGrR peZ1MukH4jafEwf6zgSVw==
Archived-At: http://mailarchive.ietf.org/arch/msg/oauth/krBTtAe-ZNTHxITFJ8c7eU_KqpY
Cc: "oauth@ietf.org" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] JSON Web Token (JWT) Profile
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: Tue, 11 Mar 2014 15:15:04 -0000

Maintaining both information in the JWT is IMHO valuable since it gives
you some information about the security properties. Needless to say that
there is a substantial difference between a self-created JWT and a JWT
from a third party the relying party has some confidence in.

Why Google has an old implementation and whether they are planning to
update their code remains to be seen.

More importantly, however, is why you argue that the subject claim has
to be optional.

Ciao
Hannes

Ps: I also noticed in the examples that all URIs have their URI scheme
missing. While that might be OK I am not entirely sure...

On 03/11/2014 04:08 PM, Antonio Sanso wrote:
> 
> On Mar 11, 2014, at 3:53 PM, Hannes Tschofenig <hannes.tschofenig@gmx.net> wrote:
> 
>> Thanks for clarifying.
>>
>> I took a quick look at the Google API and it seems that in their use
>> case the client creates the JWT and consequently the subject and the
>> issue would actually be the same. I suspect that this is the reason why
>> they omitted the subject.
> 
> agreed that is why in my mail I said the subject might overlap with the issuer.
> The subject in the google case is still called with its obsolete name (prn) and it is actually listed as ‘additional claims’ hence not mandatory.
> 
> regards
> 
> antonio
> 
>>
>> Could you explain why you would like to omit the subject claim in the JWT?
>>
>> Ciao
>> Hannes
>>
>> PS: Your feedback on the  draft-ietf-oauth-jwt-bearer-07 spec is timely
>> since we are about to finish all three assertion specs.
>>
>>
>> On 03/11/2014 03:56 PM, Antonio Sanso wrote:
>>> hi Hannes,
>>>
>>> I am aware of the 2 documents,
>>>
>>> I might be wrong but http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-07 is also about Authorization Grant Processing (this is the part I do use in my implementation ) and not only Client Authentication Processing.
>>>
>>> Just my 0.02 $ but this seems to be a place where different implementer have the same issue :)
>>>
>>> regards
>>>
>>> antonio
>>>
>>> On Mar 11, 2014, at 3:36 PM, Hannes Tschofenig <hannes.tschofenig@gmx.net> wrote:
>>>
>>>> Hi Manfred, Hi Antonio,
>>>>
>>>> Note that there are two documents that talk about the JWT and you guys
>>>> might be looking at the wrong document.
>>>>
>>>> The main JWT document (see
>>>> http://tools.ietf.org/html/draft-ietf-oauth-json-web-token-18) defines
>>>> the subject claim as optional (see Section 4.1.2).
>>>>
>>>> The JWT bearer assertion document (see
>>>> http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-07) does indeed
>>>> define it as mandatory but that's intentional since the purpose of the
>>>> spec is to authenticate the client (or the resource owner for an
>>>> authorization grant).
>>>>
>>>> The assertion documents are used for interworking with "legacy" identity
>>>> infrastructure (such as SAML federations).
>>>>
>>>> So, are you sure you are indeed looking at the right document?
>>>>
>>>> Ciao
>>>> Hannes
>>>>
>>>>
>>>> On 03/11/2014 03:13 PM, Antonio Sanso wrote:
>>>>> hi *,
>>>>>
>>>>> JSON Web Token (JWT) Profile section 3 [0] explicitely says 
>>>>>
>>>>> The JWT MUST contain a "sub" (subject) claim 
>>>>>
>>>>>
>>>>> Now IMHO there are cases where having the sub is either not needed or
>>>>> redundant (since it might overlap with the issuer).\
>>>>>
>>>>> As far as I can see “even Google” currently violates this spec [1] ( I
>>>>> know that this doesn’t matter, just wanted to bring a real use case
>>>>> scenario).
>>>>>
>>>>> WDYT might the “sub” be optional in some situation?
>>>>>
>>>>> regards
>>>>>
>>>>> antonio 
>>>>>
>>>>> [0] http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-07#section-3
>>>>> [1] https://developers.google.com/accounts/docs/OAuth2ServiceAccount
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> OAuth mailing list
>>>>> OAuth@ietf.org
>>>>> https://www.ietf.org/mailman/listinfo/oauth
>>>>>
>>>>
>>>
>>
>