2011-01-18 2 views
4

동일한 최상위 도메인을 공유하는 Symfony 웹 사이트에 대해 단일 인증 방법을 공유하고 싶습니다. 모든 하위 도메인에 유효한 쿠키를 사용하고 세션 데이터를 유지하기 위해 sfPDOSessionStorage를 사용합니다. 난 (프로덕션 서버에서 Symfony Session 데이터가 암호화되는 이유는 무엇입니까?

이 메커니즘 내 개발 시스템에서 내 동료의 컴퓨터에
all: 
    storage: 
    class: sfPDOSessionStorage 
    param: 
     database: doctrine 
     db_table: sessions 
     session_name: myauth 
     db_id_col: id 
     db_data_col: sess_data 
     db_time_col: time 
     session_cookie_domain: ".mydomain.net" 
     session_cookie_lifetime: 86400 
     session_cookie_path:/

가 잘 작동하지만 서버에서하지 않습니다 :

factories.yml이 두 프로젝트에 다음과 같이 설정 하위 도메인을 전환 할 때 자격 증명을 요청했습니다.) 두 환경에서 볼 수있는 유일한 차이점은 데이터가 저장된 형식입니다. 데이터는 암호화 된 서버에서 암호화 된 것으로 보이지만 내 컴퓨터에는 일반 텍스트로 나타납니다. 내가 예를 게시 할 수 있도록 민감한 데이터는 여기에 없습니다 :

데브 환경 sess_data :

symfony/user/sfUser/lastRequest|i:1295349567;symfony/user/sfUser/authenticated|b:0;symfony/user/sfUser/credentials|a:0:{}symfony/user/sfUser/attributes|a:1:{s:30:"symfony/user/sfUser/attributes";a:1:{s:7:"referer";s:0:"";}}symfony/user/sfUser/culture|s:2:"fr"; 

생산 서버 sess_data :

BB7HBTsQg75NNGvb9Z8sexldqbS79YzDgrztQzSFhsUpEk2EeCOtKw8FQbm31vLIRyr3ZP_klwZFXywnkdem27naIWjIVBP_WwpwNRg4IMj1J0fIfxJN_UOw2RbCWh91L5ryCD_7_ynN2UtxfuJwUWnxoGuUvqD8YQxNdczQipmktPVFk1mVfKE1-BsrdHHLIXH_gi44-Bos3f-EshE5skuQpachnY1FkgvvvOuXEj7zxPflgA3xtGoqJxkDijT-uKnQCH4TrimhvkIRGCt0oVuOdsAJzuWW6ijgPCD3X767mSIzm_lQmJoSGxDB7fAgFihB7Ljoq0tsysC62BqTYFB6dTnuZoj3KON8lXlyNJZVyLgTWZ3EYoObtc8jCKYNDonSjEqzTvwg4NJRVoB5ePx61iTqbDd9qFlkryzj9J8. 

내가 암호화 유형을 사용하는 단서 없어 데이터베이스에 정보를 저장하는 것이 아니라 이것이 내 문제의 근원인지 확신 할 수 없지만 이것이 유일한 차이점이므로 다른 설명은 보이지 않습니다. (PHP와 MySQL 버전은 동일하고, 우분투 10.10과 데비안 스퀴즈 서버 측).

+0

세션 데이터는 단순히 base64로 인코딩 된 것으로 보입니다. 디코딩 한 결과는 실제로 암호화 된 문자열입니다. AES 또는 다른 양방향 암호화 방법을 사용 중일 수 있습니다. 두 서버의 차이점을 알 수 없습니다. 보안 플러그인이 설치되어 있습니까? – Jestep

답변

3

프로덕션 서버에 세션의 데이터를 암호화하는 모듈이 설치되어 있다고 생각합니다.

예를 들어, 수호신 패치는 PHP에 이러한 기능을 추가 : http://www.hardened-php.net/suhosin/configuration.html

그것은 php.ini의suhosin.session.encrypt 구성 옵션에 의해 활성화됩니다.

+1

이것은 그 것이다! 나는 php5-suhosin을 제거하고 공유 인증을 다시 시도했다. 많은 감사 :) –

관련 문제