0

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 データベースには作成されません。そのため、そのアカウントでサインインできません。誰でもそれを行う方法を知っていますか?

ありがとう。

4

3 に答える 3

0

ユーザー登録時の不明なエラーは、通常、メールの送信中にエラーが発生したことを意味します。詳細については、SharePoint ULS ログを確認できます。SharePoint の送信メールの設定を確認します。

FBA UserManagement でユーザーを確認できる場合、そのユーザーはメンバーシップ データベースに作成されています。aspnetdb データベースをチェックして、ユーザーが存在するかどうかを確認しましたか?

別のFBAユーザーのアカウントでログインできますか? そうでない場合は、FBA の設定に問題がある可能性があります。メンバーシップ エントリが STS および Central Admin Web 構成にあることを確認します。

于 2012-06-06T17:15:49.673 に答える
0

mcsコードの実行後にパラメータ値を調べる必要があります。ユーザー アカウントが作成されなかった理由を示している可能性があります。MembershipCreateStatus列挙は、ユーザーがメンバーシップ プロバイダーによって正常に保存されなかった理由を示す必要があります。

于 2012-06-06T13:02:45.383 に答える