Я пытаюсь сделать логин на Java в качестве пользователя. Мне нужно получить доступ к защищенной папке. Я сделал это как администратор с web.xml.
<security-constraint>
<web-resource-collection>
<web-resource-name>Seguridad</web-resource-name>
<url-pattern>/protegido/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-role>
<role-name>admin</role-name>
</security-role>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/protegido/admin/login.jsp</form-login-page>
<form-error-page>/protegido/admin/error.jsp</form-error-page>
</form-login-config>
</login-config>
Мне нужно получить доступ к папке внутри протегидо, названной usuarioRegistrado.
У меня есть некоторые сомнения в этом.
Мой html логина является загрузочным модальным.
<div class="modal fade" id="inicio">
<div class="modal-dialog">
<div class="modal-content">
<form action="Servlet?submit=LogIn" method="post" class="form-horizontal" >
<div class="modal-header">
<h4 class="centrar">Inicio de Sesión</h4>
</div>
<div class="modal-body">
<div class="form-group">
<label for="j_username" class="col-sm-2 control-label">Usuario</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="j_username" name="j_username" placeholder="Usuario">
</div>
</div>
<div class="form-group">
<label for="j_password" class="col-sm-2 control-label">Contraseña</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="j_password" name="j_password" placeholder="Contraseña">
</div>
</div>
</div>
<div class="modal-footer">
<button class="btn btn-success" type="submit">Iniciar Sesión</button>
<a href="#" class="btn btn-default" data-dismiss="modal">Cerrar</a>
</div>
</form>
</div>
</div>
</div>
Могу ли я сделать это с помощью сервлета, подобного модальному, или мне нужно использовать j_security_check в действии.
И если в случае, я должен сделать второй, как я могу установить web.xml
Вы можете найти некоторую документацию по auth-методу FORM и как правильно построить форму в документации oracle. В этом сценарии нет необходимости использовать Spring или что-то в этом роде :)
Также вы должны поместить login.jsp
и error.jsp
вне защищенного пути, например
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
поместить его в сервлет, отображаемый на "/" (корневой путь сети).