chapter10. 보안. 서버 설정


tomcat-users.xml로 들어가서 하단의 소스를 봄. 디자인 탭이 아니라 소스 탭을 봐야함.



그리고 <tomcat-users>

만 남기고 안의 내용물 삭제

 

 

<role rolename="manager"/>

<user username="admin" password="1234" roles="manager" />

 

 

</tomcat-users> <--이 코드 위쪽에 삽입

 

그 밑에 이렇게 

<role rolename="manager"/>

<user username="admin" password="1234" roles="manager" /> 까지 정보를 수정해준다. 비밀번호는 admin을 섞지 않음. 복잡하기 때문에.

 

이제 디자인 탭으로 가면

 

 

이렇게 정보가 저장된다.

 

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="6.0" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd">

<security-role>

<role-name>admin</role-name>

</security-role>

<security-constraint>

<web-resource-collection>

<web-resource-name>JSPBook</web-resource-name>

<url-pattern>/exam10_2</url-pattern>

<http-method>GET</http-method>

<http-method>POST</http-method>

</web-resource-collection>

<auth-constraint>

<role-name>admin</role-name>

</auth-constraint>

</security-constraint>

<login-config>

<auth-method>FORM</auth-method>

<form-login-config>

<form-login-page>/chapter10/login.jsp</form-login-page>

<form-error-page>/chapter10/login_failed.jsp</form-error-page>

</form-login-config>

</login-config>

</web-app>

 

 

 

이 뒤에

 

프로젝트 아래의 webapp 안에 web.xml

여기에 이 내용을 넣는다.

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="6.0" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee                       https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd">
	<security-role>
        <role-name>admin</role-name>
    </security-role>
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>JSPBook</web-resource-name>
            <url-pattern>/exam10_2</url-pattern>
            <http-method>GET</http-method>
            <http-method>POST</http-method>
        </web-resource-collection>
        <auth-constraint>
            <role-name>admin</role-name>
        </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
        <form-login-page>/chapter10/login.jsp</form-login-page>
        <form-error-page>/chapter10/login_failed.jsp</form-error-page>
    </form-login-config>
</login-config>
</web-app>

 

 <url-pattern>/exam10_2</url-pattern> <- 이 부분에 방화벽을 세운다.

 

북마켓에선 이렇게 했음

폴더가 여긴 없으니까 지우고 바로 상대경로 설정.

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="6.0" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd">
	<security-role>
        <role-name>admin</role-name>
    </security-role>
    <security-constraint>
    	<display-name>BookMarket Security</display-name>
        <web-resource-collection>
            <web-resource-name>BookMarket</web-resource-name>
            <description></description>
            <url-pattern>/addBook.jsp</url-pattern>
            <http-method>GET</http-method>
            <http-method>POST</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>/login_failed.jsp</form-error-page>
    </form-login-config>
	</login-config>
	<error-page>
		<error-code>404</error-code>
		<location>/exceptionNoPage.jsp</location>
	</error-page>
	<welcome-file-list>
        <welcome-file>welcome.jsp</welcome-file>
    </welcome-file-list>
</web-app>

 

<? xml 버전 = "1.0"encoding = "utf-8"?> <web-app version = "6.0"xmlns = "https://jakarta.ee/xml/ns/jakartaee"xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance" xsi : schemalocation = "https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd"> <Security-Role> <역할-이름> admin </roble-name> </Security-Role> <Security-Constraint> <display-name> 북마켓 보안 </display-name> <Web-Resource-Collection> <Web-Resource-Name> 북마켓 </web-resource-name> <설명> </description> <Url-pattern>/addbook.jsp </url-pattern> <http-method> get </http-method> <http-method> post </http-method> </웹 소송 수집> <auth-constraint> <설명> </description> <역할-이름> admin </roble-name> </auth-constraint> </security-constraint> <login-config> <Auth-Method> 양식 </auth-method> <Form-login-config> <Form-Login-Page> /Login.jsp </form-login-page> <form-error-page> /login_failed.jsp </form-ercror-page> </form-login-config> </login-config> <오류 페이지> <Error-Code> 404 </error-code> <위치>/exceptionnopage.jsp </location> </오류 페이지> <환영 파일리스트> <웰컴 파일> 환영 .jsp </welcome-file> </환영 파일리스트> </web-app>