[ad_1]
¿Hay una manera dentro web.config ¿O la configuración de IIS 7 que detendrá las solicitudes de inicio de sesión y simplemente obligará al usuario a cometer el error 401 al ser denegado debido a la regla de autorización de URL?
En este momento, restringe con éxito el acceso a la página, pero no muestra el error “401 – No autorizado: acceso denegado debido a credenciales no válidas” hasta que hace clic en cancelar en el mensaje de inicio de sesión.
Usando Windows 2008 R2, IIS 7.5, autenticación de Windows, suplantación y autorización de URL.
A continuación se muestra una muestra de cómo mi web.config el archivo parece…
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <security> <authorization> <remove users="*" roles="" verbs="" /> <add accessType="Allow" roles="iis7test\BobAndFriends" /> </authorization> </security> </system.webServer> <location path="bobsSecret.aspx"> <system.webServer> <security> <authorization> <remove users="" roles="iis7test\BobAndFriends" verbs="" /> <add accessType="Allow" users="iis7test\Bob" /> </authorization> </security> </system.webServer> </location> </configuration>
Solución 1
Puede que el siguiente enlace te resulte útil.
http://stackoverflow.com/questions/217678/how-to-generate-an-401-error-programatically-in-an-asp-net-page[^]
Solución 2
Resuelto usando httpErrors en web.config. El sitio ahora redirige a la página de error personalizada y no solicita las credenciales de Windows tres veces.
<system.webServer> <httpErrors errorMode="DetailedLocalOnly" defaultResponseMode="File"> <remove statusCode="401" /> <error statusCode="401" path="/AccessDenied.aspx" responseMode="ExecuteURL" /> </httpErrors> </system.webServer>
[ad_2]
コメント