2014-04-25 3 views
1

[질문] : 보안 쿠키의 속성을 TRUE로 설정하여 세션 쿠키를 보호하려고합니다. 그러나이 변경 후 응용 프로그램에서 세션을 만들 수 없습니다. 누구에게도 동일한 문제가 있습니까?세션 ID 보안 Weblogic의 쿠키가 엉망입니다. 세션 생성

이것은 실종입니다.하지만 불행히도이 문제를 해결할 수 없습니다. 어떤 도움이나 조언 정말 감사합니다 :

여기

는 weblogic.xml의 설정입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://www.bea.com/ns/weblogic/90" 
    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ....="http://www.bea.com/ns/weblogic/90 http://www.oracle.com/technology/weblogic/90/weblogic-web-app"> 

    <session-descriptor> 
      *<cookie-name>JSESSIONIDCA</cookie-name> 
      <cookie-path>/../...</cookie-path> 
      .. 
      <cookie-secure>true</cookie-secure> 
    </session-descriptor> 
    ... 
      <keep-generated>true</keep-generated> 
      <page-check-seconds>-1</page-check-seconds> 
      <print-nulls>false</print-nulls> 
      <verbose>true</verbose> 
    ... 
    <container-descriptor><servlet-reload-check>-1</servlet-reload-check> </container-descriptor> 

내가 사용 : HTTP를 세션 세션 = 요청을. get Session();

응용 프로그램은 웹 로직 10.3 및 스프링 MVC를 사용합니다. 감사합니다.

+0

쿠키 보안을 참조하십시오. –

답변

2

쿠키를 안전하게 만드는 것은 브라우저가 https를 통해서만 다시 전송한다는 것을 의미합니다. 따라서 쿠키가 브라우저에 설정된 경우 모든 요청은 첫 번째 요청 이후에 실패합니다. 웹 서버에 http/https가 섞여있는 경우 JSESSIONID 쿠키를 안전하게 만들어서는 안됩니다. Weblogic 콘솔의 기본값 인 Auth Cookie Enabled 플래그가 선택된 경우.

AuthCookieEnabled를 true로 설정하면 HTTPS 연결을 통해 인증 할 때 WebLogic Server 인스턴스가 _WL_AUTHCOOKIE_JSESSIONID라는 새로운 보안 쿠키 _WL_AUTHCOOKIE_JSESSIONID를 브라우저로 전송합니다. 보안 쿠키가 설정되면 브라우저는 쿠키가 브라우저에서 전송 된 경우에만 보안이 제한된 다른 HTTPS 리소스에 액세스 할 수 있습니다.

따라서 WebLogic Server는 JSESSIONID 쿠키와 _WL_AUTHCOOKIE_JSESSIONID 쿠키의 두 가지 쿠키를 사용합니다. 기본적으로 JSESSIONID 쿠키는 안전하지 않지만 _WL_AUTHCOOKIE_JSESSIONID 쿠키는 항상 안전합니다. 보안 쿠키는 암호화 된 통신 채널이 사용 중일 때만 전송됩니다. 표준 HTTPS 로그인 (HTTPS는 암호화 된 HTTP 연결)을 가정하면 브라우저는 두 쿠키를 모두 가져옵니다. 당신은 또한 적절한 SSL 구성 (내 생각)가 필요하므로

대한 추가 정보를 원하시면 만 https로 작동합니다 http://docs.oracle.com/cd/E23943_01/web.1111/e13711/thin_client.htm#autoId4