0

我有一个我自己管理的 Intranet,而且我们刚刚购买了一些供应商的系统,它没有开箱即用的 LDAP/AD 支持。我认为这是一个 ASP.Net 应用程序(login.aspx [hint1] 上有一个 id="aspnetForm" [hint2] 的表单),我认为,在我完美运行的想象中,我所要做的就是将用户凭据作为参数传递给登录页面(我已将他们的用户名注入到供应商的数据库中,我可以使用这些凭据手动登录),它就可以正常工作。不是这样。

Uri 看起来像这样;http://[apps_domain]/Controls/CtlLogin.aspx

我无法访问这个 ASP.Net 环境,我只能通过 URI 访问它,但是我可以完全访问环境中的另一台服务器,我可以在该服务器上运行各种脚本,最好是 PHP(因为我们运行一些其他应用程序在 PHP 中,我们有拥有这些技能的人)。

ASP.Net 是否有一些默认方式为他们的应用程序提供简单的登录?我在其他地方使用 NTLM 和 AD 来验证凭据,我只需要将它们注入 ASP.Net 应用程序。我希望这会更简单...... :)

4

1 回答 1

0

你想如何实现它。您想要现有的基于表单的登录,但允许用户在表单中输入他们的 AD 凭据(如 Outlook Web Access),还是让应用程序使用 IIS/Windows NTLM 或通过 HTTP 标头完成的 Kerberos 身份验证(即更安全,因为用户永远不需要输入他们的用户名/密码)。

如果不知道有关您购买的此应用程序的更多信息,我不能说。ASP.NET 确实提供了几个用于身份验证的后端,但这个应用程序很可能会推出自己的。如果应用程序确实使用股票“会员”或 web.config 定义的身份验证和成员资格系统,那么假设您可以更改 web.config 文件以使用 ActiveDirectory/Ldap/Kerberos 提供程序而不是它自己的提供程序,但是在我的体验很少的 ASP.NET 应用程序(除了琐碎的 Hello, World-examples)使用会员系统的书。不要期望这会起作用,您需要深入了解 ASP.NET 的成员资格系统。正如我所说,所有这些都是基于您的应用程序首先使用成员资格的假设。

您希望您的 PHP 脚本如何工作,确切地说?身份验证通过让客户端提交表单和服务器以 cookie 响应来工作。你不能委派这些任务——我猜你必须代理它,但你会进入一个受伤的世界。

简而言之,我会与供应商联系并要求进行修改以允许与您现有的系统集成或获得退款。

于 2012-07-30T03:55:39.807 回答