Pregunta

El propósito es bloquear la página interna de configuración de correo electrónico entrante (/_layouts/emailsettings.aspx) a usuarios de no administrador o, simplemente, a todos con una cuenta de excepción.

VIA elemento de autorización enCONFIGURAJE DE LA WEB SIN ACCESO ES FRUTETE CON LA PRESENTACIÓN DE LA ADJORA DE ENTRADA:

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

¿Alguna idea?

¿Fue útil?

Solución 2

no recomendable , pero agregué el siguiente código a la página de diseño:

en un elemento de script, con la propiedad 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."));
    }

Otros consejos

La forma en que hice exactamente esto un par de años atrás estaba desarrollando un WebControl de SharePoint DelegueControl y grapado a la PlaceHolderAdiTitionalPageHead.

El webcontrol incluiría el código para verificar si la página "/_layouts/emapelsettings.aspx" se presiona y, si es así, marque quién está intentando llegar a esta página (en mi caso de la web.config para un nombre de usuario particular).

No fue realmente muy difícil una vez que recibí la plomería básica, pero requiere las habilidades de codificación de C # (no necesariamente Visual Studio si puede vivir con algunas herramientas básicas como BlocAPAD ++ y la herramienta CodePlex WSPBUILDER MINGANGANLINE).

Déjame saber si está preparado para un código C # áspero y lo cavaré de un archivo antiguo una vez que vuelva a la casa de viajar más tarde.

Licenciado bajo: CC-BY-SA con atribución
scroll top