Roles and permissions

Adobe cloud storage provides an access control system to ensure only authorized users can access cloud content. Access to projects, folders, and files is based on the permissions granted to a user through their assigned role.

The following table indicates the permissions available to each role:

Permission
Administrator
Creator
Edit
Comment
Rename a project
Discard a project
View files and folders
Edit files
Create and add files, create folders
Set roles

Assigning roles

Administrators

The Administrator role can be assigned to users and groups exclusively through Adobe Admin Console. Both System Administrators and Storage Administrators have administrative permissions to content in Adobe Cloud Storage.

Creator

The Creator role is automatically assigned to a user who creates a project.

Edit and Comment

The Edit and Comment roles can be assigned to a user or group in two ways:

  1. By inviting collaborators through an Adobe UI, such as Creative Cloud Home. See Share Projects for more information.
  2. By using the Adobe Cloud Storage and Collaboration API.

Setting roles with the API

The Project permissions API accepts a JSON document that defines changes to a project's permissions. This document includes up to three optional sections:

  1. additions: Grants a role to one or more principals.
  2. updates: Modifies existing roles for one or more principals.
  3. deletions: Removes the role for one or more principals.

The sections are optional, and you only need to include the ones that are necessary for the changes you want to make to the project's permissions.

Each section contains an array of objects that specify the principal and the role being assigned, updated, or removed.

Additions

To grant access, include entries in the additions section. Each entry must include:

For example, the following invites Bob Smith to be an editor, sets all members of the Graphic Design group to be editors, and allows anyone in the organization to comment on the files in a project.

{
  "direct": {
    "additions": [
      {
        "recipient": "mailto:bob-smith@mycompany.com",
        "type": "user",
        "role": "edit"
      },
      {
        "recipient": "name:Graphic Design",
        "type": "group",
        "role": "edit"
      },
      {
        "recipient": "name:_everybody",
        "type": "predefined",
        "role": "comment"
      }
    ]
  }
}

Updates

Changing existing permissions is done using the updates section of the request. Each update entry consists of three properties:

For example, the following request updates the permissions of two users to the comment role. The first user has accepted the invitation and therefore their ID is a unique GUID. The second user has not yet accepted the invitation, so their id is still their email address.

{
"direct": {
  "updates": [
    {
      "id": "C1D71E08680BCA8C0A49420A@c1651e08680bc694494118.e",
      "type": "user",
      "role": "comment"
    },
    {
      "id": "mailto:bob-smith@mycompany.com",
      "type": "user",
      "role": "comment"
    }
  ]
}
}

Deletions

You can remove a user, group, or predefined principal's access to a project using the deletions section of a request. Each deletion entry consists of two properties:

For example, the following request deletes the permissions of two users. The first user has accepted the invitation and therefore their ID is a unique GUID. The second user has not yet accepted the invitation, so their id is still their email address.

{
  "direct": 
  {
  "deletions": [
    {
    "id": "C1D71E08680BCA8C0A49420A@c1651e08680bc694494118.e",
    "type": "user"
    },
    {
      "id": "mailto:bob-smith@mycompany.com",
      "type": "user"
    }
    ]
  }
}

Predefined principals

There are two special principals:

Summary

Principal Type
Additions recipient
Updates and Deletion id
Notes
user
mailto:{user's email address}
{user id}
Indicates a specific user
group
name:{user group name}
{group id}
Indicates a user group
predefined
name:{predefined principal name}
{predifined principal id}
Indicates a special predefined principal