PHP에서 HttpOnly 쿠키 사용을 어떻게 설정합니까?
내 PHP apps
as 에서 쿠키를 어떻게 설정할 수 HttpOnly cookies
있습니까?
- 들어 쿠키 ,이 대답을 참조하십시오.
- 위해 PHP 자신의 세션 쿠키 (
PHPSESSID
기본적으로) 볼 리치의 대답 @
setcookie()
및 setrawcookie()
기능, 도입 httponly
하기 쉬운이 좋은을 다시 PHP 5.2.0의 어두운 시대에, 매개 변수를. 구문에 따라 7 번째 매개 변수를 true로 설정하기 만하면됩니다.
간결성을 위해 단순화 된 함수 구문
setcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
setrawcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
NULL
기본값으로 유지하려는 매개 변수를 입력하십시오 . secure
매개 변수를 설정해야하는지 고려할 수도 있습니다 .
이전의 하위 수준 header()
기능을 사용하는 것도 가능 합니다.
header( "Set-Cookie: name=value; httpOnly" );
Apache의 PHP 자체 세션 쿠키의 경우 :
이를 Apache 구성에 추가하거나.htaccess
<IfModule php5_module>
php_flag session.cookie_httponly on
</IfModule>
이전에 호출 된 경우 스크립트 내에서도 설정할 수 있습니다 session_start()
.
ini_set( 'session.cookie_httponly', 1 );
HttpOnly는 교차 사이트 스크립팅을 중지하지 않습니다. 대신 가능한 공격 하나를 무력화하고 현재는 IE에서만 수행합니다 (FireFox는 XmlHttpRequest에서 HttpOnly 쿠키를 노출하고 Safari는이를 전혀 존중하지 않습니다). 반드시 HttpOnly를 켜십시오. 단 한 시간의 출력 필터링과 퍼즈 테스트도 중단하지 마십시오.
PHP 세션 쿠키는 httponly
기본적으로 사용되지 않습니다 .
하기 위해서:
$sess_name = session_name();
if (session_start()) {
setcookie($sess_name, session_id(), null, '/', null, null, true);
}
여기에 몇 가지주의 사항이 있습니다.
- 당신은
session_name()
전에 전화 해야session_start()
- 이것은 또한 기본 경로를 '/'로 설정하는데, 이는 Opera에 필요하지만 PHP 세션 쿠키는 기본적으로 수행하지 않습니다.
<?php
//None HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, FALSE);
//HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
?>
Ilia의 설명 ... 5.2
해당 기사에서 언급했듯이 이전 버전의 PHP에서 헤더를 직접 설정할 수 있습니다.
header("Set-Cookie: hidden=value; httpOnly");
쿠키 설정 기능에서 지정할 수 있습니다 . PHP 설명서를 참조하십시오.
setcookie('Foo','Bar',0,'/', 'www.sample.com' , FALSE, TRUE);
헤더 파일에서 사용할 수 있습니다.
// setup session enviroment
ini_set('session.cookie_httponly',1);
ini_set('session.use_only_cookies',1);
이렇게하면 향후 모든 세션 쿠키가 httponly를 사용합니다.
- 업데이트되었습니다.
php_flag 명령의 올바른 구문은 다음과 같습니다.
php_flag session.cookie_httponly On
그리고 서버의 첫 번째 답변 만 쿠키를 설정하고 여기 (예 : "HttpOnly"지시문을 볼 수 있습니다. 따라서 테스트를 위해 모든 테스트 요청 후 브라우저에서 쿠키를 삭제하십시오.
참고 URL : https://stackoverflow.com/questions/36877/how-do-you-set-up-use-httponly-cookies-in-php
'Programing' 카테고리의 다른 글
애니메이션없이 xcode에서 segue 푸시 (0) | 2020.09.06 |
---|---|
파일을 Base64String으로 변환하고 다시 다시 변환 (0) | 2020.09.06 |
문자열 var [duplicate]로 사용자 지정 개체 속성 가져 오기 (0) | 2020.09.06 |
Javascript / jQuery : 다중 선택에서 값 설정 (선택) (0) | 2020.09.06 |
Swift에서 술어 사용 (0) | 2020.09.06 |