검색 결과 :

×

WordPress용 REST API 키 인증 방식 | 안전한 REST API

WordPress의 REST API 키 인증에는 다음이 포함됩니다. API 키 확인(Bearer 토큰) WordPress의 REST API에 접근하려면, 각 요청 시마다 API 키(베어러 토큰)를 사용한 인증이 필요합니다. 요청된 WordPress REST API 엔드포인트의 리소스에 대한 접근 권한은 API 키(베어러 토큰)의 유효성 검사를 통해 부여됩니다.
참고로 API 키는 다음을 위해 설계된 인증 프로토콜입니다. 개발자가 인증 키를 생성할 수 있도록 합니다. 이는 서버 측 프로세스, 모바일 애플리케이션, 데스크톱 컴퓨터와 같은 리소스에 사용될 수 있습니다.

워드프레스에서 API 키 인증 방식은 워드프레스 REST API의 보안을 보장하는 데 매우 중요한 수단입니다. API 키가 유출될 경우, 새로 생성하여 기존에 생성된 모든 키는 자동으로 만료됩니다. 새로 생성된 키는 워드프레스 API 키 인증에 사용됩니다. REST API를 제대로 보호하지 않으면 시스템에 무단 접근이 허용되어 데이터 유출과 같은 심각한 보안 위험이 발생할 수 있습니다.

이 가이드는 자세한 단계별 프로세스를 안내합니다. WordPress용 REST API 인증 설치 및 구성 REST API의 보안을 강화합니다.



WordPress용 REST API 인증

WordPress용 REST API 인증 플러그인은 WordPress REST API에 대한 무단 접근을 차단하여 보안을 강화합니다. 본 플러그인은 기본 인증, API 키 인증, OAuth 2.0 인증, JWT 인증 등 다양한 인증 방식을 제공합니다.

더 알아보기   

  • WordPress 인스턴스에 관리자로 로그인합니다.
  • 워드프레스로 이동 대시보드 -> 플러그인 그리고 클릭 새로운 추가.
  • 검색 REST API 인증 워드프레스 플러그인을 클릭하고 클릭하세요. 지금 설치.
  • 설치가 완료되면 클릭하세요. 활성화.


WordPress용 REST API 인증 키 방식

    1. API 키 인증은 WordPress의 게시물, 페이지 또는 기타 REST API 엔드포인트를 보호하는 안전장치 역할을 하여 무단 접근을 차단하고 사용자의 WordPress 로그인 자격 증명이나 클라이언트 ID 및 클라이언트 시크릿을 인증에 사용할 필요성을 없애줍니다. 이 WordPress용 API 키 생성기는 고유한 인증 키를 생성하며, 이 키를 사용하여 웹사이트의 다양한 WordPress REST API를 인증할 수 있습니다.

    워드프레스에서 REST API 키 인증을 활용하는 것은 REST API를 API 키 인증으로 강화하는 가장 쉽고 널리 사용되는 방법 중 하나입니다. 이 방식을 통해 워드프레스 웹사이트의 REST API 보안을 향상시킬 수 있습니다.


    2. 안드로이드와 iOS용 블로그 애플리케이션을 개발했고, 모든 블로그 게시물을 워드프레스에 게시했다고 가정해 보겠습니다. 하지만 워드프레스의 REST API를 통해 게시물/블로그를 가져오되, 공개적으로는 접근할 수 없도록 하고 싶습니다. 이러한 경우, GET 요청을 보호하고 엔드포인트의 보안을 확보하기 위해 워드프레스 REST API 키 인증을 구현하는 것이 좋습니다.


