Return-Path: <ve7jtb@ve7jtb.com>
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 B5BEB1A031D for <oauth@ietfa.amsl.com>;
 Fri, 25 Apr 2014 13:11:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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 OlaQ0XK66y_8 for
 <oauth@ietfa.amsl.com>; Fri, 25 Apr 2014 13:11:36 -0700 (PDT)
Received: from mail-qg0-f51.google.com (mail-qg0-f51.google.com
 [209.85.192.51]) by ietfa.amsl.com (Postfix) with ESMTP id 7C82B1A02F2 for
 <oauth@ietf.org>; Fri, 25 Apr 2014 13:11:36 -0700 (PDT)
Received: by mail-qg0-f51.google.com with SMTP id f51so4636199qge.10 for
 <oauth@ietf.org>; Fri, 25 Apr 2014 13:11:29 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net;
 s=20130820;
 h=x-gm-message-state:content-type:mime-version:subject:from
 :in-reply-to:date:cc:message-id:references:to;
 bh=YcoaZB4ix9iJ8j9nBtFeZQmMtssglCEoYklarZ0HoAM=;
 b=TZrJC2IHW6gsVN5dvLc3m7YNOT4Y8CHvoVRYTEDRch2W024s1BKtQCeRxXfPgGw+5l
 8AxhPD5iOqwzbcT7iJa8SXd6wnVEpq/niwGvZjgx6MindI8B1GXcBmr0RhwgDPTmsvVC
 MIp4thQINTiq6YTGsRycpAPR0LX6lgLem2Y/w09O3GNhbKVzTbwU9RO00VKNGofipDTG
 3xreVcu1ZGujGd4k2MVzFD45DY7aMkqqn/MyMBTv8JLlh4wSQ5XGYepT+ZjDZAI8r6Qx
 Ab+p7GZHnu77QT+RFXZ5D41qS7UMw+MK3FOnf+xKYEYEmwRXO5pwFgBnH1IbHISs9fY4 ZyEQ==
X-Gm-Message-State: ALoCoQme2irmAupeBR9L2mv7MePvRB8MsKo9l6N+RNYT91fzUmN20q4CPnAa2yRMHYRxfwNLmW00
X-Received: by 10.224.73.136 with SMTP id q8mr14664109qaj.54.1398456689529;
 Fri, 25 Apr 2014 13:11:29 -0700 (PDT)
Received: from [192.168.0.200] ([201.188.68.144]) by mx.google.com with
 ESMTPSA id z6sm16164948qal.6.2014.04.25.13.11.25 for <multiple recipients>
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Fri, 25 Apr 2014 13:11:29 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="Apple-Mail=_75A17B79-53FD-487F-85F5-9824B17D3EF8"
Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\))
From: John Bradley <ve7jtb@ve7jtb.com>
In-Reply-To: <CA+k3eCToMDJv4KfapoG=9gSHrtzKT5E8L4OFSJMjQZWBO4Q84g@mail.gmail.com>
Date: Fri, 25 Apr 2014 17:11:26 -0300
Message-Id: <2DE29BE5-8E48-42E1-96AE-D92336AF66B8@ve7jtb.com>
References: <53577C41.2090606@gmx.net>
 <CA+k3eCSmVo__OBn7vMoSZ2POeFLUS11y+BNOPTX5b=5C_OpfBg@mail.gmail.com>
 <5358B8BC.8000508@gmx.net>
 <CA+k3eCSCtSb42pqz8qE4MQbfXzLQFr9bEAcNm0bgJ24WRL4C4Q@mail.gmail.com>
 <53590810.8000503@gmx.net>
 <CA+k3eCRvukGj-oZ214JNdaAENobrdcanxPxZiAUZ9B529Zsd5A@mail.gmail.com>
 <4E1F6AAD24975D4BA5B16804296739439A1960AA@TK5EX14MBXC288.redmond.corp.microsoft.com>
 <A83036B3-E093-41C6-A212-B5797E536326@ve7jtb.com>
 <CA+k3eCToMDJv4KfapoG=9gSHrtzKT5E8L4OFSJMjQZWBO4Q84g@mail.gmail.com>
To: Brian Campbell <bcampbell@pingidentity.com>
X-Mailer: Apple Mail (2.1874)
Archived-At: http://mailarchive.ietf.org/arch/msg/oauth/kymn-pnW6Hv--GBg8vDJ8Wi65kw
Cc: "oauth@ietf.org" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] draft-ietf-oauth-jwt-bearer-08 & subject issue
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: Fri, 25 Apr 2014 20:11:45 -0000

--Apple-Mail=_75A17B79-53FD-487F-85F5-9824B17D3EF8
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=windows-1252

I am OK with that.

On Apr 25, 2014, at 4:57 PM, Brian Campbell <bcampbell@pingidentity.com> =
wrote:

