SharePoint2013サイトで作業しています。次のコードを使用して、ユーザーをサイトコレクション管理者として設定しようとしています。
public void SetUserSiteCollectionAdmin(string siteUrl, string strUserName, string strEmail, string fullName)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite(siteUrl))
{
using (SPWeb web = site.RootWeb)
{
web.AllowUnsafeUpdates = true;
web.AllUsers.Add(strUserName, strEmail, fullName, null);
SPUser spUser = web.SiteUsers[strUserName];
spUser.IsSiteAdmin = true;
spUser.Update();
web.AllowUnsafeUpdates = false;
}
}
});
}
SharePoint 2013サイトの[サイトの設定]に移動し、[サイトコレクションの管理者]リストを開くと、そのユーザーがサイトコレクションの管理者としてリストされているのがわかります。
すべてが良さそうです。同じユーザー名(このサイトコレクション管理者リストが追加されたばかり)を使用してこのサイトを開くと、次のメッセージが表示されます。
申し訳ありませんが、このサイトはあなたと共有されていません。
ユーザーを「サイトコレクション管理者」にする以外に、ここで欠落している他の設定を行う以外に、他に何をする必要がありますか?