Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #8277 (accepted)

Opened 12 years ago

Last modified 12 years ago

Adjust all permissions per user on read — at Version 2

Reported by: jamoore Owned by: jamoore
Priority: critical Milestone: OMERO-4.4
Component: General Version: n.a.
Keywords: n.a. Cc: jburel, wmoore
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 1.0d
Sprint: 2012-03-27 (11)

Description (last modified by jmoore)

Permission objects which are returned along with data graphs should be adjusted in order to reflect the capabilities of the current security context. For this implementation, the permission values on the actual rows will be ignored, which is inline with the overall story (#2874).

This work includes:

  • Add methods canLink and canEdit
  • Add the call context map to the permissions object (see "Storing context" below)
  • Make the default object factory for permissions return a non-editable version
  • Perform the adjustment before returning any objects. Unloaded objects will not have permission objects, and therefore will need to be reloaded by the user.

See: https://www.openmicroscopy.org/site/community/minutes/minigroup/2012.03.12-groupperms

Storing Context

It would be possible to add the callcontext (#3527) to the permissions object as an Ice.Context string-string-map, but this might only make sense with the EventContext itself. However, it's not possible to have an EventContext in the Permissions object because there's already a Permissions object in the EventContext object (i.e. cyclical dep). Instead, we could move both of these context fields to Details, but then it's no longer possible for the Permissions object to make use of them in making decisions. Ergo, it's probably not that useful, and I won't worry about it for the minute. It's then the client's responsibility to keep up with the mapping from objects to the context that they were acquired from.

Change History (2)

comment:1 Changed 12 years ago by jmoore

  • Status changed from new to accepted

comment:2 Changed 12 years ago by jmoore

  • Description modified (diff)
Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.69485 sec.)

We're Hiring!