Microsoft OneDrive

Microsoft OneDrive

Tip

Download Mountain Duck as an alternative to the One Drive client from Microsoft.

Connecting

OAuth 2.0

Microsoft Graph, OneDrive, and SharePoint use a OAuth 2.0 authorization code flow to grant access.

The OneDrive connection profile is bundled by default and connects to the endpoint https://graph.microsoft.com/v1.0/me. Login with your personal or business account to login.microsoftonline.com when prompted to grant access to Cyberduck.

  1. No credentials must be entered for opening a connection, but instead you need to log-in to your Microsoft account and grant access in your web browser after choosing Connect.

    OneDrive sign in
  2. Allow to “Open Cyberduck” in your web browser to submit the authorization code used to retrieve the access token for authenticating with OneDrive. Subsequent connections will not require authorization, unless the refresh token expired due to inactivity.

Multiple Accounts

You can connect to multiple accounts at the same time. Create a new bookmark for every account and run through the OAuth flow. Make sure to log out of any account in web browser before triggering the OAuth flow for a new account.

Reset OAuth Tokens

If you have accidentally logged in with the wrong OneDrive Account or want to change the login of the OneDrive bookmark delete the current bookmark and create a new one to start a new authentication flow.

Alternatively, you can reset the OAuth token by deleting the entries related to duck:onedrive?user=(user) out of the Windows Credential Manager or on macOS the entries related to login.microsoftonline.com out of Keychain Access.app.

Expiry

All authentication codes expire after 90 days. If you get the error message Forbidden. The caller doesn't have permission to perform the action. [...] due to this known issue you need to reauthenticate by performing an OAuth Reset.

Available Connection Profiles

Allows access to

Remarks

Bundled by default

Microsoft OneDrive

Your Drive and shared files

Works with your Personal and Business OneDrive

Yes

Microsoft SharePoint

All sites document libraries and accessible group document libraries

Yes

Microsoft SharePoint Site

A single SharePoint Site which isn’t listed within the Microsoft SharePoint profile

Can’t mount specific directories

Yes

Cyberduck CLI

You can list the root contents of your OneDrive with Cyberduck CLI using

duck --list onedrive:/

Refer to the Cyberduck CLI documentation for more operations. For subsequent invocations make sure to include the --username parameter and set it to the email address registered with Microsoft to allow the lookup of previously saved OAuth tokens.

Features

Top Level Folders

The following virtual top level folders are displayed:

Folder Name

Contents

My Files

Personal files

Shared

Shared folders

It is not possible to create additional top level folders or files.

Mountain Duck

Set the Path in the Bookmark to / to show the top level folders. By default, only the contents of My Files are shown.

Versions

A list of file versions can be viewed in the Versions tab of the Info window. Files can be reverted to a chosen version of this list.

Share

Create download shares of files or folders for people outside of your organization using File → Share….

Limitations

There are some limitations that you should keep in mind while working with.

  • We’ve added support for Microsoft 365 China in Cyberduck 7.8 / Mountain Duck 4.4 but aren’t able to verify if it works properly.

  • No interoperability with Microsoft 365 for US Government (other services may apply as well)

  • Native file locking only exists for OneDrive Business (Microsoft 365 Business), it is not supported for regular consumer use.

  • OneDrive API does not list pending upload sessions therefore resuming uploads in Cyberduck will cause the upload to start all over again.

Quota

Mountain Duck can only display the correct cloud storage quota as remaining disk space when setting the Path in the bookmark configuration to a folder different from /, for example My Files.