Skip to main content
Version: Developer

Set up the Dropbox storage provider

The Dropbox storage provider lets end users map their Dropbox storage into container-based sessions. Access is provided through the Dropbox OAuth interface and the Rclone Docker volume plugin. For reference, see the Rclone Dropbox documentation.

Create a Dropbox OAuth app

  1. Log in to the Dropbox App Console.
  2. Select Scoped Access, then Full Dropbox, give the app a name such as Kasm-Example, then click Create app.

Create a new Dropbox app

Create new App
  1. On the next screen, note the App key and App Secret. These are the Client ID and Client Secret in the storage provider configuration.

Dropbox app key and secret

Authentication Details
  1. In the Development users section, click Enable additional users to allow additional accounts to use the app.

Enable additional users for the Dropbox app

Enable Additional Users
  1. In the OAuth 2 section, enter the redirect URI, substituting the hostname of the Kasm deployment, then click Add: https://kasm.example.com/api/cloud_storage_callback.

Dropbox app redirect settings

Redirect Settings
  1. Select the Permissions tab, confirm that the following permissions are selected, then click Submit:

    account_info.read
    files.metadata.read
    files.metadata.write
    files.content.write
    files.content.read
    sharing.read
    sharing.write

Dropbox app permissions

DropBox Permissions

Configure the storage provider

  1. Log in to the Kasm UI as an administrator.
  2. Select Settings, then Storage, then Add.
  3. Complete the form with the following entries, using the Client ID and Client Secret from the previous section:
FieldValue
NameDropbox
Storage Provider TypeDropbox
Enabledchecked
Client ID<client id>
Client Secret<client secret>
Authorization URLhttps://www.dropbox.com/1/oauth2/authorize
Authorization URL Options{"include_granted_scopes" : "user", "access_type" : "offline", "token_access_type" : "offline"}
Token URLhttps://api.dropboxapi.com/1/oauth2/token
Redirect URLhttps://<hostname>/api/cloud_storage_callback
Scopefiles.metadata.read files.metadata.write files.content.read files.content.write sharing.read sharing.write account_info.read
Default Target/dropbox
Volume Config{ "driver" : "rclone", "driver_opts" : { "type" : "dropbox", "uid" : "1000", "gid" : "1000", "allow_other" : "true" } }
Mount Config{}
  1. Click Save.

Dropbox storage mapping configuration

  1. From any page, select the profile icon at the top right.

Edit the user profile

Edit Profile
  1. Select the Cloud Storage section, then Add Storage Mapping.

Add a storage mapping from the profile

Add Storage Mapping
  1. Select Dropbox from the drop-down, then select Next.

Configure the Dropbox storage mapping

Configure Storage
  1. The Dropbox login page appears. Log in with the desired account.

Log in to Dropbox

Login
  1. Dropbox asks for consent to provide access to the account. Approve the request.

Approve Kasm access to Dropbox

Approve Kasm
  1. On success, Kasm redirects you to the Workspaces dashboard. The new storage mapping appears in the Cloud Storage section of the profile.

The Dropbox storage mapping in the profile

Storage Mapping
  1. Launch a new container-based session. Confirm that Dropbox is mapped inside the session at the /dropbox location.

Dropbox files mapped inside a session

In Session View