2014-05-09 2 views
0

REST API 용 클라이언트를 작성할 때 "기억하기"기능을 구현하는 가장 좋은 방법이 무엇인지 궁금합니다.REST API에 대한 "Remember me"기능?

저는 브라우저 클라이언트 (angularjs에서 수행됨)와 서버 모두에 대한 책임이 있습니다.

내게 일어나는 한 가지 사실은 쿠키에 인증 토큰을 저장하고 응용 프로그램을 시작할 때 각도 토큰을 가져 와서 인증에 사용하려고 시도하는 것입니다. 이게 안전하지 않거나 나쁜 생각인지 잘 모르겠다. ...

이것에 대한 조언은 대단히 감사하겠습니다. 나는 꽤 많이 곤란하다.

+0

클라이언트 측에서 자격 증명을 저장하는 것은 REST API, 데이터베이스, HTTP API 등과 이야기하는 것과는 관계가 없습니다. 맞습니까? – jordan

답변

1

개인적으로 REST를 사용하여 나를 기억하지 못했지만 현재 REST 호출을 인증하기 위해 쿠키를 사용하고 있습니다. 기본적으로 쿠키는 서버에 전달한 해시 된 사용자 이름/암호를 저장합니다.

이 동일한 쿠키를 사용하여 일종의 remember me 기능을 구현할 수 없습니다. HTTPS 연결을 사용하여 쿠키를 만들고 보안 쿠키를 사용하는지 확인해야합니다. remember-me를 사용하여 인증 한 사용자가 암호 변경과 같은 작업을 수행 할 때 전체 사용자 이름/암호를 사용하여 다시 인증해야하는 일종의 제어 시스템을 구현하면 보안을 강화하는 데 도움이됩니다.

0

쿠키에 암호화 된 사용자 이름과 암호가 저장되어 있고이 값을 사용하고 유효한 자격 증명이 있는지 여부를 확인하는 리소스를 가질 수 있습니다. 또한 쿠키에는 만료 날짜가 있어야합니다. logged_in과 같은이 자원에 의해 리턴 된 다른 상태를 가질 수 있으며, 요구 사항에 따라 사용할 수 있습니다.