Web/WEB기본

HTTP "Basic" URL Param 인증 방식 쉽게하기 + wget에서 인증하기

saltdoll 2020. 1. 17. 09:24
반응형

일반적으로 HTTP 통신의 접근은 권한 인증을 하지 않고, 시용하는 방법을 많이 사용하고 있습니다.

 

그러나, RFC 7235 (규약 내용)에 보면, 

HTTP TTP 인증은 서버는 클라이언트(웹브라우저 등)의 요청간에 401(Unauthorized) 응답으로, 최소한 한 번의 인증 시도(WWW-Authenticate)를 통해서, 응답 헤더(HTTP header)에 무인증(Unauthorized) 권한 부여 정보를 제공합니다.

HTTP 통신 절차

 

 

 

클라이언트에서 서버로 HTTP 권한 인증 처리 과정에서,

서버에서는 Username과 Password를 요구할수 있게 처리가 가능하며,

이걸 Basic 인증라하며, 이 인증 정보가 맞는 사용자에게 정보를 보여주게 할 수 있습니다.

 

HTTP 인증창

 

여기서, 해당 정보를 wget과 같은 유틸리티로 웹 페이지 자료를 Local로 가져올때, 

해당 페이지에 HTTP Basic인증를 가지고 있다면,

URL에 Username과 Password를 담아서 쉽게 가져올 수 있는 방법이 있습니다.

일반적으로 해당 방법은 웹서버 접근 Access 로그에 Username과 Password가 기록에 남기에

보안에 취약성 문제로 요즘은 많이들 사용하지 않고는 있긴 합니다.

 

 

 

HTTP 인증이 실패한 경우

그래도, URL인증 방법으로 HTTP Basic 인증을 할 수 있다는 것은 큰 장점이긴합니다.

 

[ URL인증 방법 ]

// 일반적인 방식
http://Username:Password@example.com

// wget에서 가져오기
wget http://Username:Password@example.com/test.txt

URL 인증을 통한, 파일 가져오기

HTTP 인증 성공

 

 

 

HTTP 인증 관련 자세하 내용

https://developer.mozilla.org/ko/docs/Web/HTTP/Authentication

 

HTTP 인증

HTTP는 액세스 제어와 인증을 위한 프레임워크를 제공합니다. 가장 일반적인 인증 방식은 "Basic" 인증 방식입니다. 이 페이지에서는 일반적인 HTTP 인증 프레임워크를 소개하고 서버에 HTTP의 Basic 인증 방식으로 접근을 제한하는 것을 보여 줍니다.

developer.mozilla.org

 

반응형
도움이 되셨다면 하트모양의 "♡ 공감"을 눌러주시면 큰 격려가 됩니다.
(로그인하지 않으셔도 가능)