ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • WordPress REST API Authentication 플러그인 설치 및 기본설정
    Programming/Wordpress 2021. 11. 12. 18:43

     

     

    워드프레스의 REST API를 사용하기 위해서는 인증 플러그인 설치를 해야합니다.

    기본적으로 인증되지 않은 사용자가 허가되지 않은 기능에는 접근을 하면 안됩니다.

     

    개요

    WordPress REST API Authentication은 API 키 인증, JWT 토큰 인증, 기본 인증, OAuth 2.0 인증 또는 타사 OAuth 2.0/OIDC/파이어베이스 제공자의 토큰을 사용하여 무단 사용자를 위한 REST API 액세스를 보호하거나 WP REST API 엔드포인트를 공개 액세스로부터 보호합니다. 또한 모바일, 데스크톱 애플리케이션 등 다른 애플리케이션의 인증 방법을 사용하여 WordPress REST API에 로그인하여 등록할 수 있습니다.

    이 플러그인을 사용하여 쉽고 안전한 방법으로 api를 보호할 수 있습니다. 또한 JWT(JSON 웹 토큰) 인증을 확장하여 JWT 토큰을 기반으로 REST APIs 액세스를 검증합니다. JWT 유효성 검사에 성공하면 JWT 유효성 검사에 실패한 경우 요청된 리소스에 액세스할 수 없으며 요청된 리소스에 액세스할 수 없습니다.

     

    설치

     

    먼저 플러그인 메뉴에서 새로추가 버튼을 이용하여 플러그인 이름으로 검색을 합니다.

     

    검색어와 정확히 일치하는 플러그인을 설치후 활성화 합니다.

     

     

    플러그인이 활성화 되면 워드프레스 관리자 화면 좌측의 최상단 메뉴에서 [mini Orange API Authentication]을 찾을 수 있습니다. 워드프레스는 설치된 플러그인 별로 메뉴가 여기저기에 있어서 어디있는지 찾아야 하는 번거로움이 있지만 이 플러그인은 최상단 메뉴에 보여지네요.

     

     

    사전확인

    이 플러그인을 사용 하시려는 분들은 대부분 REST API를 직/간접적으로 사용 하려고 하시는 분들이 대부분 이실텐데,

    https://{도메인}/wp-json 경로를 먼저 확인 하셔야 합니다. 자신의 사이트에서 이 경로로 접속했을때 404에러가 나온다면 REST API를 사용할 준비가 되어 있지 않는 상태라고 보시면 됩니다. 

    플러그인을 설치후 어떤 방식으로 인증을 사용 할것인지 설정을 해주면 이 경로를 다시 접속하면 다른 화면이 나오게 됩니다. 그럼 기본 인증으로 설정을 진행 해볼게요.

     

     

    기본인증 설정

    Authentication Method 메뉴의 Basic Authentication을 클릭 합니다.

     

    이후 하단 메뉴중 Username : Password 라디오박스가 체크 되어있는것을 확인 하시고 Save Configuration 버튼을 클릭 합니다.

     

    설정이 완료 된다면 페이지 하단에 그림과 같은 내용들이 나오게 됩니다.

     

    https://{도메인}/wp-json 경로로 접속하기 이전에 워드프레스 관리자 설정의 고유주소(Permilink)를 변경 해야 합니다. 기본적으로 https://{도메인}/?p=123 형식으로 되어 있는 것을 다른 형태로 변경 해야지 작동이 됩니다. JSON 데이터가 보인다면 플러그인 설정을 성공 하였습니다.

     

    로그인세션이 없는 상태에서는 아래와 같이 표시가 됩니다.

    {
      "status": "error",
      "error": "Restricted",
      "error_description": "Sorry, you are not allowed to access REST API."
    }

     

     

    브라우저에 로그인세션이 존재하는 상태라면 아래와 같이 표시 됩니다.

    {
      "name": "사이트명",
      "description": "사이트설명",
      "url": "http://{도메인}",
      "home": "https://{도메인}",
      "gmt_offset": 9,
      "timezone_string": "Asia/Seoul",
      "namespaces": [
        "oembed/1.0",
        "wp/v2",
        "wp-site-health/v1"
      ],
      "authentication": {
        "application-passwords": {
          "endpoints": {
            "authorization": "https://{도메인}/wp-admin/authorize-application.php"
          }
        }
      }
      
      ...

     

    마치며..

    워드프레스의 REST API를 사용하기 위한 WordPress REST API Authentication 플러그인 설치 및 설정방법을 알아 보았습니다. 무료 버전에서는 ID와 Password기반의 기본 인증을 제공하지만 유료 버전에서는 OAuth 2.0, JWT 등 여러가지 인증 방법을 제공하고 있습니다.

     

     

    miniOrange wordpress plugin 유료버전의 금액은 $149에서 $449로 다양하지만 워드프레스를 일반적으로 사용하시는 경우는 기본인증 만으로도 충분히 REST API 기능을 활용 하실수 있을것 같습니다. 

     

     

    댓글

Designed by Tistory.