이 플러그인은 워드프레스의 REST API를 인증하는 데 사용할 수 있는 두 가지 유형의 API 키/보안 토큰을 제공합니다.


    I. 유니버설 API 키 - 유니버설 API 키는 HTTP GET 메서드를 사용하는 REST API를 인증하는 데 가장 적합하며, WordPress 사용자 권한이 필요하지 않습니다.


    참고: 이 키는 사용자 권한과 관련이 없으며 WordPress에서 사용자 권한을 요구하는 API에 접근하는 데 사용할 수 없습니다. "예: 일반적인 WordPress 게시물, 댓글 등을 가져오는 GET API만 사용하려는 경우"


    II. 사용자별 API 키 - 사용자 기반 API는 GET, POST, PUT, DELETE와 같은 HTTP 메서드를 사용하는 REST API를 인증하는 데 가장 적합하며, 특히 사용자 권한이 필요한 작업을 수행하려는 경우에 유용합니다.


    예시 - 사용자 권한(WP 역할)에 따라 WordPress 게시물을 가져오거나, 사용자 데이터를 가져오거나, 새 사용자 또는 새 게시물을 생성하는 등의 작업을 수행하려는 경우.





    WordPress용 REST API 인증 키 방식
  • 플러그인에서 API 인증 탭 구성 그리고 클릭 API 키 인증 API 인증 방법으로.
  • 구성을 저장한 후, 범용 API 키 섹션 새 토큰 생성 옵션이 표시됩니다. 클릭하세요. 새 키 생성 이 키/토큰은 새 키/토큰을 생성하면 만료됩니다.
  • API 키(토큰)를 생성하면 해당 키를 사용하여 WordPress용 REST API 엔드포인트를 보호할 수 있습니다. (새로운 API 키는 언제든지 생성할 수 있으며, 기존에 생성된 모든 키는 자동으로 만료됩니다.)
  • 아래 단계에 나와 있는 것처럼, REST API 요청을 통해 워드프레스 사이트를 방문할 때 API 키를 베어러 토큰 형태로 Authorization 헤더에 전달해야 합니다.
  • 이 토큰을 가지고 있는 사용자는 아래와 같이 REST API에 접근할 수 있습니다.
  • 
      Request: GET https://<domain-name>/wp-json/wp/v2/posts
      Header:Authorization: Bearer <token>
    Sample request: GET https://<domain-name>/wp-json/wp/v2/posts Header:Authorization: Bearer kGUfhhzXZuWisofgnkAsuHGDyfw7gfhg5s
    
      Sample curl Request Format-
      curl -H "Authorization:Bearer <token-value>"
      -X GET http://<wp_base_url>/wp-json/wp/v2/posts
      -H 'app-name:TheAppName'
      
  • 헤더에 대해서는 아래에서 설명합니다.
  •    I. Authorization : HTTP 권한 부여 요청 헤더에는 일반적으로 사용자 에이전트의 자격 증명 또는 토큰 유형과 토큰 값이 포함되어 서버와의 사용자 에이전트 인증에 사용됩니다. 이는 일반적으로 인증 시도 실패 후 서버가 상태 코드를 반환할 때 발생합니다. 401 권한 없음.

       II. Bearer <token-value>: The 교군꾼 토큰은 인증 서버에서 생성됩니다. 클라이언트 애플리케이션이 인증 서버에 요청을 보내면 서버는 해당 토큰을 인증하고 그에 따라 클라이언트 애플리케이션에 응답을 보냅니다.

  • 확인 개발자 문서 자세한 내용은.
  • 확인 오류 응답 API 키 인증을 위해.

 
  var client = new RestClient("http://<wp_base_url>/wp-json/wp/v2/posts ");
  client.Timeout = -1;
  var request = new RestRequest(Method.GET);
  request.AddHeader("Authorization", "Bearer <token-value>");
  request.AddHeader = ("app-name", "TheAppName");
  IRestResponse response = client.Execute(request);
  Console.WriteLine(response.Content);
  
 
  OkHttpClient client  = new OkHttpClient().newBuilder().build();
  Request request  = new Request.Builder()
  .url("http://<wp_base_url>/wp-json/wp/v2/posts ")
  .method("GET", null)
  .addHeader = ("Authorization", "Bearer <token-value>");
  .addHeader = ("app-name", "TheAppName");
  .build();
  Response responseclient.newCall(request).execute();
  
 
  var settings  = {
  "url": "http://<wp_base_url>/wp-json/wp/v2/posts ",
  "method": "GET",
  "timeout": 0,
  "headers": {
  "Authorization": "Bearer < access_token / id_token >",
  "app-name": "TheAppName"
  },        
  };
  
  $.ajax(settings).done(function (response)  {
  console.log(response);
  });
  
 
  <?php
   $curl = curl_init();
  curl_setopt_array($curl, array 
  (  
  CURLOPT_URL => 'http://%3Cwp_base_url%3E/wp-json/wp/v2/posts',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
  'Authorization: Bearer <token-value>'
  'app-name: TheAppName'
  ),
  
  ));          
  
  $response = curl_exec($curl);
  curl_close($curl);    
  echo $response;
  
 
  import http.client
  
  conn   = http.client.HTTPSConnection("<wp_base_url>")
  payload= "
  headers = {
  'Authorization': 'Bearer <token-value>'
  'app-name': 'TheAppName',
  }
  conn.request("GET", "/wp-json/wp/v2/posts ", payload, headers)
  res= conn.getresponse()    
  data = res.read()    
  print (data.decode("utf-8"))   
  

    Postman을 사용하여 REST API 요청을 수행하려면 아래 단계를 따르세요.

  • POSTMAN 컬렉션 내보내기를 다운로드하세요. 여기에서 확인하세요.
  • 아래와 같이 다운로드한 JSON 파일을 Postman 애플리케이션으로 가져옵니다.
  • WordPress 키 메서드용 REST API 인증, Postman에서 JSON 파일 가져오기
  • JSON 파일을 가져온 후 REST API 요청 아래 Collections 마지막 그림에 표시된 대로입니다. 이제 교체하십시오. 귀하의 WordPress 도메인을 http://<wp_base_url>/wp-json/wp/v2/posts API를 교체하고 플러그인에서 생성된 토큰 값이 헤더에 포함됩니다.
  • 예:
  • WordPress 키 방식 REST API 인증, Postman을 이용한 기본 URL 교체

