본문 바로가기
JSP/웹페이지 만들기

JSP 웹페이지 만들기 10장 연습문제(시큐리티)

by 미눅스[멘토] 2023. 7. 17.
728x90

1.시큐리티란 무엇인가?

-허가된 사용자만이 특정 웹 페이지에 접근할 수 있도록 제한하는 보안기능

 

 


2.시큐리티의 두 가지 처리 기법에 대해 간단히 설명하시오.

1) 선언적 시큐리티 : 코드 작성 없이 web.xml파일에 보안 구성을 작성하여 사용자의 인증을 수행하는 방식

2) 프로그래밍적 시큐리티 : request내장 객체의 메소드를 통해 사용자의 권한 부여를 처리하는 프로그래밍

 

 


 

3.FORM 기반 인증 처리 기법으로 로그인 페이지를 작성하는 방법을 설명하시오.

-웹 브라우저가 인증 처리에 직접적으로 관여하지 않기 때문에 사용자가 로그인 페이지에서 인증 정보를 직접 입력해야ㅑ 전달됨. 이 때 로그인 페이지에서 form태그의  action속성값, 사용자 아이디와 비밀번호 등 input 태그의 name 속성 값은 다음과 같이 설정 해야함

.form태그의 action 속성 : j_security_check

.사용자의 name속성 : j_user

.비밀번호의 name속성 : j_password

 

 


4.FORM기반 인증 처리 기법을 이용하여 다음 조건에 맞게 JSP 어플리케이션을 만들고 실행 결과를 확인하시오

 

 

login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<form name="loginForm" action="j_security_check?id=admin" method="post">
	<p>사용자명 : <input type="text" name="j_username"></p>
	<p>비밀번호 : <input type="password" name="j_password"></p>
	<input type="submit" value="전송">
</form>
</body>
</html>

 

faild.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
	인증 실패하셧습니다.
</body>
</html>

 

sequrity.jsp

<%@page import="java.util.Enumeration"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>

<p>사용자명 admin 인증을 성공했습니다.</p>

 

 

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
    <display-name>BookMarket</display-name>
	
	<security-role>
		<role-name>admin</role-name>
	</security-role>
	
	
	<security-constraint>
		<web-resource-collection>
			<web-resource-name>BookMarket</web-resource-name>
			<url-pattern>/security.jsp</url-pattern>
			<http-method>GET</http-method>
		</web-resource-collection>
		<auth-constraint>
			<description></description>
			<role-name>admin</role-name>
		</auth-constraint>
	</security-constraint>
	
	<login-config>
		<auth-method>FORM</auth-method>
		<form-login-config>
			<form-login-page>/login.jsp</form-login-page>
			<form-error-page>/failed.jsp</form-error-page>
		</form-login-config>
	</login-config>
</web-app>

 

tomcat-users.xml

 

 

 

인증 실패시
결과

 

 


성공시
결과

 

 

 

 


 

5. 다음 조건에 맞게 도서 웹 쇼핑몰을 위한 웹 어플리케이션을 만들고 실행결과를 확인하세요.