John, thanks, much appreciated!

On 11/01/2020 21:36, John Bradley wrote:
>
> Yes JAR is not prohibiting paramater replication in the header. 
>
> I will see if i can add something in final edits to call that out.
>
> John B.
>
> On 1/11/2020 6:16 AM, Vladimir Dzhuvinov wrote:
>>
>> Thanks Mike for the rfc7519 section-5.3
>> <https://tools.ietf.org/html/rfc7519#section-5.3> pointer. Can this
>> parameter replication be used for client_id or the client_id ass
>> "iss" even though it isn't explicitly mentioned in the JAR spec?
>>
>> On 11/01/2020 02:58, John Bradley wrote:
>>> Right we just don't say to put the iss there in OIDC if it's
>>> symetricly encrypted.
>>
>> OIDC doesn't have the symmetric key selection issue, I suppose that
>> why the possibility to replicate params to the JWE header isn't
>> mentioned at all. OIDC requires the top-level query params to
>> represent a valid OAuth 2.0 request, and there client_id is required.
>> If the client_id is present the client registration together with any
>> present client_secret can be retrieved.
>>
>> I reread the JAR spec, this is the only place that mentions handling
>> of symmetric JWE.
>>
>> https://tools.ietf.org/html/draft-ietf-oauth-jwsreq-20#section-10.2
>>
>>>    (b)  Verifying that the symmetric key for the JWE encryption is the
>>>         correct one if the JWE is using symmetric encryption.
>>
>>
>> Vladimir
>>
>>
>>>
>>> On Fri, Jan 10, 2020, 9:41 PM Mike Jones
>>> <michael.jo...@microsoft.com <mailto:michael.jo...@microsoft.com>>
>>> wrote:
>>>
>>>     The technique of replicating JWT claims that need to be publicly
>>>     visible in an encrypted JWT in the header is defined at
>>>     https://tools.ietf.org/html/rfc7519#section-5.3.  (Thanks to
>>>     Dick Hardt for bringing this need to my attention as we were
>>>     finishing the JWT spec.)
>>>
>>>      
>>>
>>>                                                            -- Mike
>>>
>>>      
>>>
>>>     *From:* OAuth <oauth-boun...@ietf.org
>>>     <mailto:oauth-boun...@ietf.org>> *On Behalf Of * John Bradley
>>>     *Sent:* Friday, January 10, 2020 2:15 PM
>>>     *To:* Vladimir Dzhuvinov <vladi...@connect2id.com
>>>     <mailto:vladi...@connect2id.com>>
>>>     *Cc:* IETF oauth WG <oauth@ietf.org <mailto:oauth@ietf.org>>
>>>     *Subject:* [EXTERNAL] Re: [OAUTH-WG] JWT Secured Authorization
>>>     Request (JAR) vs OIDC request object
>>>
>>>      
>>>
>>>     The intent was to do that, but specs change once the OAuth WG
>>>     and IESG get there hands on them.  
>>>
>>>      
>>>
>>>     Being backwards compatible with OIDC is not a compelling
>>>     argument to the IESG.
>>>
>>>      
>>>
>>>     We were mostly thinking of asymmetric encryption.  
>>>
>>>      
>>>
>>>     Specifying puting the issuer and or the audience in the headder
>>>     has come up in the past but probably is not documented.  
>>>
>>>      
>>>
>>>     John B 
>>>
>>>      
>>>
>>>     On Fri, Jan 10, 2020, 6:29 PM Vladimir Dzhuvinov
>>>     <vladi...@connect2id.com <mailto:vladi...@connect2id.com>> wrote:
>>>
>>>         Yes, putting the client_id into the JWE header is a way
>>>         around the need
>>>         to have the client_id outside the JWE as top-level authZ
>>>         request parameter.
>>>
>>>         Unfortunately this work around isn't mentioned anywhere, I
>>>         just checked
>>>         the most recent draft-ietf-oauth-jwsreq-20.
>>>
>>>         Our DDoS attack mitigation (for OIDC request_uri) also
>>>         relies on the
>>>         presence of client_id as top-level parameter, together with
>>>         requiring
>>>         RPs to register their request_uri's (so that we don't need
>>>         to build and
>>>         store an index of all request_uri's). I just had a look at
>>>         "DDoS Attack
>>>         on the Authorization Server" and also realised the request_uri
>>>         registration isn't explicitly mentioned as attack prevention
>>>         ("the
>>>         server should (a) check that the value of "request_uri"
>>>         parameter does
>>>         not point to an unexpected location").
>>>
>>>         
>>> https://tools.ietf.org/html/draft-ietf-oauth-jwsreq-20#section-10.4.1
>>>         
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf.org%2Fhtml%2Fdraft-ietf-oauth-jwsreq-20%23section-10.4.1&data=02%7C01%7CMichael.Jones%40microsoft.com%7Cc470d4ec4bd14d481c0f08d7961a8abb%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637142913068793193&sdata=%2FvHVp68SN5CAHimqZ5jx93aOCIruxqLCRMUFCc5DSxc%3D&reserved=0>
>>>
>>>         To be honest, I feel quite bad about the situation with JAR
>>>         we are in
>>>         now. For some reason I had the impression that OAuth JAR was
>>>         going to be
>>>         the OIDC request / request_uri for general OAuth 2.0 use, as
>>>         with other
>>>         OIDC bits that later became general purpose OAuth 2.0 specs.
>>>
>>>         I find it unfortunate I didn't notice this when I was
>>>         reviewing the spec
>>>         in the past.
>>>
>>>         Vladimir
>>>
>>>
>>>         On 10/01/2020 22:39, Filip Skokan wrote:
>>>         > Vladimir,
>>>         >
>>>         > For that very case the payload claims may be repeated in
>>>         the JWE protected header. An implementation wanting to
>>>         handle this may look for iss/client_id there.
>>>         >
>>>         > Odesláno z iPhonu
>>>         >
>>>         >> 10. 1. 2020 v 21:19, Vladimir Dzhuvinov
>>>         <vladi...@connect2id.com <mailto:vladi...@connect2id.com>>:
>>>         >>
>>>         >> I just realised there is one class of JARs where it's
>>>         practially
>>>         >> impossible to process the request if merge isn't supported:
>>>         >>
>>>         >> The client submits a JAR encrypted (JWT) with a shared
>>>         key. OIDC allows
>>>         >> for that and specs a method for deriving the shared key
>>>         from the
>>>         >> client_secret:
>>>         >>
>>>         >>
>>>         https://openid.net/specs/openid-connect-core-1_0.html#Encryption
>>>         
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fopenid.net%2Fspecs%2Fopenid-connect-core-1_0.html%23Encryption&data=02%7C01%7CMichael.Jones%40microsoft.com%7Cc470d4ec4bd14d481c0f08d7961a8abb%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637142913068793193&sdata=soK9t7pzu504iILuDNFnG%2BMLxZPP2pN6ugEJ4ZOpqd4%3D&reserved=0>
>>>         >>
>>>         >> If the JAR is encrypted with the client_secret, and there
>>>         is no
>>>         >> top-level client_id parameter, there's no good way for
>>>         the OP to find
>>>         >> out which client_secret to get to try to decrypt the JWE.
>>>         Unless the OP
>>>         >> keeps an index of all issued client_secret's.
>>>         >>
>>>         >>
>>>         >> OP servers which require request_uri registration
>>>         >> (require_request_uri_registration=true) and don't want to
>>>         index all
>>>         >> registered request_uri's, also have no good way to
>>>         process a request_uri
>>>         >> if the client_id isn't present as top-level parameter.
>>>         >>
>>>         >>
>>>         >> Vladimir
>>>         >>
>>>         >>
>>>         >>> On 10/01/2020 20:13, Torsten Lodderstedt wrote:
>>>         >>>
>>>         >>>>> Am 10.01.2020 um 16:53 schrieb John Bradley
>>>         <ve7...@ve7jtb.com <mailto:ve7...@ve7jtb.com>>:
>>>         >>>> I think Torsten is speculating that is not a feature
>>>         people use.   
>>>         >>> I’m still trying to understand the use case for merging
>>>         signed and unsigned parameters. Nat once explained a use
>>>         case, where a client uses parameters signed by a 3rd party
>>>         (some „certification authority“) in combination with
>>>         transaction-specific parameters. Is this being done in the
>>>         wild?
>>>         >>>
>>>         >>> PS: PAR would work with both modes.
>>>
>>>
>>>         _______________________________________________
>>>         OAuth mailing list
>>>         OAuth@ietf.org <mailto:OAuth@ietf.org>
>>>         https://
>>>         
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2Foauth&data=02%7C01%7CMichael.Jones%40microsoft.com%7Cc470d4ec4bd14d481c0f08d7961a8abb%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637142913068803145&sdata=kobH%2FsGT7ElSSUCJvu%2FbiAqnRCXx%2B4SZNJsrL%2FCuVyc%3D&reserved=0>
>>>

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to