> I absolutely agree with always requiring both issuer and subject and =
that doing so keeps the specs simpler and is likely to improve =
interoperability.
>=20
> However, without changing that, perhaps some of the text in the =
document(s) could be improved a bit. Here's a rough proposal:
>=20
> Change the text of the second bullet in =
http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-5.2 to=20=

>=20
> "The assertion MUST contain a Subject. The Subject typically =
identifies an authorized accessor for which the access token is being =
requested (i.e. the resource owner, or an authorized delegate) but, in =
some cases, may be a pseudonym or other value denoting an anonymous =
user. When the client is acting on behalf of itself, the Subject MUST be =
the value of the client's client_id."
>=20
> And also change =
http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-6.3.1 =
to=20
>=20
> "When a client is accessing resources on behalf of an anonymous user, =
a mutually agreed upon Subject identifier indicating anonymity is used. =
The Subject value might be an agreed upon static value indicating an =
anonymous user or an opaque persistent or transient pseudonym for the =
user may also be utilized. The authorization may be based upon =
additional criteria, such as additional attributes or claims provided in =
the assertion. For example, a client may present an assertion from a =
trusted issuer asserting that the bearer is over 18 via an included =
claim. In this case, no additional information about the user's identity =
is included, yet all the data needed to issue an access token is =
present."
>=20
> And maybe also change the subject text in SAML and JWT (item #2 in =
http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-08#section-3 and =
http://tools.ietf.org/html/draft-ietf-oauth-saml2-bearer-19#section-3) =
to read a little more like the new proposed text above for section 5.2 =
of the Assertion Framework draft.
>=20
> Would that sit any better with you, Hannes? Thoughts from others in =
the WG?
>=20
>=20
> On Fri, Apr 25, 2014 at 1:08 PM, John Bradley <ve7jtb@ve7jtb.com> =
wrote:
> Agreed.
>=20
> On Apr 25, 2014, at 3:07 PM, Mike Jones <Michael.Jones@microsoft.com> =
wrote:
>=20
>> I agree.  We=92d already discussed this pretty extensively and =
reached the conclusion that always requiring both an issuer and a =
subject both kept the specs simpler and was likely to improve =
interoperability.
>> =20
>> It=92s entirely up to the application profile what the contents of =
the issuer and the subject fields are and so I don=92t think we need to =
further specify their contents beyond what=92s already in the specs.
>> =20
>>                                                             -- Mike
>> =20
>> From: OAuth [mailto:oauth-bounces@ietf.org] On Behalf Of Brian =
Campbell
>> Sent: Friday, April 25, 2014 10:17 AM
>> To: Hannes Tschofenig
>> Cc: oauth@ietf.org
>> Subject: Re: [OAUTH-WG] draft-ietf-oauth-jwt-bearer-08 & subject =
issue
>> =20
>> I believe, from the thread referenced earlier and prior discussion =
and draft text, that the WG has reached (rough) consensus to require the =
subject claim. So text that says "Subject element MUST NOT be included" =
isn't workable.
>>=20
>> It seems what's needed here is some better explanation of how, in =
cases that need it, the value of the subject can be populated without =
using a PII type value. A simple static value like "ANONYMOUS-SUBJECT" =
could be used. Or, more likely, some kind of pairwise persistent =
pseudonymous identifier would be utilized, which would not directly =
identify the subject but would allow the relying party to recognize the =
same subject on subsequent transactions. A transient pseudonym might =
also be appropriate in some cases. And any of those approaches could be =
used with or without additional claims (like age > 18 or membership in =
some group) that get used to make an authorization decision.=20
>>=20
>> I wasn't sure exactly how to articulate all that in text for the =
draft(s) but that's more of what I was asking for when I asked if you =
could propose some text.
>>=20
>>=20
>>=20
>>=20
>> =20
>>=20
>> On Thu, Apr 24, 2014 at 6:48 AM, Hannes Tschofenig =
<hannes.tschofenig@gmx.net> wrote:
>> Hi Brian,
>>=20
>> Thanks for pointing to the assertion framework document. Re-reading =
the
>> text it appears that we have listed the case that in Section 6.3.1 =
but
>> have forgotten to cover it elsewhere in the document.
>>=20
>>=20
>> In Section 6.3.1 we say:
>>=20
>> "
>>=20
>> 6.3.1.  Client Acting on Behalf of an Anonymous User
>>=20
>>    When a client is accessing resources on behalf of an anonymous =
user,
>>    the Subject indicates to the Authorization Server that the client =
is
>>    acting on-behalf of an anonymous user as defined by the =
Authorization
>>    Server.  It is implied that authorization is based upon additional
>>    criteria, such as additional attributes or claims provided in the
>>    assertion.  For example, a client may present an assertion from a
>>    trusted issuer asserting that the bearer is over 18 via an =
included
>>    claim.
>>=20
>> *****
>>     In this case, no additional information about the user's
>>    identity is included, yet all the data needed to issue an access
>>    token is present.
>> *****
>> "
>> (I marked the relevant part with '***')
>>=20
>>=20
>> In Section 5.2, however, we say:
>>=20
>>=20
>>    o  The assertion MUST contain a Subject.  The Subject identifies =
an
>>       authorized accessor for which the access token is being =
requested
>>       (typically the resource owner, or an authorized delegate).  =
When
>>       the client is acting on behalf of itself, the Subject MUST be =
the
>>       value of the client's "client_id".
>>=20
>>=20
>> What we should have done in Section 5.2 is to expand the cases inline
>> with what we have written in Section 6.
>>=20
>> Here is my proposed text:
>>=20
>> "
>> o  The assertion MUST contain a Subject.  The Subject identifies an
>> authorized accessor for which the access token is being requested
>> (typically the resource owner, or an authorized delegate).
>>=20
>>=20
>> When the client is acting on behalf of itself, as described in =
Section
>> 6.1 and Section 6.2, the Subject MUST be the value of the client's
>> "client_id".
>>=20
>> When the client is acting on behalf of an user, as described in =
Section
>> 6.3, the Subject element MUST be included in the assertion and
>> identifies an authorized accessor for which the access token is being
>> requested.
>>=20
>> When the client is acting on behalf of an anonymous user, as =
described
>> in Section 6.3.1, the Subject element MUST NOT be included in the
>> assertion. Other elements within the assertion will, however, provide
>> enough information for the authorization server to make an =
authorization
>> decision.
>> "
>>=20
>> Does this make sense to you?
>>=20
>> Ciao
>> Hannes
>>=20
>>=20
>> On 04/24/2014 02:30 PM, Brian Campbell wrote:
>> > There is some discussion of that case in the assertion framework
>> > document at
>> > =
http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-6.3.1
>> >
>> > Do you feel that more is needed? If so, can you propose some text?
>> >
>> >
>> > On Thu, Apr 24, 2014 at 1:09 AM, Hannes Tschofenig
>> > <hannes.tschofenig@gmx.net <mailto:hannes.tschofenig@gmx.net>> =
wrote:
>> >
>> >     Hi Brian,
>> >
>> >     I read through the thread and the Google case is a bit =
different since
>> >     they are using the client authentication part of the JWT bearer =
spec.
>> >     There I don't see the privacy concerns either.
>> >
>> >     I am, however, focused on the authorization grant where the =
subject is
>> >     in most cases the resource owner.
>> >
>> >     It is possible to put garbage into the subject element when =
privacy
>> >     protection is needed for the resource owner case but that would =
need to
>> >     be described in the document; currently it is not there.
>> >
>> >     Ciao
>> >     Hannes
>> >
>> >
>> >     On 04/24/2014 12:37 AM, Brian Campbell wrote:
>> >     > That thread that Antonio started which you reference went on =
for some
>> >     > time
>> >     >
>> >     =
(http://www.ietf.org/mail-archive/web/oauth/current/threads.html#12520)
>> >     > and seems to have reached consensus that the spec didn't need
>> >     normative
>> >     > change and that such privacy cases or other cases which =
didn't
>> >     > explicitly need a subject identifier would be more =
appropriately dealt
>> >     > with in application logic:
>> >     > =
http://www.ietf.org/mail-archive/web/oauth/current/msg12538.html
>> >     >
>> >     >
>> >     >
>> >     >
>> >     > On Wed, Apr 23, 2014 at 2:39 AM, Hannes Tschofenig
>> >     > <hannes.tschofenig@gmx.net <mailto:hannes.tschofenig@gmx.net>
>> >     <mailto:hannes.tschofenig@gmx.net
>> >     <mailto:hannes.tschofenig@gmx.net>>> wrote:
>> >     >
>> >     >     Hi all,
>> >     >
>> >     >     in preparing the shepherd write-up for
>> >     draft-ietf-oauth-jwt-bearer-08 I
>> >     >     had to review our recent email conversations and the =
issue
>> >     raised by
>> >     >     Antonio in
>> >     >
>> >     =
http://www.ietf.org/mail-archive/web/oauth/current/msg12520.html belong
>> >     >     to it.
>> >     >
>> >     >     The issue was that Section 3 of =
draft-ietf-oauth-jwt-bearer-08
>> >     says:
>> >     >     "
>> >     >        2.   The JWT MUST contain a "sub" (subject) claim
>> >     identifying the
>> >     >             principal that is the subject of the JWT.  Two =
cases
>> >     need to be
>> >     >             differentiated:
>> >     >
>> >     >             A.  For the authorization grant, the subject =
SHOULD
>> >     identify an
>> >     >                 authorized accessor for whom the access token =
is being
>> >     >                 requested (typically the resource owner, or =
an
>> >     authorized
>> >     >                 delegate).
>> >     >
>> >     >             B.  For client authentication, the subject MUST =
be the
>> >     >                 "client_id" of the OAuth client.
>> >     >     "
>> >     >
>> >     >     Antonio pointed to the current Google API to illustrate =
that
>> >     the subject
>> >     >     is not always needed. Here is the Google API =
documentation:
>> >     >     =
https://developers.google.com/accounts/docs/OAuth2ServiceAccount
>> >     >
>> >     >     The Google API used the client authentication part =
(rather
>> >     than the
>> >     >     authorization grant), in my understanding.
>> >     >
>> >     >     I still believe that the subject field has to be included =
for
>> >     client
>> >     >     authentication but I am not so sure anymore about the
>> >     authorization
>> >     >     grant since I could very well imagine cases where the =
subject
>> >     is not
>> >     >     needed for authorization decisions but also for privacy =
reasons.
>> >     >
>> >     >     I would therefore suggest to change the text as follows:
>> >     >
>> >     >     "
>> >     >        2.   The JWT contains a "sub" (subject) claim =
identifying the
>> >     >             principal that is the subject of the JWT.  Two =
cases
>> >     need to be
>> >     >             differentiated:
>> >     >
>> >     >             A.  For the authorization grant, the subject =
claim MAY
>> >     >                 be included. If it is included it MUST =
identify the
>> >     >                 authorized accessor for whom the access token =
is being
>> >     >                 requested (typically the resource owner, or =
an
>> >     authorized
>> >     >                 delegate). Reasons for not including the =
subject claim
>> >     >                 in the JWT are identity hiding (i.e., privacy
>> >     protection
>> >     >                 of the identifier of the subject) and cases =
where
>> >     >                 the identifier of the subject is irrelevant =
for making
>> >     >                 an authorization decision by the resource =
server.
>> >     >
>> >     >             B.  For client authentication, the subject MUST =
be the
>> >     >                 included in the JWT and the value MUST be =
populated
>> >     >                 with the "client_id" of the OAuth client.
>> >     >     "
>> >     >
>> >     >     What do you guys think?
>> >     >
>> >     >     Ciao
>> >     >     Hannes
>> >     >
>> >     >
>> >     >     _______________________________________________
>> >     >     OAuth mailing list
>> >     >     OAuth@ietf.org <mailto:OAuth@ietf.org> =
<mailto:OAuth@ietf.org
>> >     <mailto:OAuth@ietf.org>>
>> >     >     https://www.ietf.org/mailman/listinfo/oauth
>> >     >
>> >     >
>> >
>> >
>>=20
>> =20
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>=20
>=20


--Apple-Mail=_75A17B79-53FD-487F-85F5-9824B17D3EF8
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=windows-1252

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dwindows-1252"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">I am =
OK with that.<div><br><div style=3D""><div>On Apr 25, 2014, at 4:57 PM, =
Brian Campbell &lt;<a =
href=3D"mailto:bcampbell@pingidentity.com">bcampbell@pingidentity.com</a>&=
gt; wrote:</div><br class=3D"Apple-interchange-newline"><blockquote =
type=3D"cite"><div dir=3D"ltr"><div>I absolutely agree with always =
requiring both issuer and subject and that doing so keeps the specs =
simpler and is likely to improve interoperability.<br><br></div>However, =
without changing that, perhaps some of the text in the document(s) could =
be improved a bit. Here's a rough proposal:<br>

<br>Change the text of the second bullet in <a =
href=3D"http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-=
5.2">http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-5.2=
</a> to <br><br><div style=3D"margin-left:40px">

"The assertion MUST contain a Subject. The Subject typically identifies =
an authorized accessor for which the access token is being requested =
(i.e. the resource owner, or an authorized delegate) but, in some cases, =
may be a pseudonym or other value denoting an anonymous user. When the =
client is acting on behalf of itself, the Subject MUST be the value of =
the client's client_id."<br>

</div><br><div>And also change <a =
href=3D"http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-=
6.3.1">http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-6=
.3.1</a> to <br><br><div style=3D"margin-left:40px">

"When a client is accessing resources on behalf of an anonymous user, a =
mutually agreed upon Subject identifier indicating anonymity is used. =
The Subject value might be an agreed upon static value indicating an =
anonymous user or an opaque persistent or transient pseudonym for the =
user may also be utilized. The authorization may be based upon =
additional criteria, such as additional attributes or claims provided in =
the assertion. For example, a client may present an assertion from a =
trusted issuer asserting that the bearer is over 18 via an included =
claim. In this case, no additional information about the user's identity =
is included, yet all the data needed to issue an access token is =
present."<br>

</div><br></div><div>And maybe also change the subject text in SAML and =
JWT (item #2 in <a =
href=3D"http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-08#section-=
3">http://tools.ietf.org/html/draft-ietf-oauth-jwt-bearer-08#section-3</a>=
 and <a =
href=3D"http://tools.ietf.org/html/draft-ietf-oauth-saml2-bearer-19#sectio=
n-3">http://tools.ietf.org/html/draft-ietf-oauth-saml2-bearer-19#section-3=
</a>) to read a little more like the new proposed text above for section =
5.2 of the Assertion Framework draft.<br>

<br></div><div>Would that sit any better with you, Hannes? Thoughts from =
others in the WG?<br></div></div><div class=3D"gmail_extra"><br><br><div =
class=3D"gmail_quote">On Fri, Apr 25, 2014 at 1:08 PM, John Bradley =
<span dir=3D"ltr">&lt;<a href=3D"mailto:ve7jtb@ve7jtb.com" =
target=3D"_blank">ve7jtb@ve7jtb.com</a>&gt;</span> wrote:<br>

<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div =
style=3D"word-wrap:break-word">Agreed.<div><br><div><div><div =
class=3D"h5"><div>On Apr 25, 2014, at 3:07 PM, Mike Jones &lt;<a =
href=3D"mailto:Michael.Jones@microsoft.com" =
target=3D"_blank">Michael.Jones@microsoft.com</a>&gt; wrote:</div>

<br></div></div><blockquote type=3D"cite"><div link=3D"blue" =
vlink=3D"purple" =
style=3D"font-family:Helvetica;font-size:12px;font-style:normal;font-varia=
nt:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text=
-align:start;text-indent:0px;text-transform:none;white-space:normal;word-s=
pacing:0px" lang=3D"EN-US">

<div><div class=3D"h5"><div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">I agree.&nbsp; We=92d already discussed this pretty extensively and =
reached the conclusion that always requiring both an issuer and a =
subject both kept the specs simpler and was likely to improve =
interoperability.<u></u><u></u></span></div>

<div style=3D"margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times =
New Roman',serif"><span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">&nbsp;</span></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">It=92s entirely up to the application profile what the contents of =
the issuer and the subject fields are and so I don=92t think we need to =
further specify their contents beyond what=92s already in the =
specs.<u></u><u></u></span></div>

<div style=3D"margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times =
New Roman',serif"><span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">&nbsp;</span></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -- =
Mike<u></u><u></u></span></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span =
style=3D"font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125=
)">&nbsp;</span></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><b><span =
style=3D"font-size:10pt;font-family:Tahoma,sans-serif">From:</span></b><sp=
an =
style=3D"font-size:10pt;font-family:Tahoma,sans-serif"><span>&nbsp;</span>=
OAuth [<a href=3D"mailto:oauth-bounces@ietf.org" =
target=3D"_blank">mailto:oauth-bounces@ietf.org</a>]<span>&nbsp;</span><b>=
On Behalf Of<span>&nbsp;</span></b>Brian Campbell<br>

<b>Sent:</b><span>&nbsp;</span>Friday, April 25, 2014 10:17 =
AM<br><b>To:</b><span>&nbsp;</span>Hannes =
Tschofenig<br><b>Cc:</b><span>&nbsp;</span><a =
href=3D"mailto:oauth@ietf.org" =
target=3D"_blank">oauth@ietf.org</a><br><b>Subject:</b><span>&nbsp;</span>=
Re: [OAUTH-WG] draft-ietf-oauth-jwt-bearer-08 &amp; subject =
issue<u></u><u></u></span></div>

<div style=3D"margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times =
New Roman',serif"><u></u>&nbsp;<u></u></div><div><div><div><p =
class=3D"MsoNormal" style=3D"margin:0in 0in =
12pt;font-size:12pt;font-family:'Times New Roman',serif">

I believe, from the thread referenced earlier and prior discussion and =
draft text, that the WG has reached (rough) consensus to require the =
subject claim. So text that says "Subject element MUST NOT be included" =
isn't workable.<u></u><u></u></p>

</div><p class=3D"MsoNormal" style=3D"margin:0in 0in =
12pt;font-size:12pt;font-family:'Times New Roman',serif">It seems what's =
needed here is some better explanation of how, in cases that need it, =
the value of the subject can be populated without using a PII type =
value. A simple static value like "ANONYMOUS-SUBJECT" could be used. Or, =
more likely, some kind of pairwise persistent pseudonymous identifier =
would be utilized, which would not directly identify the subject but =
would allow the relying party to recognize the same subject on =
subsequent transactions. A transient pseudonym might also be appropriate =
in some cases. And any of those approaches could be used with or without =
additional claims (like age &gt; 18 or membership in some group) that =
get used to make an authorization decision.&nbsp;<u></u><u></u></p>

</div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">I wasn't =
sure exactly how to articulate all that in text for the draft(s) but =
that's more of what I was asking for when I asked if you could propose =
some text.<u></u><u></u></div>

<div><p class=3D"MsoNormal" style=3D"margin:0in 0in =
12pt;font-size:12pt;font-family:'Times New =
Roman',serif"><br><br><br><u></u><u></u></p></div></div><div><p =
class=3D"MsoNormal" style=3D"margin:0in 0in =
12pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u>&nbsp;<u></u></p><div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">On Thu, Apr =
24, 2014 at 6:48 AM, Hannes Tschofenig &lt;<a =
href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a>&gt; =
wrote:<u></u><u></u></div>

<div style=3D"margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times =
New Roman',serif">Hi Brian,<br><br>Thanks for pointing to the assertion =
framework document. Re-reading the<br>text it appears that we have =
listed the case that in Section 6.3.1 but<br>

have forgotten to cover it elsewhere in the document.<br><br><br>In =
Section 6.3.1 we say:<br><br>"<br><br>6.3.1. &nbsp;Client Acting on =
Behalf of an Anonymous User<br><br>&nbsp; &nbsp;When a client is =
accessing resources on behalf of an anonymous user,<br>

&nbsp; &nbsp;the Subject indicates to the Authorization Server that the =
client is<br>&nbsp; &nbsp;acting on-behalf of an anonymous user as =
defined by the Authorization<br>&nbsp; &nbsp;Server. &nbsp;It is implied =
that authorization is based upon additional<br>

&nbsp; &nbsp;criteria, such as additional attributes or claims provided =
in the<br>&nbsp; &nbsp;assertion. &nbsp;For example, a client may =
present an assertion from a<br>&nbsp; &nbsp;trusted issuer asserting =
that the bearer is over 18 via an included<br>&nbsp; &nbsp;claim.<br>

<br>*****<br>&nbsp; &nbsp; In this case, no additional information about =
the user's<br>&nbsp; &nbsp;identity is included, yet all the data needed =
to issue an access<br>&nbsp; &nbsp;token is present.<br>*****<br>"<br>(I =
marked the relevant part with '***')<br>

