Re: [scim] SCIM: Questions regarding Error handling for Bulk operations

"Morteza Ansari (moransar)" <moransar@cisco.com> Mon, 20 August 2018 19:12 UTC

Return-Path: <moransar@cisco.com>
X-Original-To: scim@ietfa.amsl.com
Delivered-To: scim@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D73DC130DC6 for <scim@ietfa.amsl.com>; Mon, 20 Aug 2018 12:12:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 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_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 4YUBoIMfWt0J for <scim@ietfa.amsl.com>; Mon, 20 Aug 2018 12:12:00 -0700 (PDT)
Received: from rcdn-iport-1.cisco.com (rcdn-iport-1.cisco.com [173.37.86.72]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0A13E130E4A for <scim@ietf.org>; Mon, 20 Aug 2018 12:11:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=18402; q=dns/txt; s=iport; t=1534792315; x=1536001915; h=from:to:subject:date:message-id:references:in-reply-to: mime-version; bh=l3PZDgcyZxZ5VyVeFgRbN40MrPn//+zqbj5fw+lwinM=; b=eLoWeAcFTeP9dL9F8Duvb94JpnzXcGHNL+76oYAWYTSau/QTT7JNFNkx HsitVbftYzZfDq1iP40ENLyySuT+pPL6JhgBYk+04hbW6IXd68A4NQXRu /0xtbZhdvKaJ9HinVTZZX6TsNHE6W9DGCjI79szu8XYHJ+NuV1iyLN4V7 U=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DwAADFEXtb/4cNJK1bGgEBAQEBAgEBAQEIAQEBAYJXeGN/KAqDZogKjB2BaCWQbIUrgXoLI4RJAheDNiE0GAECAQECAQECbRwMhTcBAQEBAyNLGwIBCBEDAQIrAgICMB0IAgQBEoMiAYEdZA+ne4EuilgFiRgXgUE/gRInDBOBTlAugxsBAQIBgUg2gmExgiYCiAGEdoFDjEIJAoYniTcVgT6EL4hLiwyHdQIRFIEkHTgmgSxwFTsqAYI+G4p6hT5vAQGNX4EbAQE
X-IronPort-AV: E=Sophos;i="5.53,266,1531785600"; d="scan'208,217";a="440660237"
Received: from alln-core-2.cisco.com ([173.36.13.135]) by rcdn-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Aug 2018 19:11:53 +0000
Received: from XCH-ALN-005.cisco.com (xch-aln-005.cisco.com [173.36.7.15]) by alln-core-2.cisco.com (8.15.2/8.15.2) with ESMTPS id w7KJBrYZ008936 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 20 Aug 2018 19:11:54 GMT
Received: from xch-rcd-004.cisco.com (173.37.102.14) by XCH-ALN-005.cisco.com (173.36.7.15) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Mon, 20 Aug 2018 14:11:53 -0500
Received: from xch-rcd-004.cisco.com ([173.37.102.14]) by XCH-RCD-004.cisco.com ([173.37.102.14]) with mapi id 15.00.1320.000; Mon, 20 Aug 2018 14:11:53 -0500
From: "Morteza Ansari (moransar)" <moransar@cisco.com>
To: "Jena, Jayadeba" <jjena@paypal.com>, "cmortimore@salesforce.com" <cmortimore@salesforce.com>, "scim@ietf.org" <scim@ietf.org>
Thread-Topic: SCIM: Questions regarding Error handling for Bulk operations
Thread-Index: AQHUNMWbxEGT4Zj+g0Oqro1C/XbJpKTI6DsA
Date: Mon, 20 Aug 2018 19:11:53 +0000
Message-ID: <8D8C033A-0429-436E-BB75-25754B74C2D7@cisco.com>
References: <DD67ADED-A7C4-467D-94BB-8527666FE8EC@paypalcorp.com>
In-Reply-To: <DD67ADED-A7C4-467D-94BB-8527666FE8EC@paypalcorp.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/10.e.1.180613
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.155.209.82]
Content-Type: multipart/alternative; boundary="_000_8D8C033A0429436EBB7525754B74C2D7ciscocom_"
MIME-Version: 1.0
X-Outbound-SMTP-Client: 173.36.7.15, xch-aln-005.cisco.com
X-Outbound-Node: alln-core-2.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/scim/aGk4qCJS4rA65wKRyrSeWrP0nUM>
Subject: Re: [scim] SCIM: Questions regarding Error handling for Bulk operations
X-BeenThere: scim@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Simple Cloud Identity Management BOF <scim.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/scim>, <mailto:scim-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/scim/>
List-Post: <mailto:scim@ietf.org>
List-Help: <mailto:scim-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/scim>, <mailto:scim-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 20 Aug 2018 19:12:02 -0000

Hi Jena,

Best option for getting clarification on SCIM spec is to reach out to the WG mailing list: scim@ietf.org. Many more eyes will see it there.

As to your specific question, I am actually not 100% sure. Re-reading the spec seems to be a bit ambiguous there and I haven’t actually implemented bulk myself. I believe the answer to both scenarios is returning 200 responses with operation responses of 409 for the failed.

Phil, others, do you have a better answer? Have we clarified this somewhere else in the doc that I am missing?


Cheers,
Morteza

From: "Jena, Jayadeba" <jjena@paypal.com>
Date: Friday, August 17, 2018 at 5:32 PM
To: "morteza.ansari@cisco.com" <morteza.ansari@cisco.com>, Chuck Mortimore <cmortimore@salesforce.com>
Subject: SCIM: Questions regarding Error handling for Bulk operations

Hi,

I’m from PayPal and trying to understand the SCIM bulk specification and have questions around the error handling with “failOnError” not specified in the request. As an example, I was reading through the section (https://tools.ietf.org/html/rfc7644#section-3.7.1) - which says that we need to return the error code 409 when the circular dependency couldn’t be resolved by the server. The behavior of the bulk server wrt is not clear to me when we have the “FailOnError” flag is not specified. Please help clarify if the following behavior is correct and as per the specification.


  *   Scenario1: When there’s a bulk request body with 2 items, failOnErrors flag is not specified in the request- The server while processing the bulk requests, discovers circular dependency that it couldn’t resolve, what would be the bulk response? Should the bulk server return a top level 409 response or a 200 response with operation response for each failed items (i.e 2 operation responses with 409 as the code for each).
  *   Scenario2: When there’s a bulk request body with 3 items, failOnErrors flag is not specified in the request- The server while processing the bulk requests, discovers circular dependency that it couldn’t resolve for the first 2 items, while the 3rd items could be processed successfully, what would be the bulk response? Should it be a  200 response with operation response for each failed items (i.e 2 operation responses with 409 as the code for each) and then it also contains the successful response for the 3rd item

Thanks,
Jayadeba