문제

들어오는 전자 메일 설정 내부 페이지 (/_layouts/emailsettings.aspx)를 비 관리자 사용자에게 차단하거나 간단히 예외 계정으로 모든 것으로 차단하는 것입니다. 권한 부여 요소 Web Config 액세스가 다음 항목으로 제지되지 않습니다.

  <location path="_layouts/EmailSettings.aspx">
    <system.web>
      <authorization>
      <deny users="*"/> 
      </authorization>
    </system.web>
  </location>
.

어떤 생각?

도움이 되었습니까?

해결책 2

추천 할 수없는 이 아니라 레이아웃 페이지에 다음 코드를 추가했습니다.

runat="server"속성이있는 스크립트 요소에서

    protected void Page_Load(object sender, EventArgs e)
    {
        if(!SPContext.Current.Web.CurrentUser.IsSiteAdmin) 
            SPUtility.HandleAccessDenied(new Exception("Only Site Admins can access Incoming e-mail settings."));
    }
.

다른 팁

몇 년 후에 정확히이 일을했던 방식은 SharePoint DelegateControl WebControl을 개발하고 PlaceHorderAdditionalPageHead에 스테이플 링합니다.

WebControl은 "/_layouts/emailsettings.aspx"페이지가 히트되었는지 확인하기위한 코드가 포함되어 있고이 페이지에 도달 하려는지 확인하는 경우 (특정 사용자 이름에 대한 web.config를 확인하십시오)

는 실제로 기본 배관을 완료했지만 C # 코딩 기술이 필요합니다 (Notepad ++와 CodePlex WSPBuilder 명령 줄 도구와 같은 몇 가지 기본 도구로 작동 할 수있는 경우 반드시 Visual Studio는 아님).

당신이 거친 c # 코드를 위해 일어나면 알려 주시고 나는 나중에 집에 돌아 왔을 때 옛날 아카이브에서 그것을 파헤쳐 드리겠습니다.

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