<br><br>In Section 5.2, however, we say:<br><br><br>&nbsp; &nbsp;o =
&nbsp;The assertion MUST contain a Subject. &nbsp;The Subject identifies =
an<br>&nbsp; &nbsp; &nbsp; authorized accessor for which the access =
token is being requested<br>&nbsp; &nbsp; &nbsp; (typically the resource =
owner, or an authorized delegate). &nbsp;When<br>

&nbsp; &nbsp; &nbsp; the client is acting on behalf of itself, the =
Subject MUST be the<br>&nbsp; &nbsp; &nbsp; value of the client's =
"client_id".<br><br><br>What we should have done in Section 5.2 is to =
expand the cases inline<br>with what we have written in Section 6.<br>

<br>Here is my proposed text:<br><br>"<br>o &nbsp;The assertion MUST =
contain a Subject. &nbsp;The Subject identifies an<br>authorized =
accessor for which the access token is being =
requested<u></u><u></u></div><div><p class=3D"MsoNormal" =
style=3D"margin:0in 0in 12pt;font-size:12pt;font-family:'Times New =
Roman',serif">

(typically the resource owner, or an authorized =
delegate).<br><br><u></u><u></u></p></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">When the =
client is acting on behalf of itself, as described in Section<br>

6.1 and Section 6.2, the Subject MUST be the value of the =
client's<br>"client_id".<br><br>When the client is acting on behalf of =
an user, as described in Section<br>6.3, the Subject element MUST be =
included in the assertion and<br>

