apache - page - authtype htaccess
Usar la autenticación básica(htaccess) para restringir el acceso a una URL específica (3)
Puede proteger todo el directorio colocando un .htaccess
separado en ese directorio. Este tutorial lo explica mejor de lo que pude:
http://www.addedbytes.com/lab/password-protect-a-directory-with-htaccess/
Necesito restringir el acceso a una URL en particular, por ejemplo, http://mydomain.com/this/is/the/url en mi servidor web utilizando la Autenticación básica a través de Apache. Cualquier otra URL debe ser abiertamente accesible. He visto que puedes agregar reglas específicas a los archivos usando:
<Files "mypage.html">
Require valid-user
</Files>
Mi problema es que todas las solicitudes se enrutan a los controladores que usan mod-rewrite, por lo que no creo que pueda restringir el acceso en función del archivo. ¡Cualquier idea sería de lo más útil!
No estoy seguro de si esto funcionaría / ayudaría, pero podría especificar algo en su aplicación web.xml.
<security-constraint>
<display-name>Public access</display-name>
<web-resource-collection>
<web-resource-name>PublicPages</web-resource-name>
<description>Public</description>
<url-pattern>/servlet/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<security-constraint>
<display-name>Secured access</display-name>
<web-resource-collection>
<web-resource-name>SecuredPages</web-resource-name>
<description>Secured pages</description>
<url-pattern>/services/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description>General Access</description>
<role-name>*</role-name>
</auth-constraint>
<user-data-constraint>
<description>SSL not required</description>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>SecurePages</realm-name>
</login-config>
<security-role>
<description>General Access</description>
<role-name>*</role-name>
</security-role>
En el archivo .htacess debes poner:
AuthType Basic
AuthName "Need to login"
AuthUserFile .htpasswd file location ;
Require user USER
//AuthName is login prompt message
//AuthUserFile is physical .htpasswd file location i.e.
C:/xampp/htdocs/basic/.htpasswd
//Require user is for a specific user i.e. the username you want to
authenticate
Para generar el archivo .htpasswd, puede usar: - http://www.htaccesstools.com/htpasswd-generator/