일반적으로 어떻게 구현되는지 궁금합니다. 항상 로그인 된 웹 사이트의 예로 StackOverflow, Facebook 및 Twitter가 있습니다. 세션이 만료되기 전에 세션 ID를 재생성해야하는 백그라운드 작업 (예 : 데이터베이스에 ID로 세션 저장)을 가정해야합니다 (5 분 내에 만료되도록 쿠키를 말한 것처럼 보입니다). 따라서 매 5 분마다 세션을 다시 생성하여 로그인 상태를 유지하면서 보안을 유지해야합니다. 그러나 그 길을 떠나기 전에, 다른 사람들이 그것을 구현하는 방법인지 또는 더 표준적인 접근 방법이 있는지 알고 싶습니다.무한 세션없이 사용자를 항상 로그인 상태로 유지하는 방법
1
A
답변
0
내가 아는 한, 이것이 대부분의 웹 사이트에서 이루어지는 방식입니다.
쿠키가 액세스 토큰으로 설정되고 제한된 (물론 사용자가 '로그인 상태에서 확인'을 선택하는 경우)로 설정됩니다. 사용자가 해당 기간 내에 사이트를 방문하면 사용자가 로그인하고 현재 세션이 서버에서 생성됩니다. 그리고 쿠키 시간 간격은 미리 결정된 시간으로 다시 초기화됩니다.
예를 들면 다음과 같습니다. 웹 사이트 example.com에 로그인하고 확인란을 선택하여 로그인 상태를 유지합니다. 이제 로그인 버튼을 클릭하고 서버에 의해 확인되면 서버는 세션 (현재 세션의 경우) 및 쿠키 (이후 세션의 경우)를 말하며 제한 시간은 1 개월입니다. 이제 29 일을 말하고 example.com을 열면 자동으로 쿠키에 설정된 토큰을 사용하여 로그인합니다. 쿠키는 내 정보를 서버로 보내고 서버는 현재 세션을 생성합니다. 가장 중요한 것은 서버가 쿠키를 재설정하여 한 달 후에 만료됩니다. 30 일 후에 웹 사이트로 돌아 오면 쿠키로 인해 다시 로그인하게됩니다.
나는 당신에게 도움이되기를 바랍니다.