identifies an authorized accessor for which the access token is =
being<br>requested.<br><br>When the client is acting on behalf of an =
anonymous user, as described<br>in Section 6.3.1, the Subject element =
MUST NOT be included in the<br>

assertion. Other elements within the assertion will, however, =
provide<br>enough information for the authorization server to make an =
authorization<br>decision.<br>"<br><br>Does this make sense to =
you?<br><br>Ciao<br>
Hannes<u></u><u></u></div>
<div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><br><br>On =
04/24/2014 02:30 PM, Brian Campbell wrote:<br>&gt; There is some =
discussion of that case in the assertion framework<br>

&gt; document at<br>&gt;<span>&nbsp;</span><a =
href=3D"http://tools.ietf.org/html/draft-ietf-oauth-assertions-15#section-=
6.3.1" style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">http://tools.ietf.org/html/draft-ietf-oauth-assertions-1=
5#section-6.3.1</a><br>

&gt;<br>&gt; Do you feel that more is needed? If so, can you propose =
some text?<br>&gt;<br>&gt;<br>&gt; On Thu, Apr 24, 2014 at 1:09 AM, =
Hannes Tschofenig<u></u><u></u></div></div><div><div style=3D"margin:0in =
0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

&gt; &lt;<a href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a><span>&nbsp;</span>&lt;mail=
to:<a href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a>&gt;&gt; wrote:<br>

