Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.

Commit 78c7479

Browse files
committed
Version 2.1.0.0
1 parent 67cbbe1 commit 78c7479

20 files changed

+951
-32
lines changed

Faq.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,12 @@ I recommend you to read up on the oAuth flow which will show you that all commun
6262

6363
https://docs.microsoft.com/en-us/onedrive/developer/rest-api/getting-started/graph-oauth?view=odsp-graph-online
6464

65+
### How does the experimental Microsoft Graph Device Code Flow work? ###
66+
67+
If you want the deep technical details on this, [read up here](https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code).
68+
69+
If you just want to understand the basic idea, it works as follows. When you choose this option when setting up the synchronization of your KeePass database with your OneDrive Consumer or OneDrive for Business site, the KeePass plugin will connect to the Microsoft Graph API to request a device login session. This will return a short unique identifier which will be shown to you by this plugin in your KeePass. You then open any internet browser you would like and navigate to the internet address shown in the KeePass dialog, which will typically be https://microsoft.com/devicelogin. You can even do this from any other device such as your tablet or phone. Enter the ID that is shown to you by the plugin in KeePass and go through the normal authentication process for your OneDrive Consumer or OneDrive for Business site. This process has full support for multi factor authentication and other identity providers you or your school or organization may have put in place such as AD FS, Ping Federate or one of the many others. Once authenticated, it may ask you to confirm granting the permission to access your files without you having to log on again to my plugin which will identify itself as "Koen Zomers OneDrive Sync v2". Once you grant it these rights, depending on how you have set up your account, it can be that you get a push notification on your phone, a text message on your phone and/or an e-mail stating that a new logon has just taken place under your account to the application "Koen Zomers OneDrive Sync v2". From here on the sync process works exactly like before.
70+
6571
### Other questions ###
6672

6773
Feel free to e-mail me at koen@zomers.eu or [open a GitHub Issue](https://github.com/KoenZomers/KeePassOneDriveSync/issues/new)

KeeOneDriveSync.plgx

35.3 KB
Binary file not shown.

KoenZomers.KeePass.OneDriveSync/Enums/CloudStorageType.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ public enum CloudStorageType : short
2525
/// </summary>
2626
SharePoint = 3,
2727

28+
/// <summary>
29+
/// Microsoft Graph API Device Login
30+
/// </summary>
31+
MicrosoftGraphDeviceLogin = 4,
32+
2833
/// <summary>
2934
/// Do not sync
3035
/// </summary>

KoenZomers.KeePass.OneDriveSync/Forms/OneDriveCloudTypeForm.Designer.cs

Lines changed: 30 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

KoenZomers.KeePass.OneDriveSync/Forms/OneDriveCloudTypeForm.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ public OneDriveCloudTypeForm()
2727
OneDriveConsumerPictureButton.BackgroundImage = Resources.OneDrive;
2828
OneDriveForBusinessPictureButton.BackgroundImage = Resources.OneDriveForBusiness;
2929
GraphPictureButton.BackgroundImage = Resources.MSGraph;
30+
GraphDeviceLoginPictureButton.BackgroundImage = Resources.MSGraph;
3031
SharePointPictureButton.BackgroundImage = Resources.SharePoint;
3132
}
3233

@@ -82,5 +83,13 @@ private void CancelButton_Click(object sender, EventArgs e)
8283
{
8384

8485
}
86+
87+
private void GraphDeviceLoginPictureButton_Click(object sender, EventArgs e)
88+
{
89+
ChosenCloudStorageType = CloudStorageType.MicrosoftGraphDeviceLogin;
90+
DialogResult = DialogResult.OK;
91+
92+
Close();
93+
}
8594
}
8695
}

0 commit comments

Comments
 (0)