API 키

현재 Apigee Edge 문서가 표시되고 있습니다.
Apigee X 문서로 이동
정보

API 키 (Apigee Edge에서는 고객 키라고 함)는 클라이언트 앱이 API 프록시로 전달하는 문자열 값입니다. 이 키는 클라이언트 앱을 고유하게 식별합니다.

API 키 유효성 검사는 API에 구성할 수 있는 가장 간단한 앱 기반 보안 양식입니다. 클라이언트 앱이 요청과 함께 API 키를 제공하면 Apigee Edge에서 API 키가 요청 중인 리소스에 대해 승인된 상태인지 확인합니다. 내부적으로 프록시는 정책을 사용하여 API 키 신뢰성을 확인합니다.

이러한 단순성을 지원하려면 약간의 설정이 필요합니다. API 키를 지원하려면 다음을 수행해야 합니다.

  • API 키를 사용하여 보호하려는 API 프록시를 번들로 묶는 Apigee Edge API 제품을 만듭니다.
  • 인증할 앱의 클라이언트 앱 개발자를 나타내는 Apigee Edge 개발자 앱을 만듭니다.

    개발자 앱을 만들 때 개발자 앱에서 액세스할 수 있는 API 제품을 지정하고 API 키를 제공해야 합니다.

  • 프록시(API 제품에 포함된 프록시)에 정책을 추가하여 수신 API 키가 유효한지 확인합니다.

API 키를 요구하여 API 보호 튜토리얼에서 API 키를 사용하여 API 프록시에 대한 액세스를 제어하는 방법을 빠르게 알아볼 수 있습니다.

API 키 작동 방식

Apigee Edge에서는 API 키를 고객 키라고 합니다. 개발자 앱을 등록하면 Apigee Edge는 고객 키와 보안 비밀을 생성합니다. Apigee Edge는 향후 유효성 검사를 위해 고객 키를 저장합니다. 각 고객 키는 조직에서 고유합니다. 앱 개발자가 고객 키를 클라이언트 앱에 삽입합니다. 클라이언트 앱은 요청마다 소비자 키를 전달해야 합니다. API 서비스는 앱 요청을 허용하기 전에 고객 키를 확인합니다.

대략적인 단계

다음 단계에서는 Apigee Edge에서 API 키를 사용하는 방법을 설명합니다. 이러한 단계는 종종 API 키와 함께 사용되므로 OAuth 보안도 표시될 수 있습니다.

  1. API 키로 보호해야 하는 API 프록시가 포함된 API 제품을 만듭니다.
  2. 조직에 개발자 앱을 등록합니다. Apigee Edge가 작업을 수행하면 고객 키와 고객 비밀번호가 생성됩니다.
  3. 개발자 앱을 API 제품 최소 한 개 이상과 연결합니다. 이 제품은 키 승인을 통해 리소스 경로와 API 프록시를 연결하는 제품입니다.
  4. 런타임 시 클라이언트 앱에서 API에 요청을 실행하면 클라이언트 앱은 요청을 수행할 때 고객 키를 전송합니다. 실제로 고객 키는 명시적으로 전달되거나 OAuth 토큰을 통해 암시적으로 참조될 수 있습니다.
    • API가 API 키 확인을 사용하는 경우(예: VerifyAPIKey 정책 구현) 클라이언트 앱은 고객 키를 명시적으로 전달해야 합니다.
    • API가 OAuth 토큰 확인을 사용하는 경우(예: OAuthV2 정책 구현) 클라이언트 앱이 고객 키에서 파생된 토큰을 전달해야 합니다.
  5. VerifyAccessToken 작업으로 VerifyAPIKey 정책이나 OAuthV2 정책을 통해 API 프록시가 요청 사용자 인증 정보의 유효성을 검사합니다. API 프록시에 사용자 인증 정보 적용 정책을 포함하지 않으면 호출자가 성공적으로 API를 호출할 수 있습니다. 자세한 내용은 API 키 정책 인증을 참고하세요.

요청 사용자 인증 정보 확인

이 설명은 개요입니다. 자세한 내용과 코드 예는 API 키 검증 설정을 참고하세요.

  1. OAuth 토큰 확인을 사용하는 경우 확인을 위한 OAuth 정책을 구현했으며 클라이언트 앱이 OAuth 토큰을 전달했습니다.
    • Apigee Edge는 토큰이 만료되지 않았는지 확인한 후 토큰을 생성하는 데 사용된 고객 키를 찾습니다.
  2. API 키를 사용하는 경우 VerifyAPIKey 정책을 구현했으며 클라이언트 앱에서 고객 키를 전달했습니다.
    1. Apigee Edge가 소비자 키가 연결된 API 제품 목록을 확인합니다.
    2. Edge는 각 API 제품을 검사하여 현재 API 프록시가 API 제품에 포함되어 있는지, 현재 리소스 경로 (URL 경로)가 API 제품에 사용 설정되어 있는지 확인합니다.
    3. 또한 Edge는 고객 키가 만료 또는 취소되지 않았는지 확인하고 앱이 취소되지 않았는지 확인하며 개발자가 비활성 상태가 아닌지 확인합니다.
    4. 모든 사항이 true이면 즉, 토큰이 만료되지 않았고(해당되는 경우), 고객 키가 유효하고 승인되었고, 앱이 승인되었고, 개발자가 활성 상태이고, 제품에서 프록시가 제공되고, 제품에서 리소스를 사용할 수 있으면 사용자 인증 정보 확인이 성공한 것입니다.