2011-06-11 4 views
1

내 웹 사이트에는 사용자 등록이 없습니다. (회원은 오프라인 데이터베이스에서 가져 왔고) 로그인 할 수있는 영역에는 매우 중요한 정보가 없습니다.'나를 기억해'는 Super Simple CodeIgniter Auth

그래서 Remember me 기능으로 기본 로그인을 원합니다.

DB에 대한 입력을 확인한 후 세션에 user_id, name, email을 저장하려고합니다.

• 나를 기억하기 위해 값이 user_id:randomcode 인 쿠키를 저장합니다. 임의의 코드는 로그인시 생성되어 사용자 레코드의 필드에 저장됩니다.

충분히 안전합니까? 또는 너무 복잡하게되지 않으면 어떻게 개선 될 수 있을까요?

답변

2

user_id:randomcode을 한 번만 사용하고 이전 버전을 사용할 때는 새 값을 생성해야합니다. Persistent Login Cookie Best Practice을 읽으십시오.

+0

세션의 경우 각 페이지에서'if (isset ('user_id')))'를 확인하기 만하면됩니다. 또는 DB에 일치하는 사용자가 있는지 실제로 확인해야합니다 (모든 페이지로드를 확인하십시오).) – gio

+0

@gio : 세션 데이터가 클라이언트가 아닌 서버에 저장되어 있기 때문에 괜찮다고 생각합니다. – Jonas

+0

그리고 php의 uniqid() 함수를 사용하여 인증 코드를 생성하는 것이 좋습니까? – gio