Re: [Id-event] Making SETs distinct as JWTs (was: Re: Thread: Clarifying use of sub and iss in SET tokens)
Marius Scurtescu <mscurtescu@google.com> Fri, 03 March 2017 00:35 UTC
Return-Path: <mscurtescu@google.com>
X-Original-To: id-event@ietfa.amsl.com
Delivered-To: id-event@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C9498129699 for <id-event@ietfa.amsl.com>; Thu, 2 Mar 2017 16:35:15 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
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 lxdg9WXURlrT for <id-event@ietfa.amsl.com>; Thu, 2 Mar 2017 16:35:13 -0800 (PST)
Received: from mail-it0-x230.google.com (mail-it0-x230.google.com [IPv6:2607:f8b0:4001:c0b::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EE46012940D for <id-event@ietf.org>; Thu, 2 Mar 2017 16:35:12 -0800 (PST)
Received: by mail-it0-x230.google.com with SMTP id m27so4159577iti.1 for <id-event@ietf.org>; Thu, 02 Mar 2017 16:35:12 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=cDhgl1v5/V2W40Cz3/1gbIeyXyf9ODwvMK5GM9QQtp4=; b=ZnXQQArSdniEd7hVEpxYC7okk9RmorKHSL2ZPUiddOzvXhuy7l+ouepUGA2fJalzUE m1LKOGqvr0A3yrgZ2/FRbCErGLxJ19YWjTrU6xQ7tQlBcvNHq8K5WKhp+WrkUBBBhmcz Ahf9lPvE1RJ3KhDIkSNIk8G8gdaSyxciwyOCIscH8koi6FK1opEvXmehLEMXpcqOoUc8 CqZ9b5GyBogbGIgYWgEJOgyYXSE06JVObrwp8IjhSRzmDQLYC7FwwsLVklpWHG7P8Lzh Pj6laaarlRHfXJ2eAxY74nQgJR94cgShy9sJ6ayzjxeoaRFn9YziKJQSf7qosxe/51J3 QVGw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=cDhgl1v5/V2W40Cz3/1gbIeyXyf9ODwvMK5GM9QQtp4=; b=KLEWzcqUKT5xZnSaXkGxfPg+8ANrRf71v+kACUE6Vg8IZjx1Bxmw48Wvkt1kG/rTDm 59Bjk4cVm8jzRCKwrDRapghjqi0KBQMjBIZgjZ7hlK1zlJep+udGnChjURbefa+DJXpN u577SqOmV1VGES0rgRucBMiC8G8+TiUL8vz23OTPS551b90gW+fMt7TQGihPcpmaHqDf l708pMHStNX9rW9yiBRPAmcn76hlm8rcleCQ3iQ7vnEO53pmZce5YJPXpdZzIo9HmCgM mduPRgLQ3r7/HCVWAwd+swBCpPsMC7MX4Eir16j2H40YMKl8V9MWdETLgfp9SSVYl/5h SbWA==
X-Gm-Message-State: AMke39na2RJ/RY9lzbS3fDjVeFezMFbY4Te1+vY0OjwayVAFEynVeKyuRtMOQxxX1O6u7i4Gh6EzWjKaPv123Gl/
X-Received: by 10.36.10.202 with SMTP id 193mr1129763itw.98.1488501312071; Thu, 02 Mar 2017 16:35:12 -0800 (PST)
MIME-Version: 1.0
Received: by 10.107.7.207 with HTTP; Thu, 2 Mar 2017 16:34:51 -0800 (PST)
In-Reply-To: <A54424D8-6B80-45F0-80B5-A442F07FFB31@oracle.com>
References: <4611E3C8-9772-44EA-940D-077E1EA6247F@oracle.com> <CAAP42hAPZOHn-37wYrOy7OcvNuqWdXtSSMHxb_AoW7kXeAy4wA@mail.gmail.com> <CY4PR21MB050423CEEA9AB0CC64F0973FF5290@CY4PR21MB0504.namprd21.prod.outlook.com> <CAAP42hD8FbZSKWiorKSZHqiidak4Gf071xKTD2d9EvZa13mt5g@mail.gmail.com> <CY4PR21MB05047835E14B3D375C0538F6F5290@CY4PR21MB0504.namprd21.prod.outlook.com> <CAAP42hB63GC9=7nqiayjnD9i5RG7Yu7CJVCtDZpNWTgLMrDJ8w@mail.gmail.com> <0D17E1B4-D8C1-4241-8D11-8C0C700DD1D5@oracle.com> <CAAP42hANJNA62Zkhpv96snpk7O8-cUfwMtooCuhyN242vEMkfA@mail.gmail.com> <CAGdjJpLEX06CsLFH4u4YicP1qbW1Q8yjFhZjSovFRJzQv7B1bQ@mail.gmail.com> <CAAP42hAQwK1qPAymbgLNa2bjgBFABHC2VwD5NmrF+iB+zZ__wA@mail.gmail.com> <CY4PR21MB050400C17BDCA9B45C2DB65CF5280@CY4PR21MB0504.namprd21.prod.outlook.com> <CAGdjJpK1UktDPOBT5AXSQS=MYOHz2mbAdiFt8m5AQbyc59ufKA@mail.gmail.com> <CY4PR21MB050423283AFC0A890DEC696EF5280@CY4PR21MB0504.namprd21.prod.outlook.com> <CAGdjJp+kwyw3T7MBKyWyXjewaGrOUVR5=WADu74hGudj_zYqAw@mail.gmail.com> <CAGdjJp+pS+RLKm8fGpv9XO1gz4jYfCPUF+pqgE1KpWJ6dnbheg@mail.gmail.com> <CAAP42hDbdwQfYQ13ksYnO0N89uWo1F1Muu=Rih7n3w++8omfwg@mail.gmail.com> <CAGdjJpLgtSOyNCjsJS7h7vnPBdjN8uHZZZpMuBQ0X4o12WJ_Jw@mail.gmail.com> <CAAP42hCAEPExj=F1ub4upRJwmNaWoKmJJxwgj6MTyPB0CCyNWA@mail.gmail.com> <CA+k3eCS_EHFUd2Vwhdqjp53AtfUBYnz+Hmpj-V7tR7d5uUGX9A@mail.gmail.com> <8756C464-C727-48FD-9486-7183BA04DD7B@oracle.com> <A54424D8-6B80-45F0-80B5-A442F07FFB31@oracle.com>
From: Marius Scurtescu <mscurtescu@google.com>
Date: Thu, 02 Mar 2017 16:34:51 -0800
Message-ID: <CAGdjJpKZZ1EJ+a0ohS+gHGegkDAb8Fxi7J_UJCkgDo05M4uy0w@mail.gmail.com>
To: Phil Hunt <phil.hunt@oracle.com>
Content-Type: multipart/alternative; boundary="001a1144bd5af486940549c8b73f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/id-event/k5PiIvWegXYCOjv30YxkSKXQNn0>
Cc: William Denniss <wdenniss@google.com>, Mike Jones <Michael.Jones@microsoft.com>, Brian Campbell <bcampbell@pingidentity.com>, ID Events Mailing List <id-event@ietf.org>
Subject: Re: [Id-event] Making SETs distinct as JWTs (was: Re: Thread: Clarifying use of sub and iss in SET tokens)
X-BeenThere: id-event@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "A mailing list to discuss the potential solution for a common identity event messaging format and distribution system." <id-event.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/id-event>, <mailto:id-event-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/id-event/>
List-Post: <mailto:id-event@ietf.org>
List-Help: <mailto:id-event-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/id-event>, <mailto:id-event-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 03 Mar 2017 00:35:16 -0000
I did not realize that typ is a header. Shouldn't ideally the SET purpose or "type" be a claim rather? I doubt that any existing libraries take crit into account. Can anyone point to a library that does look at crit? With that in mind, crit does not help much IMO, we might just as well define a type claim. Marius On Thu, Mar 2, 2017 at 8:05 AM, Phil Hunt <phil.hunt@oracle.com> wrote: > PS. This is another of Yaron’s threads….”Avoiding SETS being confused as > access tokens” > > > Phil > > Oracle Corporation, Identity Cloud Services & Identity Standards > @independentid > www.independentid.com > phil.hunt@oracle.com > > > > > > > > On Mar 2, 2017, at 8:03 AM, Phil Hunt <phil.hunt@oracle.com> wrote: > > Interesting! +1 > > Phil > > Oracle Corporation, Identity Cloud Services & Identity Standards > @independentid > www.independentid.com > phil.hunt@oracle.com > > > > > > > > On Mar 2, 2017, at 7:53 AM, Brian Campbell <bcampbell@pingidentity.com> > wrote: > > Not that it makes a difference helping the situation here but "typ" is a > JOSE header rather than a JWT claim (see https://tools.ietf.org/html/rf > c7515#section-4.1.9 and https://tools.ietf.org/html/rfc7516#section-4.1.11 > and https://tools.ietf.org/html/rfc7519#section-5.1). > > That got me thinking, however, that maybe the "crit" JOSE header ( > https://tools.ietf.org/html/rfc7515#section-4.1.11) might be useful here. > Assuming JWT/JOSE implementations support "crit" per spec (they *should* > but that might be an optimistic assumption) then it could be used to > address the 'clients already written that don't check for it' problem. > Something like a new "set" header that gets marked as critical. I.e. as > just a strawman, > > { > "alg":"ES256", > "crit":["set"], > "set":true > } > > says that the receiver must understand and process the "set" header, which > existing OIDC and OAuth JWT consumers wouldn't. > > Honestly not sure if that's a good idea or not. But wanted to throw it out > there. > > > > > > On Wed, Mar 1, 2017 at 7:05 PM, William Denniss <wdenniss@google.com> > wrote: > >> >> >> On Wed, Mar 1, 2017 at 5:52 PM, Marius Scurtescu <mscurtescu@google.com> >> wrote: >> >>> On Wed, Mar 1, 2017 at 5:30 PM, William Denniss <wdenniss@google.com> >>> wrote: >>> >>>> >>>> On Wed, Mar 1, 2017 at 5:05 PM, Marius Scurtescu <mscurtescu@google.com >>>> > wrote: >>>> >>>>> On Wed, Mar 1, 2017 at 4:50 PM, William Denniss <wdenniss@google.com> >>>>> wrote: >>>>> >>>>>> As a concrete example, let's say an RP that supports OIDC decides to >>>>>>> also implement RISC/SET. When they read the spec and decide on >>>>>>> implementation they realize that they also have to modify the existing OIDC >>>>>>> implementation so it does not accept Id Token looking JWTs that have an >>>>>>> "events" claim. It is very easy to miss this requirement. But more >>>>>>> important, when the next JWT application is implemented they might have to >>>>>>> yet again update the existing OIDC implementation, and so forth. >>>>>> >>>>>> >>>>>> Why would the RISC implementation reuse the same iss/aud pair as the >>>>>> OIDC implementation? >>>>>> >>>>> >>>>> iss naturally would be the same in most cases. I would argue that aud >>>>> would also naturally be the same, the client id, since that is the intended >>>>> recipient. Having aud be the URL of the target endpoint for example (the >>>>> only suggestion I am aware of), is hackish at best. The same endpoint could >>>>> be shared by multiple clients in some cases. Also, this couples creating >>>>> the SET with delivery details >>>>> >>>> >>>> Why not change iss for RISC? https://issuer.google.com/risc for >>>> example. >>>> >>> >>> Because iss/sub basically forces the iss to be the exact same as in the >>> Id Token. And separate iss requires separate signing keys. >>> >> >> We'd have to host the keys multiple times, but they *could* still be the >> same keys, right? >> >> >>> >>>>>> If it didn't, there's no issue! >>>>>> >>>>> >>>>> There might be no issue for SET, but we are going to run into this >>>>> problem over and over again. >>>>> >>>>> >>>>> >>>>>> Isn't this the simplest approach? Given that "typ" isn't mandated by >>>>>> JWT, I think that this is therefore the implied method for segregating JWTs >>>>>> by the usage intent. >>>>>> >>>>> >>>>> Not sure what you mean by "this". Replacing typ with unique iss/aud >>>>> combinations? >>>>> >>>> >>>> Our issue is that we have a common token format JWT, that multiple >>>> systems will consume which have different concerns. Reading RFC7519, I >>>> don't see any way to separate those concerns, other than with iss/aud. >>>> RFC7519 doesn't say "each spec that uses JWT should use a unique >>>> combination of claims such at no other spec could accidently interpret it >>>> as meant for them" (and I'm not convinced this is scalable, or desirable). >>>> Nor does it require the use of a type claim to achieve the usage >>>> segregation, and it's too late to add one now. >>>> >>> >>> I totally agree that we have no ideal solution here. Having each >>> application define its own URN (or some schema) for aud might work, even if >>> ugly. This is similar to merging typ into aud. Do we have any concrete >>> proposals here? >>> >> >> Defining a structured aud format could solve this, I agree – like you >> say, it's merging type into aud in a way that's backwards compatible. >> Personally I don't mind that approach, but I recall some resistance to it. >> >> Some kind of separation based on iss or aud I think is going to be the >> safest and most scalable solution. >> >> Why is it too late to use typ? >>> >> >> Because of all the clients already written that don't check for it. >> >> >>> >>>> >>>>> >>>>>> >>>>>> On Wed, Mar 1, 2017 at 4:36 PM, Marius Scurtescu < >>>>>> mscurtescu@google.com> wrote: >>>>>> >>>>>>> Mike, me providing a bulletproof example is irrelevant I think. I am >>>>>>> trying to convey a general idea. My point is that having to continuously >>>>>>> update existing implementations with new validation rules is error prone >>>>>>> and less likely to happen that having to do one generic update. >>>>>>> >>>>>>> Marius >>>>>>> >>>>>>> On Wed, Mar 1, 2017 at 4:31 PM, Mike Jones < >>>>>>> Michael.Jones@microsoft.com> wrote: >>>>>>> >>>>>>>> Except that your example isn’t one in which there’s an actual >>>>>>>> problem. For all response_types except for “code”, the ID Token must have >>>>>>>> a “nonce” claim matching the request in order to be validated. SETs won’t >>>>>>>> have this claim. For response_type=code, the ID Token must be retrieved >>>>>>>> from the Token Endpoint to be valid. But SETs aren’t returned as the >>>>>>>> id_token value from the Token Endpoint. There isn’t a channel in which an >>>>>>>> attacker can successfully substitute a SET for an ID Token and have it >>>>>>>> validate as an ID Token. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Following the advice to also verify that there isn’t an “events” >>>>>>>> claim in an ID Token provides redundancy and is good hygiene but isn’t >>>>>>>> actually even necessary to prevent substitution attacks. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- Mike >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> *From:* Marius Scurtescu [mailto:mscurtescu@google.com] >>>>>>>> *Sent:* Wednesday, March 1, 2017 4:22 PM >>>>>>>> *To:* Mike Jones <Michael.Jones@microsoft.com> >>>>>>>> *Cc:* William Denniss <wdenniss@google.com>; Phil Hunt (IDM) < >>>>>>>> phil.hunt@oracle.com>; ID Events Mailing List <id-event@ietf.org> >>>>>>>> >>>>>>>> *Subject:* Re: [Id-event] Thread: Clarifying use of sub and iss in >>>>>>>> SET tokens >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> As a concrete example, let's say an RP that supports OIDC decides >>>>>>>> to also implement RISC/SET. When they read the spec and decide on >>>>>>>> implementation they realize that they also have to modify the existing OIDC >>>>>>>> implementation so it does not accept Id Token looking JWTs that have an >>>>>>>> "events" claim. It is very easy to miss this requirement. But more >>>>>>>> important, when the next JWT application is implemented they might have to >>>>>>>> yet again update the existing OIDC implementation, and so forth. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> One simpler fix would be to modify the OIDC implementation once to >>>>>>>> look for the correct "typ" claim (assuming one is defined). The security >>>>>>>> considerations in the SET spec could specify that due to iss/aud overlap it >>>>>>>> is crucial that typ is validated in all related implementations. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> I understand that typ cannot be standardized by the SET spec for >>>>>>>> other specs (but it could definitely clearly define it for SET), but I >>>>>>>> think the sooner we do that for all relevant specs the better. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Marius >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Mar 1, 2017 at 4:07 PM, Mike Jones < >>>>>>>> Michael.Jones@microsoft.com> wrote: >>>>>>>> >>>>>>>> Of course, there is already a “typ” claim. Its use is optional, >>>>>>>> since whether it’s needed is application-specific. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Your suggestion that we issue general-purpose JWT guidance about >>>>>>>> iss/aud namespaces is exactly the kind of thing that’s beyond the scope of >>>>>>>> this working group, per my just-sent reply to Marius. Suggesting that >>>>>>>> applications use the “events” claim to distinguish between SETs and other >>>>>>>> kinds of JWTs is within the scope of this working group, because it is >>>>>>>> advice about using SETs. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- Mike >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> *From:* William Denniss [mailto:wdenniss@google.com] >>>>>>>> *Sent:* Wednesday, March 1, 2017 4:00 PM >>>>>>>> *To:* Marius Scurtescu <mscurtescu@google.com> >>>>>>>> *Cc:* Phil Hunt (IDM) <phil.hunt@oracle.com>; Mike Jones < >>>>>>>> Michael.Jones@microsoft.com>; ID Events Mailing List < >>>>>>>> id-event@ietf.org> >>>>>>>> *Subject:* Re: [Id-event] Thread: Clarifying use of sub and iss in >>>>>>>> SET tokens >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> If JWT had a "typ" field all along, this entire discussion could be >>>>>>>> avoided, but it's too late for that now. I believe that this was actually >>>>>>>> the founding reason behind standardizing SET, introducing the "events" >>>>>>>> claim. At least, to avoid the 3+ versions of event-on-JWT that were in >>>>>>>> discussion at the time. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> As with all security considerations people can not follow them and >>>>>>>> have bad things happen. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Doesn't suggesting that unrelated systems not issue tokens sharing >>>>>>>> the same iss/aud namespace make sense here as a mitigation though? To me >>>>>>>> that's better and more scalable than every spec removing some required >>>>>>>> claim from the other specs (e.g. mandating that people can't use "sub"). >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Mar 1, 2017 at 3:54 PM, Marius Scurtescu < >>>>>>>> mscurtescu@google.com> wrote: >>>>>>>> >>>>>>>> We also talked about adding another claim that defines the type or >>>>>>>> purpose of the JWT ("access token", "SET", etc). In a way it is the only >>>>>>>> sane option, but it is not addressing existing implementations. Asking >>>>>>>> implementors to "be careful" is asking for trouble IMO, especially because >>>>>>>> systems evolve by incrementally adding functionality. >>>>>>>> >>>>>>>> >>>>>>>> Marius >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Mar 1, 2017 at 12:44 PM, William Denniss < >>>>>>>> wdenniss@google.com> wrote: >>>>>>>> >>>>>>>> OK so perhaps the "URI" thing is overly restrictive. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> I guess the security consideration I'm recommending here is that >>>>>>>> you shouldn't have multiple systems that issue JWTs with the same iss/aud >>>>>>>> tuple, except when those systems are tightly coupled (as is the case with >>>>>>>> Connect & Logout). >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> If a shared issuer is used, then URI-based namespacing is *one* way >>>>>>>> to avoid this, but there are others. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> I'm trying to avoid the need for SET to "break" possible use in >>>>>>>> access tokens (one of the stated goals in the original post) – I think >>>>>>>> having advice like this can avoid normative language that changes, and >>>>>>>> overly complicates SET. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Id-event mailing list >>>>>>>> Id-event@ietf.org >>>>>>>> https://www.ietf.org/mailman/listinfo/id-event >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> >> _______________________________________________ >> Id-event mailing list >> Id-event@ietf.org >> https://www.ietf.org/mailman/listinfo/id-event >> >> > _______________________________________________ > Id-event mailing list > Id-event@ietf.org > https://www.ietf.org/mailman/listinfo/id-event > > > _______________________________________________ > Id-event mailing list > Id-event@ietf.org > https://www.ietf.org/mailman/listinfo/id-event > > >
- [Id-event] Thread: Clarifying use of sub and iss … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Brian Campbell
- [Id-event] Making SETs distinct as JWTs (was: Re:… Phil Hunt
- Re: [Id-event] Making SETs distinct as JWTs (was:… Phil Hunt
- Re: [Id-event] Making SETs distinct as JWTs (was:… Marius Scurtescu
- Re: [Id-event] Making SETs distinct as JWTs (was:… Mike Jones
- Re: [Id-event] Making SETs distinct as JWTs (was:… Marius Scurtescu
- Re: [Id-event] Making SETs distinct as JWTs (was:… Brian Campbell
- Re: [Id-event] Making SETs distinct as JWTs Benjamin Kaduk
- Re: [Id-event] Making SETs distinct as JWTs (was:… Vivek Biswas
- Re: [Id-event] Making SETs distinct as JWTs (was:… Brian Campbell
- Re: [Id-event] Making SETs distinct as JWTs (was:… Phil Hunt (IDM)
- Re: [Id-event] Making SETs distinct as JWTs (was:… Mike Jones
- Re: [Id-event] Making SETs distinct as JWTs (was:… Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Justin Richer
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Justin Richer
- Re: [Id-event] Making SETs distinct as JWTs Yaron Sheffer
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Benjamin Kaduk
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … William Denniss
- Re: [Id-event] Thread: Clarifying use of sub and … Benjamin Kaduk
- Re: [Id-event] Thread: Clarifying use of sub and … Justin Richer
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt
- Re: [Id-event] Thread: Clarifying use of sub and … Marius Scurtescu
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Benjamin Kaduk
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones
- Re: [Id-event] Thread: Clarifying use of sub and … Phil Hunt (IDM)
- Re: [Id-event] Thread: Clarifying use of sub and … Benjamin Kaduk
- Re: [Id-event] Thread: Clarifying use of sub and … Mike Jones