2009-07-27 17 views
2

一部のユーザーにWebパーツを公開したいが、すべてではない。 [Webパーツの追加]ポップアップウィンドウでWebパーツを表示または非表示にするにはどうすればよいですか?コードでこれをやりたいのですが、これを実現するためにSharePointロールを使用したいと考えています。[Webパーツの追加]ウィンドウにどのWebパーツが表示されるのを制限できますか?

+0

重複していません。 –

答えて

2

Webパーツギャラリーの[Webパーツの追加]ウィンドウに表示されるWebパーツを管理できます。

私はそれをやっていませんが...それは別のSharePointリストなので、プログラムで役割をグループ/ユーザーに割り当てることができるはずですか?

More Info...

更新 - あなたはいくつかのコードを見てみたいので。何も特別なものではありません。あなたは間違いなくあなたの標準エラーチェックなどをしたいでしょう。

using (SPSite site = new SPSite("YOUR SP URL")) 
{ 
    using (SPWeb web = site.OpenWeb()) 
    { 
    SPList list = web.Lists["Web Part Gallery"]; 

    // Your code for choosing which web part(s) to modify perms on 
    // will undoubtedly be more complex than this... 
    SPListItem listItem = list.GetItemById(19); 

    SPPrincipal groupToAdd = web.SiteGroups["YOUR GROUP NAME"] as SPPrincipal; 

    SPRoleAssignment newRoleAssignment = new SPRoleAssignment(groupToAdd); 
    SPRoleDefinition newRoleDefinition = web.RoleDefinitions["Read"]; 
    newRoleAssignment.RoleDefinitionBindings.Add(newRoleDefinition); 

    listItem.RoleAssignments.Add(newRoleAssignment); 
    } 
} 
+0

これは奨励しています、私はそれが今できることを知っています。私はコードでそれを行う必要があります。 – coder1

1

これはSharePointグループで行うことができます。

Webパーツギャラリーで、有効範囲を設定するWebパーツの[編集]をクリックし、[アクセス許可の管理]をクリックします。ここでは、Webパーツを使用できるユーザーまたはグループを指定できます。

関連する問題