The Dropbox connector lets you import and index all of your personal and your teams files. It can also import all permission and access management, so you everyone can only find what they are allowed to view. It also lets you synchronize changes of your teams Dropbox automatically.


This article will explain how to:

  • Setup a Dropbox App which allows you to authenticate users and import Dropbox files
  • Setup the Dropbox connector in Curiosity
  • How your teams users can authorize your Curiosity instance to import files

Requirements:


The Dropbox connector will automatically:

  • Import files and folders from your Dropbox
  • Import users and groups in your team
  • Import file and folder permissions so your users can only find what they are supposed to
  • Keep the Dropbox data synchronized on a schedule

Configuring the Dropbox app

Step 1: Verify that you are logged in the correct team as admin by checking access to the Admin Console.

Step 2: Got to the Dropbox Developer Console and create a new app.

Step 3: Select Scoped access to your Full Dropbox and give it a descriptive name. Users will see the name of the app when they authorize access to their Dropbox.

Step 4: You can keep the Dropbox app in Development status for now. However, Enable additional users to allow other people using the app. See the Dropbox developer guide how Develpoment and Production affect the number of users an app can have.

Step 5: Add allowed redirect URIs to allow authenticating users with Dropbox for your instance of Curiosity. The URI need to follow this exact pattern: <SERVER_URL>/api/oauth/dropbox/authorize

  • Local development instance: http://localhost:8081/api/oauth/dropbox/authorize
  • Production instance: https://acme.com/api/oauth/dropbox/authorize

Curiosity is managing the authorized user certificates, which allows us to disallow public clients.

Step 6: Head over to Permissions to allow Curiosity to read files and sharing information from Dropbox. Select files.content.read and sharing.write permissions and press Submit to save the changed permissions.

Step 7: (optional) Head over to the Branding section to add more information about what your Dropbox app does. This defines how the app is presented to the users in the authentication screen.

Step 8: Head back to Settings and retrieve the App key and App secret to authorize Curiosity with Dropbox.


Configure the Dropbox Connector in Curiosity

Step 1: Navigate to the Data Sources Hub and select the configuration interface for Dropbox.

Step 2: Add a new Dropbox connector.

Step 3: Provide the access keys to your Dropbox app to allow users to authenticate themselves:

  • App Key
    The App Key of your defined Dropbox app.
  • App Secret
    The App Secret of your defined Dropbox app.

Step 4: Modify the configuration on how the connector behaves.

  • Name Provide the specific Dropbox data connector with a descriptive name. This allows admins to quickly find a specific Dropbox data connector configurations. Mainly applicable when multiple Dropboxes are connected.
  • Cron Schedule to run the connector on. After the initial run, the connector has to be run regularly to import changes into Curiosity. Any valid cron schedule can be defined.
  • Enabled When a connector is disabled, the connector is ignored by the scheduler. Curiosity needs to frequently synchronize changes of your Dropbox to be able to search current versions of your data.
  • Source Provide a descriptive name of the connected Dropbox. If your Dropbox contains general Documents keep "Dropbox" as Source. If your Dropbox contains specific data give it a descriptive name, e.g. "Project Assets".
Note: When the Source is changed later the all imported data form this connector has to be delete on the system and imported again.
  • Folders When left empty all folders are imported. By providing specific paths to folders, only these folders are imported.
  • Content Types List of file types to import from Dropbox to be search. Per default, only PDF files are imported as specified by the MIME-Type application/pdf.
  • Permission Sync Personal Define how access to personal files and folders of users is handled.
    - Ignore
    Do not import files from the personal Dropbox folder of authenticated users.
    - Import Permissions
    Import files and their permissions from the personal Dropbox folder of authenticated users. This means most files will most likely stay personal to the user, yet files and folders which the user explicitly shared with team members will also be searchable by said team members. These permissions are synchronized together with the files. This means changes to access rights are also only reflected after a run of the connector.
    - Private
    All the personal files and folders of a user are imported with access only to that user.
    - Public
    None of the imported personal files or folders of user are controlled for access rights. All users can find all others personal Dropbox files, even when they would not be able to on Dropbox directly.
Note: When the permission setting is changed the all imported data from this connector has to be delete on the system and imported again.
  • Permission Sync Shared Define how access to the teams shared files and folders is handled.
    - Ignore
    Do not import files from the teams shared folders.
    - Import Permissions
    Import permissions and access control form Dropbox. This setting reflects group and individual user permissions and lets users search all shared files in team folders to which they have access to on Dropbox.
    - Access Group
    All users that are authenticated with the Dropbox connector can search all of the teams shared files. Users which are not authenticated with the Dropbox app can't view the imported data.
    - Public
    None of the imported files or folders of the team are controlled for access rights. All users can find all o f the teams Dropbox files and folders, even when they would not be able to on Dropbox directly or do not have access to the Dropbox.
Note: When the permission setting is changed the all imported data from this connector has to be delete on the system and imported again.

Step 5: Press Save to save the configuration.

Step 6: Select the connector configuration you just created. Start the authentication flow with Dropbox by clicking Authorize.

Step 7: Give the your Dropbox app access to your Dropbox account by clicking Allow.

Step 8: You will then be redirected to the Data Sources Hub where you can see a configured Dropbox connector.

Step 9: Inform your users to authorize access to their personal Dropbox files (Including shared files to which the admin does not have access to). See here how users can give access to their Dropbox files.

Step 10:Run the Dropbox connector for the first time by pressing the Run Once button. This will do an initial import of files and folders. Following runs of the data connector will only import changes to the authenticated Dropbox.

Step 11: The status of the current run of the connector can be seen by clicking the logs button.

Did this answer your question?