c# – 在winforms项目中实现IPrincipal

c# – 在winforms项目中实现IPrincipal,第1张

概述我正在尝试在我当前的 winforms项目中实现授权和身份验证.身份验证还必须匹配SQL Server 2008数据库中的用户.问题是,它是一个多用户程序,因此当添加新用户时,会创建一个数据库并将用户身份添加到数据库中. 我想知道这是否可能实施IPrincipal和IIdentity.到目前为止我只找到了ASP.NET实现. 任何人都可以给我一些指导,了解在winforms应用程序中实现密码/用户 我正在尝试在我当前的 winforms项目中实现授权和身份验证.身份验证还必须匹配sql Server 2008数据库中的用户.问题是,它是一个多用户程序,因此当添加新用户时,会创建一个数据库并将用户身份添加到数据库中.

我想知道这是否可能实施IPrincipal和IIDentity.到目前为止我只找到了ASP.NET实现.

任何人都可以给我一些指导,了解在winforms应用程序中实现密码/用户标识安全性的最佳方法是什么?请记住,必须使用sql Server中的数据库进行验证.

这意味着该用户必须存在数据库,并且其凭据必须正确.

解决方法 您可以通过编写实现该接口的类来实现您自己的IPrincipal对象.

由于您将使用Windows以外的其他来源提供用户名和密码,因此您还需要编写自己的IIDentity实现.

幸运的是,这些不是大型接口.

对于您的自定义IIDentity,我将创建一个Login表单,尝试在sql 2008数据库中查找用户名/密码组合.如果找到,那么您唯一关心的是如何填充该用户的“角色”以从界面提供IsInRole(string rolename)方法的功能.

这是一个detailed article on how to accomplish in both Winforms and ASP.NET的链接

UPDATE

此外,一旦将此主体附加到当前线程(以及后续创建的线程),您还可以向代码中添加“要求”当前主体属于给定角色或具有给定名称的属性.

一篇很好的example of that is this文章.

总结

以上是内存溢出为你收集整理的c# – 在winforms项目中实现IPrincipal全部内容,希望文章能够帮你解决c# – 在winforms项目中实现IPrincipal所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1215731.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存