簡體   English   中英

將外部重定向 URI 與 Google 的 OAuth2 用於桌面應用程序

[英]Using an external redirect URI with Google's OAuth2 for desktop apps

我有一個桌面 WPF 應用程序,它必須鏈接到用戶的 Google 帳戶才能稍后與 Google Drive 集成。 我正在使用他們的Google.Apis.Auth.OAuth2實用程序來處理授權。 我已經在 Google 控制台中注冊了我的應用程序,並根據文檔為Desktop app添加了 OAuth2 客戶端 ID。

我的問題是,我看不到在控制台中的哪個位置可以添加/將自定義重定向 URI 列入白名單以供我的應用程序使用 - 此選項似乎僅適用於 Web 應用程序,而我的桌面應用程序除了重定向之外別無選擇到localhost ,這是不可接受的。 我試過覆蓋GoogleAuthorizationCodeFlow並將我的 URI 直接傳遞到

public override AuthorizationCodeRequestUrl CreateAuthorizationCodeRequest(string redirectUri)
        => new GoogleAuthorizationCodeRequestUrl(new Uri(AuthorizationServerUrl))
        {
            ClientId = ClientSecrets.ClientId,
            Scope = string.Join(" ", Scopes),
            RedirectUri = _customRedirectUri,
            State = _state
        };

但是谷歌當然會吐出一個redirect_uri_mismatch ,因為為什么不呢 - 我無法在其他任何地方添加它。 我已經為 DropBox 集成實現了相同的功能,您可以在其中指定重定向頁面並將其列入白名單 - 我認為谷歌會有類似的東西,但Authorized Redirect URI字段甚至不存在桌面應用程序。

這方面的信息似乎非常稀少。 這完全可能嗎,我錯過了什么?

作為最后的努力,我創建了不同類型的憑據(Web 應用程序),我可以在其中提供我的重定向 URI,並且它以這種方式工作。 盡管如此, 文檔在這方面有點令人困惑。 它建議為此類應用程序使用Desktop配置文件,但在這種情況下您無法選擇重定向頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM