ブラウザーでフォームを開くときの "アクセスが拒否されました" エラー (イベント ID 5566)

症状

Usergroup.xml web サービスのGetusercollectionfromgroupメソッドを使用して、ユーザーとグループを列挙する InfoPath フォームがあります。 ブラウザーでフォームを開こうとしています。 ただし、フォームは開かず、次のようなエラーメッセージが表示されます。

Web サービスに接続しようとしたときにエラーが発生しました。
サーバーの Windows イベントログにエントリが追加されました。
ログ ID: 5566

統合ログシステム (ULS) ログを表示すると、次のようなエントリが表示されます。

アクセスが拒否されました。 例外: ' アクセスが拒否されました。 (HRESULT: 0x80070005 (E_ACCESSDENIED)) ', StackTrace: ' (GetUsersDataAsSafeArray (String bstrUrl,) ' では ' の例外。 UInt32 Dwusersscope、UInt32 dwUserCollectionFlags、String Bstrurl、UInt32 dwValue、UInt32& pdwColCount、UInt32& pdwRowCount、オブジェクト& pvarDataSet)。 SPRequest (String bstrUrl、UInt32 dwUsersScope、UInt32 dwUserCollectionFlags、String Bstrurl、UInt32 GetUsersDataAsSafeArray、UInt32& DwValue、UInt32& PdwColCount、Object& PdwRowCount) '。

原因

フォームを開くと、 Getusercollectionfromgroupメソッドは、セキュリティコンテキストを使用して SharePoint グループとユーザーを列挙します。 サイトの所有者グループのメンバーである場合は、アクセス許可に十分ではない可能性があります。 その場合、メソッドは失敗します。

回避策

Farm Administrators グループのメンバーであるアカウントを使用している場合、このメソッドは正しく機能する必要があります。

ファームの管理者グループのアカウントを使用してフォームを開くことができない場合は、フォームで列挙されている SharePoint グループのアクセス許可を変更する必要があります。 これを行うには、次の手順を実行します。

  1. [サイト設定 > のユーザーとグループ] に移動し、編集するグループを選択します。
  2. [グループ] ページで、[設定 > グループの設定] を選択します。
  3. [グループのメンバーシップを表示できるユーザー] で、[すべてのユーザー] を選択します。

詳細情報

さらにサポートが必要な場合 SharePoint コミュニティに移動します。