Re: [Id-event] small changes to draft-ietf-secevent-delivery

Phil Hunt <phil.hunt@oracle.com> Sat, 03 March 2018 00:23 UTC

Return-Path: <phil.hunt@oracle.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 6008F126C83 for <id-event@ietfa.amsl.com>; Fri, 2 Mar 2018 16:23:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.021
X-Spam-Level:
X-Spam-Status: No, score=-0.021 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, HTTPS_HTTP_MISMATCH=1.989, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=oracle.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 whxwkQ65AuZF for <id-event@ietfa.amsl.com>; Fri, 2 Mar 2018 16:23:09 -0800 (PST)
Received: from aserp2120.oracle.com (aserp2120.oracle.com [141.146.126.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5FE65126C26 for <id-event@ietf.org>; Fri, 2 Mar 2018 16:23:09 -0800 (PST)
Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.22/8.16.0.22) with SMTP id w230LbUt144242; Sat, 3 Mar 2018 00:23:07 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : message-id : content-type : mime-version : subject : date : in-reply-to : cc : to : references; s=corp-2017-10-26; bh=Tjq4DVBJb/B6HCKhIl77tFVWr/VR6/JnSJsdQtN3SaU=; b=rjD8anManOCwI4asN0gwFENObpLHJztUOJGtX2mG8+4R+UYKJip5zl4xRnsUaSvSKYlh S3h3IYfy30CzO2P9t6K+ev1iCwkrVi6fWESsuNyNRhx9baGJZwa5CNmFopp/+MlkhvPe 1+ELvlHOwb9Ad8tacPmDF6P0hIY3yabxI8TZFrnTcyKcyXaGfBuDp/xDco4Xw9wvwVUx aGD1MQSG8ija+KA78AZBV80rpsRYApOFaGeV7wKhbTDR812tqSMgWCmYFXzGMfHGXBr3 qev9PVPZAXoaCu+g28LCzJmVDpTDWMGqzxnDODN5DQiONFugRGig2rWT7czCYet/kiHI Xg==
Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp2120.oracle.com with ESMTP id 2gfbnhs7sx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 03 Mar 2018 00:23:07 +0000
Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.14.4/8.14.4) with ESMTP id w230N6gV029380 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Sat, 3 Mar 2018 00:23:06 GMT
Received: from abhmp0005.oracle.com (abhmp0005.oracle.com [141.146.116.11]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id w230N61o031805; Sat, 3 Mar 2018 00:23:06 GMT
Received: from [192.168.1.28] (/70.70.142.148) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 02 Mar 2018 16:23:05 -0800
From: Phil Hunt <phil.hunt@oracle.com>
Message-Id: <0D2EA133-3E7B-497D-9364-C919D4FCB925@oracle.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_C12AB9D4-0C00-4952-9AEB-CF9FA1148666"
Mime-Version: 1.0 (Mac OS X Mail 11.2 \(3445.5.20\))
Date: Fri, 02 Mar 2018 16:23:02 -0800
In-Reply-To: <CAGdjJpLPiVReysu+dFT-t2KCguCs7ceSuC-fHpYYe3vrecfP+w@mail.gmail.com>
Cc: ID Events Mailing List <id-event@ietf.org>
To: Marius Scurtescu <mscurtescu@google.com>
References: <CAGdjJpLepZNB5DB6dgxuXheoFVLp0wWrROds1iB5J2QMcxKkqw@mail.gmail.com> <57C95B37-57A5-440E-9A4C-2D32B3677B9F@oracle.com> <CAGdjJpLPiVReysu+dFT-t2KCguCs7ceSuC-fHpYYe3vrecfP+w@mail.gmail.com>
X-Mailer: Apple Mail (2.3445.5.20)
X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8820 signatures=668682
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1803030004
Archived-At: <https://mailarchive.ietf.org/arch/msg/id-event/Q8Trt1WLxirR_HGk1HtLnpuAKJU>
Subject: Re: [Id-event] small changes to draft-ietf-secevent-delivery
X-BeenThere: id-event@ietf.org
X-Mailman-Version: 2.1.22
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: Sat, 03 Mar 2018 00:23:11 -0000

Inline
Phil

Oracle Corporation, Identity Cloud Services Architect
@independentid
www.independentid.com <http://www.independentid.com/>phil.hunt@oracle.com <mailto:phil.hunt@oracle.com>

> On Mar 2, 2018, at 4:00 PM, Marius Scurtescu <mscurtescu@google.com> wrote:
> 
> On Fri, Mar 2, 2018 at 11:55 AM, Phil Hunt <phil.hunt@oracle.com <mailto:phil.hunt@oracle.com>> wrote:
> Marius,
> 
> Thanks.
> 
> Item 1 and 2 look reasonable.
> 
> Sounds good.
> 
>  
> 
> for Item 3, 4, I think the group should review. See below.
> 
> I also commented inline.
> 
>  
> 
> Given the submission deadline is Monday, it would be good to wait group confirmation of your proposals.
> 
> What that does mean in practical terms? If no one has objections we can go ahead? By when?
>  
> 
> Phil
> 
> Oracle Corporation, Identity Cloud Services Architect
> @independentid
> www.independentid.com <https://urldefense.proofpoint.com/v2/url?u=http-3A__www.independentid.com&d=DwMFaQ&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=na5FVzBTWmanqWNy4DpctyXPpuYqPkAI1aLcLN4KZNA&m=L-kCx-OLcYfkKdS1eUcIKOBY6y5Jf8PQhbsLU2hVSuc&s=Zm52eLyjaGG_ZPMSegoNV0nSi3xEFnKDLeC0gopCEjA&e=>phil.hunt@oracle.com <mailto:phil.hunt@oracle.com>
> 
>> On Mar 2, 2018, at 10:30 AM, Marius Scurtescu <mscurtescu@google.com <mailto:mscurtescu@google.com>> wrote:
>> 
>> I have a few other suggestions:
>> 
>> 1. In section 1.2 we could drop the definition of Identity Provider and Relying Party. I don't think these are necessary in this spec.
>> 
>> 2. In section 2.1, the description of the PUSH delivery mode states that the response must contain "Content-Type: application/json". I think that is the case only for error responses, I think on success no Content-Type is needed at all.
>> 
>> 3. In section 2.2, it is stated that "the Event Receiver SHALL indicate an HTTP Status 400 error with an error code as described in Section 2.4". I think that some error codes should be matched by other 4xx codes (for example 401 and 403). I think it would be useful to list all the possible error codes and corresponding HTTP Status codes in this section and not refer to 2.4,
> 
> <PH>The 4xx messages are assumed by the HTTP RFCs while the errors in sec 2.4 related to errors around jwt processing. We can call out specific 4xx errors that are likely to occur, but I find that people then have issues wondering if they can ever use the complete set of error conditions from RFC7231. 
> 
> Would people find it useful to clarify or give examples of how 7231 errors might occur?
> 
> I’m not sure which of the sec 2.4 error codes could be matched with 401 or 403. These are mostly JWT error conditions. Can you elaborate?
> 
> I think jwtAud and jwtIss should be 403 and not 400.

<PH>
jwtAud and jwtIss are issues with the payload.  403 indicates the wrong authorization credential was used. E.g. a bad authorization header.

It is important to distinguish between an http authorization header and a malformed SET.
> 
> setType and dup may also need something else than 400.

<PH>
I think dup is no longer needed as we changed language to allow recovery.

setType - We should maybe update the terminology to setEventUri indicating the receiver is refusing a specific event type.

406 is the closest, yet that code is about media types not being acceptable.  406 can occur if someone requests application/xml for example.

> 
> 
>> 
>> 4. In section 2.3.1, the description of maxEvents, at the very end. A conflict between zero request events and returnImmediately is described and the later should be ignored. I think this should not be a silent ignore but an error condition,
> <PH>The value of 0 is used to allow a poller to acknowledge previously received SETs without having to process or wait for new events. Thus returnImmediately is assumed. Thus the value of returnImmediately is ignored.
> 
> Right, but to me with 0 and returnImmediately present the request is invalid and I don't think that returnImmediately should be simply ignored 
<PH>
See section 2.3.3, in particular acknowledge only (2.3.3.2).  “maxEvents”:0 is what makes a request ack only. It can be expressed in a more obvious way, but I believe the discussion was this was simpler overall.

returnImmediately:true in the case of 2.3.3.2 is redundant. It isn’t an error because control always returns immediately.  returnImmediately:false would however would be an error because there is nothing to return in section 2.3.3.2.

Looking at the text, it looks like we need to clarify that either an error is returned or just an acceptance when maxEvents is 0.


> 
> 
> 
> Some participants indicated a desire to keep acknowledgement threads separate from SET polling threads.  Others wanted to be able to do both at the same time.
> 
> Understood.
> 
>  
>> 
>> The current spec is at:
>> https://tools.ietf.org/html/draft-ietf-secevent-delivery-01 <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dietf-2Dsecevent-2Ddelivery-2D01&d=DwMFaQ&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=na5FVzBTWmanqWNy4DpctyXPpuYqPkAI1aLcLN4KZNA&m=ne_ktq-vH7-ENPz2hHpvEBD9gZ8NVol5ZAKe9EeHvu8&s=Hlxm0ufeHaSgSiJeOwFFJrFyiarhtBVMckB9QCslj3Q&e=>
>> 
>> I am happy to send pull requests for all these changes. Let me know.
>> 
>> Thanks,
>> Marius
>> _______________________________________________
>> Id-event mailing list
>> Id-event@ietf.org <mailto:Id-event@ietf.org>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_id-2Devent&d=DwICAg&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=na5FVzBTWmanqWNy4DpctyXPpuYqPkAI1aLcLN4KZNA&m=ne_ktq-vH7-ENPz2hHpvEBD9gZ8NVol5ZAKe9EeHvu8&s=uhRVJB8aZnVZHEY_MgIwN8ZjrBDaxt7YDmif4wyv6jg&e= <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_id-2Devent&d=DwICAg&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=na5FVzBTWmanqWNy4DpctyXPpuYqPkAI1aLcLN4KZNA&m=ne_ktq-vH7-ENPz2hHpvEBD9gZ8NVol5ZAKe9EeHvu8&s=uhRVJB8aZnVZHEY_MgIwN8ZjrBDaxt7YDmif4wyv6jg&e=>