我正在尝试使用 FBA(基于表单的身份验证)在 SharePoint 2010 中创建用户。我按照本文中的步骤配置 FBA:http ://donalconlon.wordpress.com/2010/02/23/configuring-forms-base-authentication-for-sharepoint-2010-using-iis7/
然后我上传了 FBA 包http://sharepoint2010fba.codeplex.com/。Web 部件正常加载,但未创建用户。如果您尝试创建用户,则会出现未知错误。
之后,我尝试自己创建授权表。下面的代码处理注册事件:
MembershipCreateStatus mcs = new MembershipCreateStatus();
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite("http://makovkasp:30763/"))
using (SPWeb spWeb = site.OpenWeb())
{
try
{
MembershipUser membershipUser =
Membership.Providers["FBAMembershipProvider"].CreateUser(txtLogin.Text,
txtPassword.Text,
txtEmail.Text,
txtSecretQuestion.Text,
txtAnswer.Text, true, null, out mcs);
spWeb.AllowUnsafeUpdates = true;
SPUser spUser = spWeb.EnsureUser(txtLogin.Text);
SPGroup spGroup = spWeb.Groups[2];
spGroup.AddUser(spUser);
spGroup.Update();
}
catch (Exception ex)
{
System.Console.WriteLine(ex.ToString());
}
}
});
执行此代码后,用户在 SharePoint 中创建(我可以在 FBA UserManagement 中看到它)。但它不是在 FBA 数据库中创建的。所以,我无法使用它的帐户登录。有谁知道该怎么做?
谢谢。