응용 프로그램에서 AWS Cognito를 사용하여 사용자를 인증합니다. AWS는 JWT 토큰을 제공합니다. 내 질문은 세션 관리를 처리하기 위해 고속 세션을 사용해야하는지 아니면 AWS Cognito가 제공 한 JWT 토큰이 인증 된 사용자를 위해 세션 관리를 담당 할 것인가입니다.세션 관리를 위해 AWS Cognito를 통한 Express-Session 사용
답변
Cognito JWT 토큰을 사용하면 명시 적 세션 처리기가 필요하지 않습니다.
JWT 토큰을 클라이언트 측에 보내고 상태 지속성을 제공하는 웹 브라우저 (로컬 저장소, 세션 저장소 또는 쿠키)에 저장할 수 있습니다 (세션을 세션으로 작동하며 토큰 기간 동안 유효 함).).
모든 후속 요청에 대해 승인 헤더의 JWT를 고속 서버로 다시 보내야합니다.
통합 상태 관리를 구현할 수있는 모바일 앱과 같은 웹 브라우저 이외의 클라이언트에서 API를 사용하는 경우 세션보다 이점이 있습니다.
높은 보안이 필요한 응용 프로그램의 경우 LocalStorage에 ID 토큰을 저장할 위험을 최소화하려면 새로 고침 토큰을 사용하여 토큰 지속 시간을 작게하고 새 토큰을 생성하십시오.
참고 : Cognito Hosted UI를 사용하는 경우 새로 고침 토큰을 얻으려면 Cognito Autorization 코드 부여 흐름을 사용해야합니다.
JWT를 웹 브라우저에 노출시키고 세션에 사용하는 것은 세션 하이재킹을 위해 작업을 시작하기 때문에 위험합니다. 인증과 세션 관리가 섞이지 않도록하는 것이 좋습니다. – galaxy
@galaxy 이것은 주관적인 의견을 기본적으로 추가하는 끝이없는 주제입니다. 대답하기 전에 수표를 찍었습니다. 나는 내가 제공 한 답을 향하여 나아가고 반대하는 두 가지 다른 참고 문헌 (25 세 이상 읽기)을 지적 할 수있다. 앞으로 - https://auth0.com/blog/cookies-vs-tokens-definitive-guide/ 및 반대 - http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt- for-sessions /. 엔터프라이즈 클라이언트의 접근 방식을 평가해야하므로 보안 전문가와도상의했습니다. 필요한 경우 추가 정보를 공유 할 수 있습니다. 자세한 내용은 업데이트 된 답변을 확인하십시오. – Ashan
두 번째 링크는 실제로 주제에 대한 유일한 링크이며 인증 *과 세션 유지 관리의 차이점을 실제로 이해하는 사람이 작성했습니다. Auth0의 상황은 세션 관리와 인증 과정을 혼동스럽게 만드는 이상한 일이며 모든 문제는 그 혼란에서 기인합니다. 세션은 인증 여부에 상관없이 정의 된 상태 (실제로 엔티티가 인증 된 속성을 저장할 수 있음)를 넘겨 받도록되어 있습니다. – galaxy
- 1. 세션 관리를 위해 devise 사용
- 2. AWS Cognito를 사용하여 AWS API 게이트웨이 호출
- 3. NH3에서 세션 관리를 위해 NHibernate.Burrow
- 4. Aws Cognito를 사용하여 자동 로그인
- 5. AWS-Cognito를 Angular 2로 구현하기
- 6. Amazon Cognito를 통한 보안 REST API
- 7. AWS Cognito를 사용하여 사용자 로그인 유지
- 8. 거기에 서버 구성이 세션 관리를 위해 변경해야합니다.
- 9. 세션 관리를 위해 위험한 문제가 있습니까?
- 10. 로그인/AWS Cognito를 사용하여 사용자를 인증
- 11. aws cognito를 루프백과 함께 사용하는 방법
- 12. 작업 관리를 위해 GAE 데이터 저장소 사용
- 13. PDF 버전 관리를 위해 TFS 사용
- 14. AWS Cognito 세션 확인 및 재개 (iOS)
- 15. ZF2 : 세션 관리를 서비스에 주입하기
- 16. GWT - 얻기 세션 관리를 잘
- 17. 웹 사이트 개발을 위해 AWS CodeCommit 사용
- 18. httpSession에서 Java의 세션 관리를 위해 어떤 메소드를 사용합니까?
- 19. Google OAuth와 Cognito를 통합하십시오.
- 20. Express 사용 방법 세션
- 21. SAML을 사용하여 AWS Cognito를 원격 Shibboleth 설치에 어떻게 연결합니까?
- 22. AWS Cognito를 사용한 전자 메일 및 Google 인증
- 23. 금지됨 Amazon Cognito를 사용하여 AWS Iot에 액세스하는 데 예외가 발생했습니다.
- 24. AWS Cognito를 사용하는 iOS 앱의 설명적인 로그인 오류 메시지 받기
- 25. PHP 세션 관리를 디버그/추적하는 방법은 무엇입니까?
- 26. InProc 세션 관리를 사용하는 동시 ASP.NET 요청
- 27. CakePHP "유지 관리를 위해"페이지
- 28. 람다 함수와 AWS Cognito를 사용하여 사용자를 인증하는 방법은 무엇입니까?
- 29. AWS Cognito를 사용하여 Facebook Id로 인증하는 방법은 무엇입니까?
- 30. Microsoft 릴리스 관리를 통한 지속적인 제공
"인증 된 사용자의 세션 관리"란 무엇입니까? 후속 요청을 빠르게하기 위해 인증 된 ID를 임시 캐시 하시겠습니까? 또는 당신은 stateful jwt를 말하는 건가요? – Asanka