C# 如何使登录Windows用户的身份验证自动?

C# 如何使登录Windows用户的身份验证自动?,c#,active-directory,ldap,keycloak,openid-connect,C#,Active Directory,Ldap,Keycloak,Openid Connect,我正在尝试创建一个C#应用程序,它将使用keydove进行身份验证。目前,我可以通过发送以下REST请求,使用OpenID Connect以用户身份登录: POST http://{server}:{port}/auth/realms/{myRealm}/protocol/openid-connect/token Body (x-www-form-urlencoded): client_id {myClient} username FooBar passw

我正在尝试创建一个C#应用程序,它将使用keydove进行身份验证。目前,我可以通过发送以下REST请求,使用OpenID Connect以用户身份登录:

POST
http://{server}:{port}/auth/realms/{myRealm}/protocol/openid-connect/token

Body (x-www-form-urlencoded):
    client_id    {myClient}
    username     FooBar
    password     {userPassword}
    grant_type   password
发送此请求将导致获取访问令牌和刷新令牌

现在,我希望能够使用“当前活动的Windows会话”以某种方式登录(获取令牌或以其他方式验证用户),这意味着当前登录到Windows的用户(存在于active Directory LDAP中)应该在不提供任何凭据的情况下进行身份验证

我的keydape领域中的用户联合已经包含了AD LDAP服务器的配置,因此所有用户现在都可以在keydape中使用

我浏览了keydape文档(特别是关于和的部分),但不太明白为了使它工作到底需要做些什么

我也在这里搜索过,但我找到的唯一相关的东西是


有人能给我指出正确的方向吗?

用密钥斗篷的术语来说,你要求的是SPNEGO身份验证 看

在领域身份验证选项卡中,需要启用Kerberos
您的浏览器需要启用SPNEGO。不同的浏览器做的不同。您为SPNEGO启用了一个特定的URL

我想,他特别询问了如何使用REST请求,而不是浏览器。对于C#客户端,浏览器工作流将无法工作。rest客户端需要能够遵循SPNEGO协议。OP可能想要谷歌SPNEGO REST客户端