代码之家  ›  专栏  ›  技术社区  ›  Thomas

使用带有Active Directory ADFS的WPF客户端验证云节点JS后端

  •  1
  • Thomas  · 技术社区  · 7 年前

    我曾经问过一个类似的问题: Understanding ADFS Login With Windows Native WPF Client 我似乎对如何在WPF本机Windows应用程序上使用ActivityDirectoryADFS进行身份验证有了更好的理解(我可以使用ADAL库),但对于如何将身份验证传输到远程服务器(NodeJS服务器),我仍然一无所知

    我还发现,为了让本机WPF应用程序找到当前登录的用户,我可以执行类似的操作,通过使用此操作,WPF知道用户是合法的,因为他们登录到了自己的Windows帐户。

    var context = new PrincipalContext(ContextType.Domain, DOMAINNAME); var user = UserPrincipal.FindByIdentity(context, IdentityType.SamAccountName, Environment.UserName);

    但是,我不知道如何将此身份验证传输到远程NodeJS服务器(没有UI,WPF应用程序就是UI)。我可以发送我们的远程应用程序详细信息,如samAccountName this . WPF知道用户是合法的,但我们的NodeJS应用程序无法验证这一点。如果我在我们的WPF应用程序中添加一个私有证书,以便我们的NodeJS服务器进行验证,那么可以反编译WPF应用程序以获取证书。我如何解决这个问题?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Kamran Asim    7 年前

    您在错误的上下文中考虑身份验证。e、 g.由于节点服务器为您提供服务,所以每个客户端都应该向节点服务器标识自己,以便使用节点服务。

    现在说到点子上,您想从AD验证WPF客户端+节点服务器。在这种情况下,实际上您正在从某个源(即AD)验证两个应用。要做到这一点,您需要一些可以验证两个应用的中间件。

    这种情况的答案是Microsoft Identity Server。请访问一些教程,希望它能解决您的需求。