'RootWeb Only'사용자 정의 조치의 속성은 샌드 박스 솔루션에서만 작동합니까?왜?

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/50929

문제

사이트 모음과 하위 사이트를 조항하는 웹 응용 프로그램 범위 기능이 있습니다.

피쳐에는 탐색 요소가 포함되어 있으므로 새 사용자 정의 작업 그룹을 사이트 설정 페이지에 추가합니다. 내가 원하는 것은 사용자 정의 그룹이 사이트 모음의 루트 웹의 설정 페이지에만 나타나는 것입니다 ( '사이트 모음 관리'그룹과 같은 정렬).

내 접근 방식은 그룹의 각 커이케이션에 대해 'RootWebobonly="true"'를 사용하는 것이 었습니다. 불행히도 팜 솔루션을 배포하는 경우이 속성이 효과가없는 것으로 보입니다. 이를위한 해결 방법이 있습니까? 이것은 매우 일치하지 않는 것처럼 보입니다. 아직도 작동하지 않는 이유를 이해하기 위해 노력하지만, 분명히 그것은 http://msdn.microsoft.com/en-us/library/ms460194.aspx

내가 원하는 방식으로 얻는 다른 방법이 있습니까? 나는이 요소에 대해 다른 기능을 추가하지 않아도됩니다. 내 솔루션은 많은 기능을 가지고 있습니다.

도움이 되었습니까?

해결책

I totally agree that this is inconsistent and a bit misleading. Assuming that tranforming the solution to the Sandbox is a none starter, a few thoughts...

  1. You could maybe re-scope the feature to the Web (I'm assuming that it is currently the scoped at the Site) and the just activate it on the root web. That would probably raise another issue though as I suspect that you don't want the feature to show up in the list of available features for each web. To get round that you could make the feature hidden and then activate by PowerShell or whatever on the root web only. However, I suspect you won't really like that idea (it's a bit ugly).

  2. Just have the GroupId of your custom action set to SiteCollectionAdmin that way it shows up in the Site Collection Admin group and will only show up on the root web. However, suspect you want a number of links and don't want to pollute the SiteCollectionAdmin group (hence the need for a custom group) so that won't cut it.

  3. A spin off idea is just place one link in the SiteCollectionAdmin group and send your user to a custom application page which just houses your links. The draw back of this is that it requires an extra click-through but the up side is that you can now do much more on your launch page than you could every do in a you elements file e.g. selectively show/enable items according to the specific user, as you've got full code behind access to the OM.

  4. (This is what I did to work around the work round this issue). Create your custom group and add the custom actions as required. Then set the Rights attribute of every custom action in the group to be ManageWeb (or Full Mask). The effectively means that your custom actions are all only accessible to site collection admins. If all custom actions in the custom group are inaccesible to the end user then the custom group won't show up (what's the point in showing and empty group). The effect of this is that the custom group will only show up for Site Collection Admins. Although your custom actions will still show up if a Site Colection Admin drills into site settings of a sub web they won't show up for a user who is only an admin/owner at a sub-web only.

Option 4 is the way I'm going as I reckon showing the custom group for Site Collection Admins is no real shakes and actually might be useful rather than having to go back up the tree to Site Collection settings.

I hope that helps

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top