Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 从窗体身份验证转换为Windows身份验证_Asp.net_Authentication - Fatal编程技术网

Asp.net 从窗体身份验证转换为Windows身份验证

Asp.net 从窗体身份验证转换为Windows身份验证,asp.net,authentication,Asp.net,Authentication,我们目前正在为我们的intranet站点使用forms身份验证,并希望允许用户通过windows身份验证进行身份验证。这将如何影响当前用户帐户、配置文件和角色。我在网上看到,我可以混合使用这两种身份验证类型,并将角色和配置文件放在一个单独的数据库中,但如何将现有的角色和配置文件分配与windows身份验证用户登录链接起来?我不确定您是否能够完全按照要求执行,但您可以通过编码解决这个问题,您可以编写功能,要求通过windows身份验证的人员输入您在文件中已经拥有的唯一凭据(例如电子邮件地址),然后

我们目前正在为我们的intranet站点使用forms身份验证,并希望允许用户通过windows身份验证进行身份验证。这将如何影响当前用户帐户、配置文件和角色。我在网上看到,我可以混合使用这两种身份验证类型,并将角色和配置文件放在一个单独的数据库中,但如何将现有的角色和配置文件分配与windows身份验证用户登录链接起来?

我不确定您是否能够完全按照要求执行,但您可以通过编码解决这个问题,您可以编写功能,要求通过windows身份验证的人员输入您在文件中已经拥有的唯一凭据(例如电子邮件地址),然后,如果他们通过单击链接进行响应,您可以通过编程方式转换用户帐户


您可以创建新帐户并从旧的非windows身份验证帐户导入信息,然后删除旧帐户。但是,作为迁移的一部分,所有依赖于UserId的db记录都需要在这种方法中进行更改。

取决于您希望集成的程度,但如果单点登录不能实现这一点。 获取用户的sid在profiles角色等中查找它(可以向其中添加sid列,但是一个简单的sid-userid表会更好)

如果他们在那里,你就可以走了。 如果他们不使用表单的ATHENTION来识别他们,并从他们的sid touserid添加一个映射,那么他们将再次被询问,仅此而已

无论如何,如果sid发生变化,您可能需要类似的机制,这可能发生在各种windows问题之后,或者对于非windows用户的匿名访问

如果您不喜欢sid作为id,那么其他一些(例如域\用户名)可能会这样做

windows组/角色到应用程序角色的完全集成是另一个步骤 合理化个人资料信息,如全名等


这是一个很好的快速入门方式,无需现在就浏览所有使用用户id的内容并对其进行更改。

最后回来回答这个问题。我们实际上放弃了表单身份验证中的功能。角色与Windows身份验证的工作方式非常不同,配置文件也是如此。我们使用了自定义配置文件提供程序而不是内置的配置文件提供程序。如果有人对我们所做的工作感兴趣,我会整理一系列的四篇博客文章,详细介绍我们在环境中所做的工作以及遇到的一些问题:,和。

Active Directory?与表单身份验证并排工作很好。是的,是广告,但问题不在于它是谁呃,它们可以并排存在,但是如何从一个转换到另一个。因此,如果我理解正确,您建议创建一个新表,该表将保存AD SID和表单身份验证的用户ID,以便它们两个并排存在,并来回转换?即,当我想要获取它们的配置文件时,我会查找它们的SID by检查他们的登录名,然后从配置文件中提取相应的用户ID?反过来说,你从经过身份验证的登录名中获取sid,然后查找他们现有的配置文件。如果有,使用它,你当前的所有内容都将正常工作,如果没有通过表单身份验证,然后为下次添加sid映射。所以有点“升级”向导?让他们在表单身份验证信息中输入某种凭据,用新的ID凭据重新插入,然后删除该用户的旧表单信息?是@yougotiger这就是我的意思。我想看看其他人怎么说,但是找不到第2部分找不到是的,aspadvice已停止播放。我必须找到一个不同的地方张贴文章。