1. 역할 기반 REST API 제한 사항:


이 기능은 사용자 역할에 따라 REST API 접근을 제한할 수 있도록 합니다. REST API를 통해 요청된 리소스에 접근할 수 있는 역할을 지정할 수 있습니다. 따라서 사용자가 REST API 요청을 시작하면 해당 사용자의 역할이 조회되고, 화이트리스트에 포함된 역할에 한해서만 리소스 접근이 허용됩니다.


그것을 구성하는 방법?

  • 먼저 플러그인 '고급 설정' 탭으로 이동하세요.
  • 역할 기반 제한 섹션에서는 기본적으로 모든 역할에 API 접근 권한이 부여됩니다. 하지만 접근을 제한하려는 역할 옆의 확인란을 선택하여 선택적으로 접근을 제한할 수 있습니다.
  • WordPress Postman 구현을 위한 REST API 기본 인증 방식
  • 위 스크린샷에서 '구독자' 역할 체크박스가 활성화되어 있습니다. 따라서 구독자 역할을 가진 사용자가 API 요청을 하면 요청된 리소스에 접근할 수 없게 됩니다.

참고: 역할 기반 제한 기능은 기본 인증(사용자 이름: 비밀번호), JWT 방식, OAuth 2.0(비밀번호 부여) 및 API 키 인증(사용자별 API 키)에 적용됩니다.


2. 커스텀 헤더


이 기능은 기본값인 'Authorization' 헤더 대신 사용자 지정 헤더를 선택할 수 있는 옵션을 제공합니다. 이를 통해 사용자 지정 이름의 헤더를 도입하여 보안을 강화할 수 있습니다. 만약 누군가가 'Authorization' 헤더를 포함하여 REST API 요청을 보내려고 하면, 해당 API에 접근할 수 없게 됩니다.


그것을 구성하는 방법?

  • 먼저 플러그인 '고급 설정' 탭으로 이동하세요.
  • 그런 다음 '맞춤 헤더' 해당 섹션에서 텍스트 상자를 편집하여 원하는 사용자 지정 이름을 입력할 수 있습니다.
  • WordPress Postman 구현을 위한 REST API 기본 인증 방식

3. REST API 제외


이 기능을 사용하면 REST API에 대한 화이트리스트를 생성하여 인증 없이 직접 액세스할 수 있습니다. 결과적으로 이 화이트리스트에 포함된 모든 REST API는 공개적으로 액세스할 수 있게 됩니다.


