0

テキストボックスと送信ボタンが表示される共有ポイント Web パーツがあります。送信ボタンをクリックすると、フォルダーとサブフォルダーのセットが作成され、投稿権限を持つグループに権限が割り当てられます。

代わりに、ユーザー/グループがアクセス許可を提供しても、ドキュメント ライブラリにファイルをアップロードできません。

次の一連のコードを使用して、フォルダー/サブフォルダーに動的にアクセス許可を追加しました。

   SPGroup oGroup = web.Groups.GetByID (oFieldUserValue.LookupId);                                        
   SPPrincipal principal = (SPPrincipal)oGroup;
   SPRoleAssignment roleAssignment = new SPRoleAssignment(principal);                                        
   permFolder.Item.BreakRoleInheritance(true);                                        
   roleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions["Contribute"]);
   permFolder.Item.RoleAssignments.Add(roleAssignment);
   permFolder.Item.Update();
   finalItem.Update();
4

2 に答える 2

1

SPRoleAssignment オブジェクトを使用してこれを行うことができます。

// SPWeb オブジェクトと SPList オブジェクトが既にあると仮定すると ...

SPRoleDefinition roleDefinition = web.RoleDefinitions.GetByType(SPRoleType.Contributor);
roleAssignment.RoleDefinitionBindings.Add(roleDefinition);
if (!myList.HasUniqueRoleAssignments)
{
    myList.BreakRoleInheritance(true); // Ensure we don't inherit permissions from parent
} 
myList.RoleAssignments.Add(roleAssignment);
myList.Update();
于 2015-03-03T11:21:44.087 に答える
0

[新しい項目を追加] オプションが表示されている場合、リボン メニューからドキュメントをアップロードすることを確認しましたか。その特定のフォルダーに対する投稿権限を持つすべてのユーザーに対して。

于 2012-10-17T12:42:48.543 に答える