2017-01-11 1 views
1

로그인 요청에 대한 적절한 HTTP 상태 코드를 찾고 있었지만 찾을 수 없음을 발견했습니다.실패한 로그인 요청에 적합한 HTTP 상태 코드는 무엇입니까? (또는 gmail/fb이 새 페이지로 응답하는 이유는 무엇입니까?)

그런 다음 GMail과 Facebook이 실패로 인해 새로운 페이지로 응답한다는 것을 알았습니다.

나는 두 가지 질문이 있습니다. - 실패한 로그인에 대한 적절한 HTTP 상태 코드가 있습니까? - Google과 FB 모두 어떤 종류의 오류 대신 새로운 웹 페이지로 응답하는 보안상의 이유가 있습니까?

+0

로그인 요청은 무엇입니까? Facebook.com에 갈 때? – WizKid

+0

사용자가 잘못된 자격 증명을 입력하면이를 알리고 다시 시도 할 기회가 주어집니다. _ 당신이 "새 페이지"라고 부르는 것을 제공하지 않으면 어떻게 가능합니까? // 예, 아마도 403 Forbidden과 같은 상태 코드 또는 적절할 수있는 다른 코드를 제공 할 수 있습니다. [...] – CBroe

+0

[...] 그러나 잠재적 인 단점 (일부 브라우저는 상태가 오류를 나타낼 때 반환 된 HTML 코드를 표시하지 않을 수도 있음)가 가능한 이점보다 중요 할 수 있습니다 (실제로이 경우에는 없지만, d say - 로그인 흐름은 실제 인간 사용자에 의해서만 사용되도록되어 있고 "올바른"HTTP 응답 코드가 중요한 봇이나 클라이언트는 아닙니다. – CBroe

답변

0

는 HTTP 기반 인증 방법을 위해 IETF 사양은 아래와 같다 :

"A 401 (Unauthorized) 응답 메시지는 도전 WWW 인증 헤더를 포함하는 사용자 에이전트의 권한으로 원 서버에 의해 사용되는 요청 된 리소스에 적용 할 수있는 하나 이상의 챌린지 을 포함하는 " IETF

Google과 Facebook은 표준 HTTP 인증이 아닌 OpenAuth와 같은 것을 사용할 가능성이 높습니다. OpenAuth은 리디렉션 기반 인증을 사용합니다. 또한 폼 기반 인증은 사용중인 응용 프로그램 기술에 의해 구현되며 리디렉션을 포함 할 수 있습니다.

간단히 말해서 순수 HTTP 인증 (기본, 다이제스트)의 경우 서버는 401 또는 407을 반환해야합니다. 그러나 다른 유형의 인증 메커니즘의 경우 리디렉션이 사용될 수 있습니다.

내가 포함 된 링크를 탐색하십시오. 깊이있는 정보를 제공합니다.

관련 문제