1

我们的应用程序是在 VB6 中构建的,并通过 Citrix 以 SaaS 模型交付。

我们的订阅者必须首先通过 Citrix 登录门户 (AD) 进行身份验证,以便他们可以访问其应用程序。每个应用程序都有自己的本地用户存储库,因此除了我们实施了一些单点登录策略的地方,用户必须输入第二层凭据。

现在,考虑我们打算用 Sharepoint 服务门户替换 Citrix 门户,这将允许我们发布 .net 内容,同时为遗留应用程序维护一个 Citrix Web。

我们正在开发一个 Silverlight 应用程序(使用 RIA 服务),它将连接到一个 SQL 数据库(其中包含用户登录和安全权限)。然而,我们首先使用 Forms Authetication 将应用程序存根,这导致了关于我们预期的部署模型的争论。

要使用此应用程序,您必须首先使用您的 Windows 凭据在 Sharepoint 站点中进行身份验证,因此这会导致应用程序必须配置为 Windows 身份验证的论点。如果您尝试在未对门户进行身份验证的情况下深度链接到应用程序,则必须将您重定向到门户登录页面。

在应用程序中实施第二层身份验证的最佳方法是什么?如果用户没有首先对门户进行身份验证,是否有办法继续使用基于表单但阻止访问应用程序?

4

1 回答 1

1

也许您应该完全依赖表单身份验证并放弃 Windows 身份验证。这样可以更好地维护您的客户信息,而无需每次都创建新的 windows 帐户,也无需处理丢失的密码、过期的帐户等。

因此,新用户将被重定向到表单登录页面,并在登录后重定向到您的 silverlight 应用程序,该应用程序将使用相同的用户身份验证上下文,因此将能够与您的数据库进行交互。

底线:根据您的情况,WSS 在 ASP.NET 成员资格提供程序上使用表单身份验证将是我个人的选择。

于 2009-11-16T22:46:23.480 回答