Subject: [scim] User resource's lastModified attribute behavior on Group resource update

From: Anuradha Karunarathna <[email-masked]>
Date: Sun, 6 Dec 2020 13:29:32 +0530

Hi all,

According to the lastModified attribute definition in RFC 7643 section 3.1 [
1 <https://tools.ietf.org/html/rfc7643#section-3.1>], a particular
resource's lastModified attribute should be updated if the resource is
updated. According to the definition, it is obvious to have an update on a
user's lastModified attribute based on PATCH operation on /Users/{user-id}
or PUT operation on  /Users/{user-id}.
Also, I feel that the lastModified attribute of user resource should be
updated even the user updates indirectly.

eg: Adding a member to a group should cause to update the relevant group
and user resources' lastModified attribute.

PATCH /Groups/acbf3ae7-8463-...-9b4da3f908ce
   Host: example.com
   Accept: application/scim+json
   Content-Type: application/scim+json
   Authorization: Bearer h480djs93hd8
   If-Match: W/"a330bc54f0671c9"

   { "schemas":
      ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
     "Operations":[
       {
        "op":"add",
        "path":"members",
        "value":[
         {
           "display": "Babs Jensen",
           "$ref":
   "https://example.com/v2/Users/2819c223...413861904646",
           "value": "2819c223-7f76-453a-919d-413861904646"
         }
        ]
       }
     ]
   }

If we take the above request as a succeded PATCH request, lastModified
attribute of

   - the group identified by id acbf3ae7-8463-...-9b4da3f908ce and,
   - the user Babs Jensen (SCIM id- 2819c223-7f76-453a-919d-413861904646)

should be updated.

I want to clarify whether my understanding is correct?

[1] https://tools.ietf.org/html/rfc7643#section-3.1

Thanks,
Anuradha

---

From: Phillip Hunt <[email-masked]>
Date: Sun, 6 Dec 2020 07:56:22 -0800

I believe the spec is silent on this matter. 

The issue is that indirect or dynamic (eg groups attribute) memberships are by their nature subject to change until calculated at query time. 

Thus I would not necessarily count on implementations updating lastModified for dynamic/calculated values. 

Phil

> On Dec 5, 2020, at 11:59 PM, Anuradha Karunarathna <[email-masked]> wrote:
> 
> 
> Hi all,
> 
> According to the lastModified attribute definition in RFC 7643 section 3.1 [1], a particular resource's lastModified attribute should be updated if the resource is updated. According to the definition, it is obvious to have an update on a user's lastModified attribute based on PATCH operation on /Users/{user-id} or PUT operation on  /Users/{user-id}.
> Also, I feel that the lastModified attribute of user resource should be updated even the user updates indirectly.
> 
> eg: Adding a member to a group should cause to update the relevant group and user resources' lastModified attribute.
> 
> If we take the above request as a succeded PATCH request, lastModified attribute of 
> the group identified by id acbf3ae7-8463-...-9b4da3f908ce and,
> the user Babs Jensen (SCIM id- 2819c223-7f76-453a-919d-413861904646)
> should be updated.
> 
> _______________________________________________
> scim mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/scim

---

From: Anuradha Karunarathna <[email-masked]>
Date: Mon, 7 Dec 2020 11:58:16 +0530

Hi Phillip,

Thank you for the clarification.

On Sun, Dec 6, 2020 at 9:26 PM Phillip Hunt <[email-masked]>
wrote:

> The issue is that indirect or dynamic (eg groups attribute) memberships
> are by their nature subject to change until calculated at query time.
>
> Thus I would not necessarily count on implementations updating
> lastModified for dynamic/calculated values.
>
> Phil
>
> According to the lastModified attribute definition in RFC 7643 section 3.1
> [1 <https://tools.ietf.org/html/rfc7643#section-3.1>], a particular
> user's lastModified attribute based on PATCH operation on
> /Users/{user-id} or PUT operation on  /Users/{user-id}.