You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求适用于VB.NET WinForms的OpenID连接类库,替代C#版IdentityModel.OidcClient

针对VB.NET WinForms的OpenID连接类库建议

嘿,你提到的IdentityModel.OidcClient其实完全可以在VB.NET WinForms项目里用哦!.NET类库是语言无关的,不管是C#还是VB.NET,只要项目兼容对应的.NET框架,就能直接引用使用,不用特意找VB版本的框架。

下面给你具体的实现思路和替代方案:

直接使用IdentityModel.OidcClient(推荐)

  1. 安装NuGet包:在你的VB.NET WinForms项目里,通过NuGet包管理器安装IdentityModel.OidcClient,或者在Package Manager Console里执行命令:
    Install-Package IdentityModel.OidcClient
    
  2. VB.NET代码示例:这里给你一个简化的登录流程示例,适配WinForms的UI交互:
    Imports IdentityModel.OidcClient
    
    Public Class MainForm
        Private Async Sub btnLogin_Click(sender As Object, e As EventArgs) Handles btnLogin.Click
            ' 配置OIDC客户端
            Dim options = New OidcClientOptions With {
                .Authority = "https://你的身份提供商地址",
                .ClientId = "你的客户端ID",
                .ClientSecret = "你的客户端密钥(如果需要)",
                .RedirectUri = "winforms://callback",
                .Scope = "openid profile email",
                .LoadProfile = True
            }
    
            Dim oidcClient = New OidcClient(options)
            Dim result = Await oidcClient.LoginAsync()
    
            If result.IsError Then
                MessageBox.Show($"登录失败:{result.Error}")
            Else
                ' 处理登录成功后的逻辑,比如保存令牌、获取用户信息
                MessageBox.Show($"欢迎,{result.User.Identity.Name}!")
            End If
        End Sub
    End Class
    
    注意:你需要根据自己的身份提供商配置调整Authority、ClientId等参数。

替代方案:Microsoft.Identity.Client(MSAL)

如果你更倾向于官方维护的类库,可以试试MSAL(Microsoft Authentication Library),它对WinForms有很好的支持,同样兼容VB.NET:

  • 安装NuGet包:Install-Package Microsoft.Identity.Client
  • 它支持更多主流身份提供商(比如Azure AD、Azure AD B2C、Google等),还有专门针对桌面应用的交互模式(比如嵌入式浏览器、系统浏览器)

注意事项

  • 确保你的VB.NET项目目标框架是**.NET Framework 4.6.1及以上或者.NET 5+**,这些类库需要对应的框架支持
  • 调试时注意回调URI的配置,身份提供商那边需要允许你设置的回调地址

内容的提问来源于stack exchange,提问作者Antoine V

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:10:53