gpt4 book ai didi

wcf - 对于 WPF 和 WCF 应用程序的用户身份验证/授权,什么被认为是 "best practice"?

转载 作者:行者123 更新时间:2023-12-04 12:47:01 41 4
gpt4 key购买 nike

假设我有一个 .NET 富客户端 (WPF) 应用程序,它将同时部署在 3 个不同的场景中:

  • 客户端和服务器代码在单个进程中运行
  • 客户端代码在 Intranet 计算机上运行,​​并通过 WCF 与运行应用程序/域/基础架构代码的服务器计算机通信
  • 与#2 相同,但客户端可以在防火墙外的机器上运行。应集中维护用户和角色的自定义列表(即凭据不基于 Windows 登录)

  • 为该应用程序实现相同的用户授权/身份验证模型的简单且经过验证的做法是什么?即,我想在我的表示层、应用程序层、域层等中使用相同的方法,而不管应用程序是如何部署的。

    是否应该通过我现有的 Entity Framework 模型在我的 SQL 数据库中明确维护用户/角色?应该 Thread.CurrentPrincipal是需要授权某些应用程序功能的代码使用的方法,或者应该是某些 IUserService依赖注入(inject)?

    这是一个低调的应用程序,因此安全性不是至关重要的——只是一些基本的东西。

    谢谢

    编辑

    在花费数小时研究 WIF/基于声明的身份验证之后,我仍然没有看到任何有关如何创建采用这种安全类型的独立 .NET 桌面应用程序的指导。所有讨论都针对 ASP.NET 或 WCF。我需要我的应用程序使用可用于分布式 (WCF) 和独立部署方案的标准方法

    最佳答案

    一般来说,最好使用基于 token 的身份验证,如 JWT。主要原因是它在各种类型的客户端和服务器中的灵 active 。例如,如果将来您需要在解决方案中添加移动应用程序(IOS、Android 等),您可以毫无问题地做到这一点。您还可以使用 WebApi 等 Restful 服务来增强您的应用程序。

    因此,如果您要开始该项目,我对您的建议是使用基于 token 的身份验证。

    查看这些网址,您可能会发现它们很有用:

    https://msdn.microsoft.com/en-us/library/ms751506%28v=vs.110%29.aspx

    http://www.rhyous.com/2015/02/05/basic-token-service-for-wcf-services-part-1/

    关于wcf - 对于 WPF 和 WCF 应用程序的用户身份验证/授权,什么被认为是 "best practice"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31303426/

    41 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com