그것을 구성하는 방법?

  • 먼저 플러그인 '고급 설정' 탭으로 이동하세요.
  • 그런 다음 'REST API 제외'에서 공개적으로 액세스할 수 있도록 허용할 API를 지정된 형식으로 입력할 수 있습니다.
  • WordPress Postman 구현을 위한 REST API 기본 인증 방식
  • 예: 예를 들어 REST API '/wp-json/wp/v2/posts'를 제외하려면 텍스트 상자에 '/wp/v2/posts'를 입력해야 합니다.

4. 사용자별 API 키/토큰 생성


  • 이 기능은 API 키 메서드 내에서 사용할 수 있으며, 범용 키인 무작위로 생성된 토큰 대신 사용자별 정보를 기반으로 토큰을 생성할 수 있도록 합니다.
  • 유니버설 API 키/토큰을 사용할 경우, 사용자는 POST, PUT, DELETE와 같은 요청 메서드를 사용하는 WordPress의 특정 REST API에 접근하는 데 필요한 권한이 부족할 수 있습니다. 이러한 API는 사용자, 게시물, 페이지 등을 생성하는 작업과 관련되어 있으며, 이러한 작업을 수행하려면 특정 사용자 권한이나 역할이 필요합니다. 이러한 제한은 유니버설 키가 무작위로 생성되고 사용자별 세부 정보를 포함하지 않기 때문에 발생합니다.
  • 사용자 기반 API 키/토큰 기능은 사용자가 POST, PUT, DELETE와 같은 요청 메서드를 통해 WordPress의 REST API를 활용할 수 있도록 지원합니다. 이러한 메서드는 기능 사용에 사용자 자격 증명 또는 특정 역할을 요구합니다. 사용자 기반 키를 사용하여 WordPress에 대한 REST API 요청이 실행되면 시스템은 사용자의 역할을 검색하고, 사용자가 필요한 권한을 보유한 경우에만 접근을 허용합니다.
  • 예를 들면 : 관리자 및 편집자 권한을 가진 사용자만 게시물을 생성/편집/삭제할 수 있습니다.
  • 따라서 이 API에 게시물 생성/삭제/수정 요청을 보내면 API 응답으로 "이 작업을 수행할 권한이 없습니다."라는 메시지가 표시됩니다.
  • 이제 관리자 또는 편집자 역할을 가진 사용자를 위해 생성된 사용자 기반 토큰으로 요청이 이루어지면 해당 사용자만 이 API에 접근하여 API 호출을 통해 작업(생성/업데이트/삭제)을 수행할 수 있습니다.
  • 이 기능을 사용하는 방법:

  • 드롭다운에서 사용자를 선택하고 API 키 생성 버튼을 클릭합니다.
  • WordPress Postman 구현을 위한 REST API 기본 인증 방식
  • 화면에 팝업창이 뜨는데, 그냥 클릭하시면 됩니다 OK 토큰을 복사하는 버튼입니다.
  • WordPress Postman 구현을 위한 REST API 기본 인증 방식
  • 이제 이 토큰은 유니버설 키를 사용하여 API 요청을 하는 것처럼 API 요청과 함께 사용할 수 있습니다.

축하합니다! 이 가이드를 따라 WordPress REST API 키 인증을 성공적으로 구성했습니다. 이제 WordPress의 REST API 엔드포인트가 안전하게 보호되어 무단 접근으로부터 데이터가 안전하게 관리됩니다.




모든 기능을 갖춘 평가판 받기



 답변 감사합니다. 곧 다시 연락드리겠습니다.

문제가 발생했습니다. 문의사항을 다시 제출해 주세요.

API 키 인증을 사용하는 REST API

도움이 필요하신가요?

빠른 안내(이메일/미팅)를 원하시면 apisupport@xecurify.com 으로 문의해 주세요. 저희 팀이 고객님의 요구사항에 가장 적합한 솔루션/플랜을 선택하실 수 있도록 도와드리겠습니다.


ADFS_sso ×
안녕하세요!

도움이 필요하다? 우리는 바로 여기에 있습니다!

SUPPORT