Details
-
Type: Task
-
Status: Closed (View Workflow)
-
Priority: Blocker
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: None
-
Labels:None
-
Story Points:0.25
-
Epic Link:
-
Sprint:Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan
Description
Situation: We use the paged-directory endpoint to list files and folders. While it does return the permissions (own/write/read) it does not return a list of all user-permissions, including those for the anonymous user. If the anonymous user has (at a minimum) read access (in general we have been referring to this as being "public"), then the file can be viewed in IGB through dav-anon. Because we don't know if a file is "public" from the paged-directory endpoint, we cannot easily change the status of the View in IGB buttons to visually indicate to the user whether a file is public and therefore viewable in IGB (we would need to make an API call to the user-permissions endpoint for every single file/folder, which would be very slow).
There is a pseudo-workaround that is enabled by using the search endpoint. Searching for a file or folder will return a list of user-permissions, including those for anonymous. However, the search is recursive, so it is not possible to list just the contents at a single directory level, it will also list all files/folders within any folders. So if the search is conducted on the Community data folder, several million results are returned. There also seems to be a lag in time for when the search results are updated. For example, if I change a files user permission, that change will be instantly reflected in the user-permissions endpoint, but not in the search endpoint (it is unclear how long it takes).
An additional note: The user-permissions endpoint cannot be used on shared or community data as it requires own permissions, and will throw an error if a non-owner hits the endpoint. We had discussed using the search endpoint to circumvent this, but the lag in time for user-permissions may be an issue.
Task: Through conversations with the CyVerse team, they have tentatively agreed to adding user-permissions to the paged-directory endpoint, or to add an isAnonymous/isPublic flag. We do not have a timeline as to when these changes will be made.
Once the changes have been made by CyVerse, test the various endpoints to make sure they are working correctly, add to the comments which approach CyVerse used to implement the changes, update the Terrain API documentation in the Google Drive, and then close this issue.
Attachments
Issue Links
Activity
Field | Original Value | New Value |
---|---|---|
Epic Link |
|
Assignee | Nowlan Freese [ nfreese ] |
Sprint | Fall 6 : 28 Oct to 8 Nov [ 77 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov [ 77, 78 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov [ 77, 78 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec [ 77, 78, 79 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec [ 77, 78, 79 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec [ 77, 78, 79, 80 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec [ 77, 78, 79, 80 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 6 Jan to 17 Jan [ 77, 78, 79, 80, 84 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan [ 77, 78, 79, 80, 84 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan [ 77, 78, 79, 80, 84, 85 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan [ 77, 78, 79, 80, 84, 85 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan, Spring 3 : 3 Feb to 14 Feb [ 77, 78, 79, 80, 84, 85, 86 ] |
Rank | Ranked higher |
Sprint | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan, Spring 3 : 3 Feb to 14 Feb [ 77, 78, 79, 80, 84, 85, 86 ] | Fall 6 : 28 Oct to 8 Nov, Fall 7 : 11 Nov to 22 Nov, Fall 8 : 25 Nov to 6 Dec, Fall 9 : 9 Dec to 20 Dec, Spring 1 : 25 Dec to 17 Jan, Spring 2 : 20 Jan to 31 Jan [ 77, 78, 79, 80, 84, 85 ] |
Status | To-Do [ 10305 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Needs 1st Level Review [ 10005 ] |
Status | Needs 1st Level Review [ 10005 ] | First Level Review in Progress [ 10301 ] |
Status | First Level Review in Progress [ 10301 ] | Needs 1st Level Review [ 10005 ] |
Status | Needs 1st Level Review [ 10005 ] | First Level Review in Progress [ 10301 ] |
Status | First Level Review in Progress [ 10301 ] | Ready for Pull Request [ 10304 ] |
Status | Ready for Pull Request [ 10304 ] | Pull Request Submitted [ 10101 ] |
Status | Pull Request Submitted [ 10101 ] | Reviewing Pull Request [ 10303 ] |
Status | Reviewing Pull Request [ 10303 ] | Merged Needs Testing [ 10002 ] |
Status | Merged Needs Testing [ 10002 ] | Post-merge Testing In Progress [ 10003 ] |
Resolution | Done [ 10000 ] | |
Status | Post-merge Testing In Progress [ 10003 ] | Closed [ 6 ] |