>일반적인 문제 >토큰 오류는 무엇을 의미하나요?

토큰 오류는 무엇을 의미하나요?

(*-*)浩
(*-*)浩원래의
2020-01-07 14:19:5149146검색

토큰 오류는 무엇을 의미하나요?

토큰 오류는 토큰 오류를 의미합니다.

토큰은 서버 측에서 생성됩니다. 프런트 엔드가 사용자 이름/비밀번호를 사용하여 서버에 인증을 요청하고 서버 인증이 성공하면 서버는 프런트 엔드에 토큰을 반환합니다. 프런트 엔드는 각 요청마다 귀하의 적법한 상태를 증명하기 위해 토큰을 가져올 수 있습니다. (추천 학습: Phpstorm)

어떤 문제를 해결할 수 있나요?

토큰은 애플리케이션에 의해 완전히 관리되므로 동일한 출처 정책을 피할 수 있습니다.

토큰은 CSRF 공격을 피할 수 있습니다(http://dwz.cn/7joLzx)

토큰은 상태 비저장이며 여러 서비스 간에 사용할 수 있습니다 공유

토큰은 서버 측에서 생성됩니다. 프런트 엔드가 사용자 이름/비밀번호를 사용하여 서버에 인증을 요청하고 서버 인증이 성공하면 서버는 프런트 엔드에 토큰을 반환합니다.

프런트 엔드에서는 법적 지위를 증명하기 위해 각 요청마다 토큰을 가져올 수 있습니다. 이 토큰이 서버측에서 유지되는 경우(예: 데이터베이스에 저장됨) 영구 ID 토큰입니다.

보안 관점이든 폐지 관점이든 토큰에는 유효 기간이 필요합니다.

그럼 적절한 유효기간은 어떻게 되나요?

시스템의 보안 요구에 따라 가능한 한 짧아야 한다고 말할 수 있지만 터무니없이 짧을 ​​수는 없습니다. 휴대폰의 자동 화면 꺼짐 시간이 자동으로 설정되어 있다면 상상해보세요. 아무런 조작 없이 10초 후에 화면이 꺼지면 다시 켜집니다. 비밀번호를 입력해야 한다면 제정신이 아니신가요?

안될 것 같다면 직접 해보고 설정 가능한 최단 시간으로 설정해서 일주일만 버티세요(이 시간에 적응하는 사람도 있을 가능성도 배제할 수 없습니다. 모두 휴대전화 제조업체도 사용자 경험 연구를 수행합니다.

그러면 새로운 문제가 발생합니다. 정상적인 작동 중에 사용자의 토큰이 만료되어 사용자가 다시 로그인해야 한다면... 사용자 경험이 매우 나쁘지 않을까요?

작업 과정에서 사용자가 토큰이 유효하지 않다고 느끼지 못하게 하는 문제를 해결하기 위한 한 가지 해결책은 토큰 상태를 서버 측에 저장하고 토큰 만료 시간이 매번 자동으로 새로 고쳐지는(연기) 것입니다. 사용자가 작동합니다 - 세션은 사용자를 로그인 상태로 유지합니다.

그러나 여전히 문제가 있습니다. 프론트엔드와 백엔드 분리 및 단일 페이지 앱의 경우 초당 많은 요청이 시작될 수 있으며 매번 만료 시간을 새로 고치면 매우 높은 비용이 발생합니다.

토큰 만료 시간이 데이터베이스나 파일에 유지되면 비용이 더욱 커집니다. 따라서 효율성을 높이고 소비를 줄이기 위해 토큰은 일반적으로 만료되면 캐시나 메모리에 저장됩니다.

위 내용은 토큰 오류는 무엇을 의미하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.