[Web] API 엔드포인트(EndPoint)란?

민지·2023년 8월 29일
0

Web

목록 보기
2/2

API EndPoint

: API(Application Programming Interface, 응용 프로그래밍 인터페이스)는 하나의 응용 프로그램이 다른 응용 프로그램에 서비스를 요청하는 방식이다. 개발자는 API를 통해 이미 존재하는 응용 프로그램 기능을 다시 빌드하지 않아도 된다. API 엔드포인트는 이러한 요청(API 호출)이 수행되는 곳이다.

API를 사용하려면 문서가 있어야 하는데, 문서에는 API가 수락할 요청의 유형, API가 수행할 수 있는 작업, 응답을 포맷하는 방법 및 엔드포인트가 무엇인지가 나와있다. 개발자는 API 문서를 검토하고 응용 프로그램을 빌드할 때 이 정보를 포함할 수 있다.


URL은 API 엔드포인트를 나타낸다.

API 엔드포인트 URL은 API 호출을 위한 전화번호와 같다.

API 서버는 하나 이상의 API 엔드포인트를 호스팅할 수 있다. 즉 API 서버가 해당 엔드포인트의 URL에 대한 호출을 수락하고 처리한다는 것을 의미한다. API 클라이언트는 또한 API 서버가 응답을 보낼 위치를 알 수 있도록 URL이 있어야 한다. 개발자는 응용 프로그램을 빌드할 때 이 URL을 설정한다.

URL에는 URL에 도달하는 데 사용되는 HTTP와 같은 응용 프로그램 계층 프로토콜이 항상 포함된다. 대부분의 웹 API는 HTTP를 사용하기 때문에 HTTP가 API 엔드포인트의 URL에 포함된다. 같은 URL에 대해서도 HTTP 메소드(GET, POST, PUT, DELETE)로 다른 응답을 할 수 있다.


API 엔드포인트와 클라이언트 인증 방법

제대로 설계된 API는 아무에게서나 API 호출을 수락하지 않는다. 이는 API 서버가 공격자로부터 악의적인 데이터를 수신하게 할 수 있고, API 사용에는 비용이 드는 경우가 많기 때문에 API 서버에서 API 요청이 유료 클라이언트에게서 오는 것인지 확인해야 한다.

이러한 이유로 API 서버는 호출을 보내는 API 클라이언트가 알려져 있고 신뢰할 수 있는지 확인해야 한다. 이것은 인증을 통해 수행된다.

인증은 신원을 확인하는 프로세스이다. 인간 사용자가 시스템에 인증하는 데 몇 가지 방법이 있는 것처럼, API 엔드포인트가 인증을 시행하는 데에는 네 가지 주요 방법이 있다.

  1. API 키: API 클라이언트는 키, 또는 그들과 API 서비스만 알고 있는 고유한 문자열을 할당받는다. API 클라이언트가 API 호출을 서버 엔드포인트에 보낼 때, 호출이 어디에서 왔는지 서버가 알 수 있도록 키를 포함시킨다.

  2. 기본 인증(사용자 이름 및 비밀번호): 키 접근과 마찬가지로 API 클라이언트는 API 서비스에 사용자 이름과 비밀번호를 설정하고 API 호출에 이러한 자격 증명을 포함한다.

  3. OAuth 토큰: API 서버는 클라이언트의 인증을 요구하는 대신, OAuth 프로토콜을 사용하여 신뢰할 수 있는 인증 서버에서 인증 토큰을 받을 수 있다.

  4. mTLS(Mutual TLS): TLS는 웹페이지를 로드할 때 클라이언트와 서버 간에 인증된 연결을 생성하는 프로토콜이다. 이는 또한 API 통합의 양쪽을 인증할 수 있다.




참고 _https://www.cloudflare.com/ko-kr/learning/security/api/what-is-api-endpoint/_
profile
개발일지

0개의 댓글