복붙노트

[RUBY-ON-RAILS] 세션 현재의 관행을 레일

RUBY-ON-RAILS

세션 현재의 관행을 레일

누구나 레일 및 세션에 대한 "모범 사례"조언을? 레일 3의 기본 세션 유형의 CookieStore, 바로 아직도? 나는 잠시 동안 SqlSessionStore을 사용하고는 잘 작동하지만 난의 CookieStore에 찬성하여 그에서 멀리 이동할 수 있습니다.

심지어 소금에 절인 정보와 함께, 여전히 민감한 정보를 원하시면의 CookieStore를 사용하는 것은 좋지 않습니다 또는 더 나은 DB에 저장된다?

해결법

  1. ==============================

    1.기밀 정보를 저장하는 데 사용해서는 안 대신 쿠키 기반 기본의 세션에 대한 데이터베이스를 사용하여

    기밀 정보를 저장하는 데 사용해서는 안 대신 쿠키 기반 기본의 세션에 대한 데이터베이스를 사용하여

    와 세션 테이블 만들기

    rake db:sessions:create
    

    마이그레이션을 실행

    rake db:migrate
    

    확실히 당신은 너무 당신의 세션을 관리하는 액티브를 사용하여 레일을 말할 확인합니다.

    설정 / 초기화 / session_store.rb :

    Rails.application.config.session_store :active_record_store
    

    설정 / environment.rb에 :

    config.action_controller.session_store = :active_record_store
    
  2. ==============================

    2.레일 4 년의 CookieStore 쿠키는 암호화 기본적으로 로그인 :

    레일 4 년의 CookieStore 쿠키는 암호화 기본적으로 로그인 :

    이 답변은 오래된 레일 4. 액티브 레코드와 관련하여 지금 세션 저장소는 사용되지 않으며 레일에서 제거, 그래서 다음은있다 발전기는 더 이상 작동하지를 않습니다 :

    이것은이 질문에 대해 지적했다. 활성 기록하는 이유 세션 저장소 사용되지 않습니다은이 읽기 때문에 / 인 데이터베이스에없는 기록 당신이 당신의 응용 프로그램에 액세스하는 사용자의 수가 많은 경우와 같이 확장 성 이 블로그 게시물에 명시된 :

    여전히 액티브 레코드 세션 저장소를 사용하려는 경우, 그것은 여전히 ​​사용할 수 보석으로.

    레일 세션에 루비에 대한 더 많은 전류를 모범 사례를 들어, 나는 당신 것이 바람직합니다 루비 온 레일즈 보안 가이드의 최신 버전을 확인하십시오.

  3. ==============================

    3.난 아무것도는 모든 플랫폼에서 누군가가 쿠키 기반 세션을 처리하는 방법의 변경이 믿지 않는다. 서버의 제어 (쿠키, 양식 게시물 등) 웹 개발의 일반적인 원칙 그게 전부 넘어 통과 아무것도 의심해야합니다.

    난 아무것도는 모든 플랫폼에서 누군가가 쿠키 기반 세션을 처리하는 방법의 변경이 믿지 않는다. 서버의 제어 (쿠키, 양식 게시물 등) 웹 개발의 일반적인 원칙 그게 전부 넘어 통과 아무것도 의심해야합니다.

    아무것도 그 전면에 변경된 경우까지 암호화, 나는 모른다.

    뭔가 쿠키의 저장이 데이터는 데이터베이스 저장소는 서버의 ID와 데이터의 삶을 전송로 모든 요청에 ​​와이어에 전송됩니다 데이터의 양을 제한하고 잡았다입니다 함께 염두하기 .

  4. ==============================

    4.FWIW는 3.1가 실행 제안 레일

    FWIW는 3.1가 실행 제안 레일

    rails generate session_migration
    

    그러나이 동일한 마이그레이션 등을 생성

    rake db:sessions:create
    
  5. ==============================

    5.레일즈 기본값은 CookieStore에는 신속하고 사용 사례의 대부분을 커버해야 ME-에 꽤 좋은 것 같다. 물론 당신은 4킬로바이트로 제한하고 있으며 사용자의 데이터가 사용자에게 표시됩니다,하지만 당신은 저장소 개체 또는 세션에서 기밀 정보를하려는 경우 레일 방법은 정수 ID와 기본 문자열 values- 같은 것들에 대해서만 사용하는 세션이다 당신은 아마 잘못을하고 있어요.

    레일즈 기본값은 CookieStore에는 신속하고 사용 사례의 대부분을 커버해야 ME-에 꽤 좋은 것 같다. 물론 당신은 4킬로바이트로 제한하고 있으며 사용자의 데이터가 사용자에게 표시됩니다,하지만 당신은 저장소 개체 또는 세션에서 기밀 정보를하려는 경우 레일 방법은 정수 ID와 기본 문자열 values- 같은 것들에 대해서만 사용하는 세션이다 당신은 아마 잘못을하고 있어요.

  6. from https://stackoverflow.com/questions/2588241/rails-sessions-current-practices by cc-by-sa and MIT license