나는 세션 메모리 저장소를 사용하여 인증을 처리하는 express에 내장 된 매우 간단한 node.js 응용 프로그램을 보유하고 있습니다. 기본적으로 사용자에 의해 기록 :SPA 및 node.js 서버에 대한 인증
app.post('/sessions', function(req, res) {
// check username/password and if valid set authenticated to true
if (authenticated){
req.session.user = req.body.username;
} ...
});
이어서 세션 해당 사용자 속성이 설정되어 있는지 확인하는 requiresLogin 미들웨어 함수가 호출되는 브라우저마다 호출된다.
이제 앱을 기본적으로 브라우저에서 사용되거나 사용되지 않을 수도있는 서비스를 제공하도록 전환 중입니다. 따라서 쿠키/세션을 사용하는 대신 시스템을 변경하여 사용자가/getToken (/ sessions 대신에) 사용자의 계정과 연관된 일시적인 임의의 토큰을 반환합니다.이 토큰은 일정 기간 동안 서비스에 액세스 할 수 있습니다. 서비스를 사용하면 각 호출에 유효한 토큰이 포함되어야합니다. (토큰을 얻기 위해 호출 한 후에 클라이언트 컴퓨터의 메모리에 암호를 저장할 필요가 없도록 사용자 이름/암호를 매번 전달하는 것보다이 방법이 좋을 것이라고 가정합니다.)
그런 시스템은 기본적으로 위의 현재 시스템만큼 안전하거나 이것을 처리 할 훨씬 더 표준/안전한 방법이 있습니까? 이런 식으로 처리하는 표준 방법은 무엇입니까?
도움을 주셔서 감사합니다.
감사합니다. 매우 흥미로운 기사였습니다! –