&gt;<br>&gt; &nbsp; &nbsp; Hi Brian,<br>&gt;<br>&gt; &nbsp; &nbsp; I =
read through the thread and the Google case is a bit different =
since<br>&gt; &nbsp; &nbsp; they are using the client authentication =
part of the JWT bearer spec.<br>&gt; &nbsp; &nbsp; There I don't see the =
privacy concerns either.<br>

&gt;<br>&gt; &nbsp; &nbsp; I am, however, focused on the authorization =
grant where the subject is<br>&gt; &nbsp; &nbsp; in most cases the =
resource owner.<br>&gt;<br>&gt; &nbsp; &nbsp; It is possible to put =
garbage into the subject element when privacy<br>

&gt; &nbsp; &nbsp; protection is needed for the resource owner case but =
that would need to<br>&gt; &nbsp; &nbsp; be described in the document; =
currently it is not there.<br>&gt;<br>&gt; &nbsp; &nbsp; Ciao<br>&gt; =
&nbsp; &nbsp; Hannes<br>&gt;<br>&gt;<br>&gt; &nbsp; &nbsp; On 04/24/2014 =
12:37 AM, Brian Campbell wrote:<br>

&gt; &nbsp; &nbsp; &gt; That thread that Antonio started which you =
reference went on for some<br>&gt; &nbsp; &nbsp; &gt; time<br>&gt; =
&nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; (<a =
href=3D"http://www.ietf.org/mail-archive/web/oauth/current/threads.html#12=
520" style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">http://www.ietf.org/mail-archive/web/oauth/current/threa=
ds.html#12520</a>)<br>

&gt; &nbsp; &nbsp; &gt; and seems to have reached consensus that the =
spec didn't need<br>&gt; &nbsp; &nbsp; normative<br>&gt; &nbsp; &nbsp; =
&gt; change and that such privacy cases or other cases which =
didn't<br>&gt; &nbsp; &nbsp; &gt; explicitly need a subject identifier =
would be more appropriately dealt<br>

&gt; &nbsp; &nbsp; &gt; with in application logic:<br>&gt; &nbsp; &nbsp; =
&gt;<span>&nbsp;</span><a =
href=3D"http://www.ietf.org/mail-archive/web/oauth/current/msg12538.html" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">http://www.ietf.org/mail-archive/web/oauth/current/msg12=
538.html</a><br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; =
&gt;<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; On Wed, Apr =
23, 2014 at 2:39 AM, Hannes Tschofenig<br>&gt; &nbsp; &nbsp; &gt; &lt;<a =
href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a><span>&nbsp;</span>&lt;mail=
to:<a href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a>&gt;<u></u><u></u></div>

</div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">&gt; &nbsp; =
&nbsp; &lt;mailto:<a href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a><u></u><u></u></div>

<div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">&gt; &nbsp; =
&nbsp; &lt;mailto:<a href=3D"mailto:hannes.tschofenig@gmx.net" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">hannes.tschofenig@gmx.net</a>&gt;&gt;&gt; wrote:<br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; Hi =
all,<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
in preparing the shepherd write-up for<br>&gt; &nbsp; &nbsp; =
draft-ietf-oauth-jwt-bearer-08 I<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp; had to review our recent email conversations and the issue<br>

&gt; &nbsp; &nbsp; raised by<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
Antonio in<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; =
&nbsp;<span>&nbsp;</span><a =
href=3D"http://www.ietf.org/mail-archive/web/oauth/current/msg12520.html" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">http://www.ietf.org/mail-archive/web/oauth/current/msg12=
520.html</a><span>&nbsp;</span>belong<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; to it.<br>&gt; &nbsp; &nbsp; =
&gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; The issue was that Section =
3 of draft-ietf-oauth-jwt-bearer-08<br>&gt; &nbsp; &nbsp; says:<br>&gt; =
&nbsp; &nbsp; &gt; &nbsp; &nbsp; "<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp; &nbsp; &nbsp;2. &nbsp; The JWT MUST contain a "sub" (subject) =
claim<br>

&gt; &nbsp; &nbsp; identifying the<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; principal that is the subject of the =
JWT. &nbsp;Two cases<br>&gt; &nbsp; &nbsp; need to be<br>&gt; &nbsp; =
&nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
differentiated:<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; A. &nbsp;For the authorization =
grant, the subject SHOULD<br>

&gt; &nbsp; &nbsp; identify an<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; authorized accessor for whom =
the access token is being<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; requested (typically the =
resource owner, or an<br>&gt; &nbsp; &nbsp; authorized<br>&gt; &nbsp; =
&nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
delegate).<br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; B. &nbsp;For client authentication, the subject =
MUST be the<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; "client_id" of the OAuth client.<br>&gt; =
&nbsp; &nbsp; &gt; &nbsp; &nbsp; "<br>&gt; &nbsp; &nbsp; &gt;<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; Antonio pointed to the current =
Google API to illustrate that<br>&gt; &nbsp; &nbsp; the subject<br>&gt; =
&nbsp; &nbsp; &gt; &nbsp; &nbsp; is not always needed. Here is the =
Google API documentation:<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp;<span>&nbsp;</span><a =
href=3D"https://developers.google.com/accounts/docs/OAuth2ServiceAccount" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">https://developers.google.com/accounts/docs/OAuth2Servic=
eAccount</a><br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; The =
Google API used the client authentication part (rather<br>&gt; &nbsp; =
&nbsp; than the<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; authorization =
grant), in my understanding.<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; =
&nbsp; &gt; &nbsp; &nbsp; I still believe that the subject field has to =
be included for<br>

&gt; &nbsp; &nbsp; client<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
authentication but I am not so sure anymore about the<br>&gt; &nbsp; =
&nbsp; authorization<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; grant =
since I could very well imagine cases where the subject<br>&gt; &nbsp; =
&nbsp; is not<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; needed for authorization decisions =
but also for privacy reasons.<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; =
&nbsp; &gt; &nbsp; &nbsp; I would therefore suggest to change the text =
as follows:<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp; "<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp;2. &nbsp; The JWT =
contains a "sub" (subject) claim identifying the<br>&gt; &nbsp; &nbsp; =
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; principal that is the =
subject of the JWT. &nbsp;Two cases<br>&gt; &nbsp; &nbsp; need to =
be<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
differentiated:<br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; A. &nbsp;For the authorization grant, the subject =
claim MAY<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; be included. If it is included it MUST identify =
the<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; authorized accessor for whom the access token is being<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; requested (typically the resource owner, or an<br>&gt; &nbsp; =
&nbsp; authorized<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; delegate). Reasons for not including the =
subject claim<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; in the JWT are identity hiding (i.e., =
privacy<br>

&gt; &nbsp; &nbsp; protection<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; of the identifier of the =
subject) and cases where<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; the identifier of the subject is =
irrelevant for making<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; an authorization decision by the =
resource server.<br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; B. &nbsp;For client authentication, the subject =
MUST be the<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; included in the JWT and the value MUST be =
populated<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; with the "client_id" of the OAuth client.<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; "<br>&gt; &nbsp; &nbsp; =
&gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; What do you guys =
think?<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; &nbsp; =
&nbsp; Ciao<br>&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; Hannes<br>&gt; =
&nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; &gt; =
&nbsp; &nbsp; _______________________________________________<br>

&gt; &nbsp; &nbsp; &gt; &nbsp; &nbsp; OAuth mailing =
list<u></u><u></u></div></div><p class=3D"MsoNormal" style=3D"margin:0in =
0in 12pt;font-size:12pt;font-family:'Times New Roman',serif">&gt; &nbsp; =
&nbsp; &gt; &nbsp; &nbsp;<span>&nbsp;</span><a =
href=3D"mailto:OAuth@ietf.org" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">OAuth@ietf.org</a><span>&nbsp;</span>&lt;mailto:<a =
href=3D"mailto:OAuth@ietf.org" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">OAuth@ietf.org</a>&gt; &lt;mailto:<a =
href=3D"mailto:OAuth@ietf.org" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">OAuth@ietf.org</a><br>

&gt; &nbsp; &nbsp; &lt;mailto:<a href=3D"mailto:OAuth@ietf.org" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">OAuth@ietf.org</a>&gt;&gt;<br>&gt; &nbsp; &nbsp; &gt; =
&nbsp; &nbsp;<span>&nbsp;</span><a =
href=3D"https://www.ietf.org/mailman/listinfo/oauth" =
style=3D"color:purple;text-decoration:underline" =
target=3D"_blank">https://www.ietf.org/mailman/listinfo/oauth</a><br>

&gt; &nbsp; &nbsp; &gt;<br>&gt; &nbsp; &nbsp; =
&gt;<br>&gt;<br>&gt;<u></u><u></u></p></div><div style=3D"margin:0in 0in =
0.0001pt;font-size:12pt;font-family:'Times New =
Roman',serif"><u></u>&nbsp;<u></u></div></div></div>______________________=
_________________________<br>

OAuth mailing list<br><a href=3D"mailto:OAuth@ietf.org" =
target=3D"_blank">OAuth@ietf.org</a><br></div></div><a =
href=3D"https://www.ietf.org/mailman/listinfo/oauth" =
target=3D"_blank">https://www.ietf.org/mailman/listinfo/oauth</a></div>

</blockquote></div><br></div></div></blockquote></div><br></div>
</blockquote></div><br></div></body></html>=

--Apple-Mail=_75A17B79-53FD-487F-85F5-9824B17D3EF8--

