Pergunta

O objetivo é bloquear a recepção de mensagens de e-mail configurações de página interna (/_layouts/EmailSettings.aspx) para os usuários não-administrador ou, simplesmente, para todos, com uma exceção conta.

Via elemento de autorização na web de configuração de acesso não é reprimir com a seguinte entrada:

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

Quaisquer pensamentos?

Foi útil?

Solução 2

Não recomendável, mas eu adicionei o seguinte código para a página de layout:

em um elemento de script, com o runat="server" propriedade

    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."));
    }

Outras dicas

A maneira que eu fiz exatamente isso, um par de anos foi o desenvolvimento de uma SharePoint DelegateControl WebControl e descontínuas, é para o PlaceHolderAdditionalPageHead.

O WebControl seria incluir o código para verificar se o "/_layouts/EmailSettings.aspx" a página é atingido e se assim verificar que está a tentar aceder a esta página (no meu caso, a verificação da web.configuração para um determinado nome de usuário).

Na verdade, não foi muito difícil, uma vez que eu tenho o básico de canalização feito, mas requer o C# habilidades de codificação (não necessariamente o Visual Studio se você pode viver com algumas ferramentas básicas como o Notepad++ e o CodePlex WSPBuilder ferramenta de linha de comando).

Deixe-me saber se você está pronto para alguns áspero de código C# e eu vou desenterrá-lo a partir de um antigo arquivo de uma vez estou de volta em casa, de viajar mais tarde.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top