1. 개요

이 사용방법(예제)에서는 Postman 을 사용하여 기본 인증으로 보호되는 Endpoints을 테스트하는 방법을 알아봅니다.

"Authorization" 탭을 사용하여 원시 자격 증명을 기반으로 헤더를 생성하는 방법을 살펴보겠습니다 . 그런 다음 수동으로 수행하는 방법을 배웁니다. 마지막으로 Postman Interceptor의 작동 방식과 유용성을 알아보겠습니다.

2. 기본 인증

기본 인증은 특수 헤더를 통해 HTTP 요청을 보호하는 방법입니다 .

Authorization: Basic <credentials>

자격 증명 토큰을 생성하려면 세미콜론 문자로 연결된 사용자 이름과 암호를 작성해야 합니다. 그런 다음 결과 문자열을 Base64로 인코딩해야 합니다.

사용자 이름이 " admin "이고 비밀번호가 " baeldung " 이라고 가정해 봅시다 . 먼저 " admin:baeldung " 이 될 자격 증명 문자열을 생성합니다 . 그런 다음 Base64로 인코딩하고 " Basic " 키워드를 추가하고 헤더 값으로 설정합니다.

Authorization: Basic YWRtaW46YmFlbGR1bmc=

3. 인증 탭

먼저 기본 인증 Security 엔드포인트에 GET 요청을 보내고 응답에 대해 승인되지 않은 상태를 기대해 보겠습니다.

 

우편 배달부 무단

이제 자격 증명을 추가해 보겠습니다. 이렇게 하려면 " 인증 " 탭 으로 이동 하여 인증 유형으로 " 기본 인증 "을 선택하기만 하면 됩니다 . 그런 다음 사용자 이름과 비밀번호를 입력하면 모든 설정이 완료됩니다.

 

우편 배달부 인증 탭 1

결과적으로 요청이 승인되었고 응답 코드가 200임을 알 수 있습니다. 또한 " code " 링크를 클릭하면 승인 헤더가 요청에 어떻게 추가되었는지 확인할 수 있습니다.

GET /postman-test HTTP/1.1
Host: localhost:8080
Authorization: Basic YWRtaW46YmFlbGR1bmc=
Cache-Control: no-cache
Postman-Token: 6ad07f7c-4846-9c3f-2a3e-b24e8d2273ad

4. 수동으로 헤더 추가

Postman을 사용하면 헤더를 수동으로 추가할 수 있습니다. 결과적으로 자격 증명 토큰이 이미 있는 경우 인증 헤더를 직접 추가할 수 있습니다 .

" 헤더 " 탭 에서 이 작업을 수행할 수 있습니다 . 먼저 " Authorization "을 키로 설정합니다. 그런 다음 자격 증명 토큰을 추가합니다.

 

우편 배달부 무단 2

HTTP 요청을 검사하면 이전 요청과 다른 점이 없음을 알 수 있습니다.

5. 우편 배달부 인터셉터

Postman Interceptor는 Postman 애플리케이션을 브라우저 세션에 바인딩할 수 있게 해주는 Chrome 확장 프로그램입니다. 즉, Postman이 브라우저에 로그인한 사용자를 대신하여 요청을 실행할 수 있습니다.

먼저 Chrome 확장 프로그램 을 다운로드하여 설치해야 합니다 . 그런 다음 위성 아이콘을 클릭하여 Postman 애플리케이션에서 인터셉터를 활성화합니다.

 

인터셉터 1

이제 Postman 애플리케이션이 브라우저 세션과 연결됩니다. 웹을 탐색하면 Postman의 " 히스토리 " 탭 에서 모든 요청을 볼 수 있습니다 . 그러나 지금 GET 요청을 실행하려고 하면 아직 로그인하지 않았기 때문에 여전히 401 Unauthorized 응답을 받게 됩니다.

브라우저를 사용하여 기본 인증 Security 페이지로 이동해 보겠습니다.

 

인터셉터 2

브라우저 팝업을 사용하여 로그인한 후 Postman으로 돌아가 요청을 다시 실행할 수 있습니다. 이번에는 요청이 승인됩니다.

6. 결론

이 기사에서는 기본 인증이 작동하는 방식을 알아보고 Postman으로 Security 엔드포인트를 테스트하는 다양한 방법을 살펴보았습니다.

Authorization 헤더를 수동으로 추가하는 방법과 Postman을 사용하여 원시 자격 증명을 기반으로 헤더를 생성하는 방법을 살펴보았습니다 . 마지막으로 Postman Interceptor에 대해 배웠고 이를 사용하여 브라우저에서 로그인한 사용자를 대신하여 요청을 보낼 수 있음을 발견했습니다.

항상 그렇듯이 소스 코드와 Postman 컬렉션은 GitHub에서 사용할 수 있습니다 .

Generic footer banner