1

我正在开发一个包含 WCF RIA 服务的 Silverlight 5 应用程序。该应用程序将进行许多 Web 服务调用,并且每次调用都需要传递元素和username属性。其中一些调用将使用“系统管理员”用户名和密码,一些将使用用户自己的登录凭据。在所有情况下,该值将在用户登录时设置。passworddsndsn

所以我的问题是,在哪里存储所有这些?我现在将列出我的两个重要场景,希望有人可以提供帮助。

验证

我创建了一个自定义成员资格提供程序,它覆盖了ValidateUser(string username, string password)实际进行身份验证的方法。该方法中的代码使用用户提供的用户名和密码调用 Web 服务(在加载主页时出现的子窗口中)。

在子窗口中,用户可以选择他们想要使用的 DSN;但我不知道如何ValidateUser()在我的会员提供程序中使用该方法。

授权

对用户进行身份验证后,我需要服务器进行调用以获取有关用户的更多信息并将其存储为用户配置文件的一部分。这样,我以后可以在应用程序逻辑和 UI 元素中使用它。此调用将使用系统管理员凭据和用户在子窗口中选择的 DSN。

生成的代理确实*Completed为每个 SOAP 操作方法提供事件。我想我可以分配一个事件处理程序并在那里处理这个授权位。那么,我可以在哪里存储可以在我的客户端和服务器项目中访问它们的系统管理员凭据?

我已经实现了我的身份验证域服务,如下所示:

using System.ServiceModel.DomainServices.Hosting;
using System.ServiceModel.DomainServices.Server.ApplicationServices;

namespace THINKImportSystem.Web
{
  [EnableClientAccess]
  public class AuthenticationDomainService : AuthenticationBase<User>
  {
  }

  public class User : UserBase
  {
  }
}
4

0 回答 0