• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

HTTP basic 인증과 Form 인증의 차이

21.07.07 22:32 작성 조회수 906

0

HTTP basic 인증과 Form 인증 차이에 대해 자세히 알고 싶습니다.

session cookie 를 사용하냐 안 하냐로 봐도 될까요?

그리고 Form 인증도 아이디와 패스워드 문자열이 암호화 안되는 건 마찬가지 아닌지요?

교안에만 HTTP Basic 인증 내용이 있는데 추가로 강의 넣어 주실 수 없나요?

감사합니다.

답변 1

답변을 작성해보세요.

2

Http Basic 인증에 관련된 내용은 강의 교안을 참조해 주시기 바랍니다.

핵심적인 내용을 설명해 드리자면 Http Basic 인증은 말 그대로 Http 프로토콜에서 정의한 기본 인증입니다.

사용자가 인증을 받지 않은 상태로 요청을 하게 되면 서버에서는 사용자에게 401 Unauthorized 응답과 함께 WWW-Authenticate 헤더를 기술해서 인증을 어떤 방식으로 해야 하는지에 대한 설명을 동봉하여 보내게 됩니다.

그러면 사용자는 아이디와 패스워드를 Base64 로 인코딩한 문자열을 Authorization 헤더에 담아서 요청하게 됩니다.

그러면 서버에서 인증을 수락하게 되고 정상적인 상태 코드를 반환하게 됩니다.

이때 아이디와 패스워드는 암호화가 안되어 있기 때문에 보안에 취약하므로 ssl 통신같은 것을 반드시 고려해야 합니다.

form 인증도 아이디와 패스워드를 평문으로 전송하면 안되기 때문에 ssl 로 반드시 통신해야 합니다.

form 인증과의 차이점이라면 말씀하신대로 Http Basic 은 세션방식의 인증이 아닌 서버로부터 요청받은 인증방식대로 구성한 다음 헤더에 기술해서 서버로 보내는 방식을 취한다는 점입니다.

form 인증방식은 서버에 해당 사용자의 session 상태가 유효한지를 판단해서 인증처리를 한다는 점입니다.

추가 강의는 아직 정해진 것은 없으나 여건이 주어지는 대로 검토해 보도록 하겠습니다.

감사합니다.