の検索結果 :

×

WordPress REST API | WP REST API とは何か、および WP REST API を保護する方法


REST APIとは何ですか?

RESTful API とも呼ばれる REST API は、ルール設定によって制約されるアプリケーション プログラミング インターフェイスを作成するためのスタイルですが、REST アーキテクチャ スタイルであり、REST エンドポイント間の通信を可能にします。 API 間の通信は、アクセスが安全で保護されるようなセキュリティ方式で保護する必要があります。 この記事では、REST API とそれに関連する用語、WordPress REST API をセキュリティで保護する方法を紹介します。 私たちも通過します miniOrange WordPress REST API 認証プラグイン そしてそれはWordPress REST APIを保護し安全にする機能です。

RESTとは何ですか?

REST または Representational State Transfer は、基本的に次のコレクションです。 JSONの 投稿やページなどに関する情報が含まれるエンドポイント (URL)。WordPress エンドポイントに GET リクエストを送信するだけで、WordPress インストールの外部から WordPress Web サイトのコンテンツを JSON 形式で読み取ることができます。 これにより、WordPress REST API を CRUD 操作に使用できるようになり、WordPress インストールの外部からサイト上のコンテンツを簡単に作成、読み取り、更新、削除できるようになります。 エンドポイントの保護については、記事の後半で説明します。

APIとは何ですか?

WordPress レスト API
API またはアプリケーション プログラミング インターフェイスを使用すると、XNUMX つのアプリケーションが相互に通信できるようになります。 ユーザーがサーバーにリクエストを送信するたび。 サーバーは、サーバーから取得した応答と呼ばれるリソースでそのリクエストに応答します。 API はサーバー上に作成され、ユーザーは API と通信することができます。 これにより、Web 上のコンピューター システムにインターフェイスが提供され、クライアントとサーバーが相互にやり取りし、限定的で明確に定義された方法でデータを共有することが容易になります。 API を使用すると、ユーザーは特定の「呼び出し」または「リクエスト」を行うことでデータを送受信できます。 JSON は、この通信に使用されるプログラミング言語です。 API を使用して、次の XNUMX つの異なるタイプのリクエストを行うことができます。
1. GET (取得) : この関数を使用すると、API 呼び出しを介してサーバーからデータを取得できます。
2. POST (作成) : この機能を使用すると、サーバーに新しい情報を書き込むことができます。
3. PUT (更新) : この機能を使用すると、サーバー上ですでに利用可能なコンテンツを更新できます。
4. DELETE (削除) : この機能を使用すると、サーバーからデータを削除できます。

日常的な API の例:

      1. 天気予報 : 天気 API は、天気予報の大規模なデータベースから天気情報を取得できるようにするアプリケーション プログラミング インターフェイスです。 これは API によって行われ、応答が返されます。

      2.Googleマップ: Google Maps API は、Google マップ データベースから地理的位置、緯度、経度などのデータを提供するのに役立ちます。

      3. XYZ を使用してログインします。 さまざまな Web サイトで、Google や Facebook などを使用したログインのオプションを見たことがあるかもしれません。ユーザー資格情報を使用する代わりに、アプリケーションは Google や Facebook などに API 呼び出しを行い、ユーザー認証を求めてユーザーを Web サイトにアクセスさせます。

WordPress REST APIとは何ですか?

WordPress Rest APIとは何ですか
WordPress REST API (Representational State Transfer Application Programming Interface) は、データを JSON (JavaScript Object Notation) オブジェクトとして送受信することによって、アプリケーション (Android、IOS、React、Angular など) が WordPress Web サイトと対話するためのインターフェイスを提供します。 ここでは、JavaScript を使用して WordPress REST API にアクセスし、WordPress データベースから Web ページにコンテンツを読み込みます。

例: 以下の REST エンドポイントは、WordPress のすべての投稿とページを取得するために使用されます。
  • /posts を取得 - https://www.example.com/wp-json/wp/v2/posts
  • GET /pages - https://www.example.com/wp-json/wp/v2/pages

WordPress REST API の重要な用語

WordPress REST API とそれが開発者にとって何を意味するのかを詳しく説明する前に、WP REST API に関連する基本的な用語について少し理解しておきましょう。

      1. ルート: これは、さまざまな HTTP メソッドにマッピングできる URL です。 例: /wp-json/

      2. エンドポイント: これは、個々の HTTP メソッドとルートの間の接続です。

      3. リクエスト: これは、現在のリクエストの情報を取得するために使用できる WP_REST_Request のインスタンスです。

      4. 応答: 要求されたデータを提供するか、実行/呼び出し中に何が問題だったかを示すエラーを表示します。

      5. スキーマ: これにより、REST API を介して送受信できるすべての入力パラメーターとプロパティを理解できます。

      6. コントローラークラス: ここで REST API リクエストを処理/管理します。

WordPress REST API はどのように役立つのですか?

  • WordPress REST API を使用すると、CRUD (作成、読み取り、更新、削除) 操作を WordPress の管理ダッシュボードのみに限定されるのではなく、どこからでも実行できるようになります。 これはクライアントとサーバー間の通信の軽量形式を提供し、データ交換のための優れたソリューションとなります。
  • iOS/Androidなどのネイティブアプリの作成に使用できます。 HTTP リクエストを作成し、Node、js、Express.js、Ruby、Python などの JSON を解釈できる言語であれば、任意の言語を使用できます。
  • これにより、モバイルアプリケーションを使用できるようになります。 WooCommerce イーコムのウェブサイト。 WordPress サイトとモバイル アプリケーションの間でユーザー、在庫、その他すべてのデータを同期できるようになります。 顧客はモバイル アプリケーションでより迅速にチェックアウトできるようになり、売上と利益が増加します。
  • WordPress REST API を使用すると、Woocommerce が提供する基本機能を超えて、e コマース (WooCommerce) Web サイトの機能を拡張できます。 外部 API (より多くの機能) に接続して、WooCommerce ストアでより多くの機能を安全に提供するのに役立ちます。

WordPress REST API が多くの機会への扉を開くことはわかっていますが、エンドポイントの保護とセキュリティを意識する必要があります。 当社の WordPress 用プラグインには、WordPress サイト (WooCommerce、Learndash、Zoho など) を保護するための多くのセキュリティ機能が備わっています。

WordPress REST API はどのように機能しますか?

を通じて利用可能な膨大な量のデータがあります WordPress REST API 投稿、ページ、コメントなど、それを要求するすべての人がアクセスできます。Cookie 認証は、データを保護するために WordPress に組み込まれている標準の認証方法です。 ダッシュボードにログインすると、Cookie が正しく設定されるため、プラグインとテーマの開発者はログイン ユーザーのみを必要とします。 ただし、REST API には、CSRF の問題を回避するための nonce と呼ばれる技術が含まれています。 これにより、他のサイトが明示的に意図せずにアクションの実行を強制されるのを防ぎます。 これには、API に対して少し特別な処理が必要です。 これは、WordPress サイトを保護するためのより安全な方法です。 REST API は、JSON (JavaScript Object Notation) 形式を使用して、HTTP (HyperText Transfer Protocol) エンドポイント経由で送信されます。 これらのエンドポイントは、投稿、ページ、その他の WordPress データ型、またはその他のカスタム作成されたエンドポイントを表す場合があります。 実際にデータベースにアクセスすることなく、クライアントとサーバーからのデータを操作するため、データベースは安全に保たれます。

WordPress REST API エンドポイントはデフォルトで開いているため、Web サイトの抜け穴となることがわかります。 これらの WordPress エンドポイントを通じて開始される可能性のあるデータ盗難やフィッシングとは別に、Wordpress が要求する人に提供するユーザー データには、より大きな脅威があります。

  • 例:https://example.com/wp-json/wp/v2/users/

これらのエンドポイントにアクセスしようとすると、WordPress REST API はデフォルトでユーザーに関連するすべてのデータを表示しますが、これは重大なセキュリティ侵害につながる可能性があります。

そのため、woocommerce などの WordPress サイトにオープンな WP エンドポイントがあると、スクレイパーやコンテンツ窃盗者は技術に精通しているため、間違いや不注意を利用して WordPress サイトから簡単に盗むことができます。 これは、名前やユーザー アドレスなどのユーザー データに悪意のある人々がアクセスできるため、潜在的なプライバシー リスクにつながる可能性があります。

また、WordPress REST API がユーザー名を取得した場所から Web サイトへのアクセスを許可しているため、悪意のある攻撃者がユーザー名を入手し、Web サイトにブルートフォース攻撃できる場合にもリスクが発生します。 安全を確保するために、Web サイト (WooCommerce、e ラーニングなど) の REST API を完全に無効にすることもできますが、WordPress Web サイトを他のエンドポイントと統合できるため、この機能を使用してビジネスや機会を繁栄させることができなくなります。 REST API を完全に禁止するのではなく、REST API を安全にする方法を見つけて、本来の用途に合わせて Wordpress REST API を使用する必要があります。

WordPress REST API のメリット

Wordpress REST API は、開発者にとって、多忙なデータ処理を簡単にする機能を探索して実装する機会の大きな扉を開きます。 データが JSON 形式であるため、アプリ/ソフトウェア/ウェブサイトが書かれている言語に関係なく、WordPress は WordPress REST API を使用して他のウェブサイトやソフトウェアとデータを交換できます。 プラグイン WordPress REST API Authentication で提供されているような安全なメソッドを導入して、エンドポイントを保護する必要があるだけです。 これは、WordPress を保護するのに役立ち、サイトの成長に活用できる機能をさらに追加します。

WordPress REST API の使用例

WordPress REST API にはさまざまな使用例があり、主な使用例のいくつかを以下に示します。

    Rest API経由のデータ同期
  • ユーザーがモバイル アプリケーション自体を使用してブログを表示したり、ブログを投稿したりできる、ブログ目的の Android および IOS アプリケーションを開発するとします。 この場合、モバイル アプリケーションからも投稿を作成、取得、更新、削除する必要があります。これは、WordPress の助けを借りて安全に簡単に行うことができます。
  • Woocommerce データ同期
  • WooCommerce プラグインと WordPress を使用して開発された e コマース サイトがあり、React フレームワークを使用してネイティブ アプリケーションを開発しようとしているとします。 ここで、ネイティブ アプリケーション用に別のデータベースを作成して、すべての製品、顧客、注文の詳細をアップロードする必要はありません。WordPress の場合、効率的でなく、適切に維持されないからです。 WordPress 認証情報によるユーザーのログイン機能やソーシャル ログインを使用しても、ネイティブ アプリケーションへのセキュリティと保護を備えた WooCommerce REST API に簡単にアクセスできます。 ソーシャル ログイン プラットフォームを使用してアプリケーションにログインしている場合は、簡単に認証して WooCommerce REST API にアクセスできます。

REST エンドポイントを保護する miniOrange WORDPRESS REST API 認証プラグイン。

WordPress-miniorange データは Rest API 経由で同期します

WordPress 用の WP REST API 認証プラグインをダウンロードすることをお勧めします。これにより、ユースケースや要件に応じて、業界標準のセキュリティとデータ保護を備えた WordPress REST API に簡単にアクセスできるようになります。

API キー認証、基本認証、JWT 認証、OAuth 2.0 認証、サードパーティ OAuth 2.0 プロバイダー認証方法などの多くの認証方法をサポートし、WordPress サイトを保護および安全に保護します。 これらは、以下のすべての HTTP メソッドとも互換性があります。

      1. GET (取得) : この関数を使用すると、API 呼び出しを介してサーバーからデータを取得できます。

      2. POST (作成) : この機能を使用すると、サーバーに新しい情報を書き込むことができます。

      3. PUT (更新) : この機能を使用すると、サーバー上ですでに利用可能なコンテンツを更新できます。

      4.削除(削除): この機能を使用すると、サーバーからデータを削除できます。

WordPress REST API 認証プラグインのインストール

WordPress サイトのセキュリティを確保するために、WordPress REST API プラグインをインストールして設定するには、複数の方法があります。

      1. プラグインの zip パッケージは、miniOrange マーケットプレイスから、または WordPress マーケットプレイスから直接ダウンロードできます。 zip をダウンロードしたら、ダウンロードしたフォルダーの内容をシステムの `/wp-content/plugins/` ディレクトリに抽出し、WordPress サイトの Wordpress プラグイン ページからプラグインをアクティベートするだけです。

      2. プラグインをインストールしてその恩恵を受けるもう XNUMX つの方法は、プラグイン ページの「新規追加」オプションからプラグインをダウンロードすることです。

      XNUMX つの簡単な手順のいずれかで、WooCommerce、Learndash などの Wordpress サイトを保護し、安全にすることができます。プラグインをセットアップするための詳細な説明とステップバイステップガイドについては、こちらをご覧ください。 こちらをご覧.

標準およびカスタム/サードパーティプラグインのRest APIエンドポイント:

WordPress は、WordPress Web サイトとの間でデータを取得するための標準 REST エンドポイントをいくつか提供しています。 これらのエンドポイントの一部は次のとおりです。

      1. 投稿

      2. ページ

      3. メディア

      4. ポストメタ

      5. コメント

      6. ユーザー

      7. ご利用規約

しかし、デフォルトの REST API エンドポイントを作成する必要がある場合、どうすればそれを実現できるのかという疑問が生じます。 セキュリティを確保した REST API を使用してデータベースからカスタム データを取得したい場合はどうすればよいでしょうか?

その場合、機能を処理するカスタム WordPress REST API を作成する必要があります。または、CUSTOM API for WP という名前の別のプラグインを使用してカスタム WordPress REST API を作成することもできます。 Learndash、Gravity Forms、WooCommerce、Google Merchant などの API に接続できるようになります。使用する API 名と HTTP メソッドを入力するだけです。 その後、データを取得するデータベース テーブルを選択する必要があります。 一行もコーディングせずに、列を選択して条件を作成して取得することもできます。

Wordpress でのあらゆる種類の API 統合/認証のカスタマイズ:

WordPress REST API またはカスタム API プラグインにいくつかのカスタマイズが必要だとお考えの場合は、お客様が妥協する必要がないように、ユースケースに応じてカスタマイズを提供していることをお知らせします。 REST API プラグインによるサービスとサポートをお楽しみください。

WordPress プラグインの WordPress REST API 認証方法

これらは、WordPress REST API プラグインで提供される認証方法です。 郵便配達員のサンプルの詳細を読んでよく理解するには、以下のリンクをクリックしてください。

  • 基本認証: これは、WordPress エンドポイントを保護および安全にするための基本的な認証方法であり、次の XNUMX つの方法でユーザーを認証できます。

    1. ユーザー名:パスワード :- このタイプの基本認証では、ユーザーをシステムに承認するには、ユーザー名やパスワードなどのユーザー資格情報が必要です。
    2. Client-ID:Client-Secret:- このタイプの基本認証では、クライアント資格情報は、base64 でエンコードされた形式または安全性の高い HMAC 暗号化の形式で、プラグインによって認可ヘッダー内に提供されます。

  • APIキー認証: このセキュリティ方法を使用すると、プラグインがリソースにアクセスするための API キーを生成するため、ユーザーの資格情報を明らかにすることなく WordPress エンドポイントを保護できます。この API キーは、プラグイン内で再生成したり、管理者の希望によって期限切れにしたりすることもできます。
  • JWT認証: このメソッドは、プラグインが発行した JWT トークンを使用し、REST API を保護する API Authenticator として機能します。 プラグイン自体は、有効な WordPress ユーザー資格情報を渡すことで、JWT トークンを非常に簡単に生成できる REST API エンドポイントを提供します。
  • OAuth 2.0 認証: これは、REST API を認証および保護するための最も安全な方法です。 サードパーティの ID プロバイダーがない場合は、WordPress REST API 認証が OAuth サーバー (プロバイダー) と API Authenticator の両方として機能し、REST API を保護します。

    1. パスワード付与:- この方法は、ユーザー固有のデータが必要な場合に使用されます。
    2. Client Credentials Grant :- このメソッドは、特定のユーザーを持たずに API 呼び出しを認証するために使用されます。

  • サードパーティプロバイダーの認証: このメソッドは、WordPress REST API の認証に使用できるアクセス トークン/ID トークンまたは JWT トークンを提供する外部 OAuth/OpenID Connect (アイデンティティ プロバイダー) をすでに持っている場合に使用され、プラグインはトークンを検証します。これらのトークン プロバイダーから直接、検証が成功した場合にのみ、API エンドポイントへのアクセスが許可されます。

どのセキュリティ方式をどこで使用するか?

  • 基本認証: ユーザーの wordpress ログイン資格情報またはプラグイン自体によって提供される client-id:client-secret を使用して WP REST API (投稿、ページ、その他の REST API など) を保護したい場合は、この方法を選択できます。 このメソッドは HTTPS またはセキュア ソケット レイヤで使用することをお勧めします。
  • APIキー認証: WP REST API (投稿、ページ、その他の REST API など) を認証されていないユーザーから保護したいが、ユーザーのログイン資格情報やクライアント ID、REST API を認証するためのシークレットを共有したくない場合は、API を使用できます。キー認証。ランダムな認証キーを生成します。 このキーを使用すると、サイト上の任意の REST API を認証できます。 この方法では、ユーザー権限が必要な API にアクセスして認証するためのユーザー固有の API キーを生成する機能も提供されます。生成されるキーは暗号化された形式であるため、セキュリティが侵害されることはなく、データ漏洩の可能性もありません。
  • JWT認証: JWT トークンを使用して REST API を保護することを検討しており、JWT トークンを発行するサードパーティのプロバイダー/アイデンティティ プロバイダーがない場合は、JWT 認証方法を選択する必要があります。 この場合、WordPress REST API 認証自体が JWT トークンを発行し、API Authenticator として機能して REST API を保護します。
  • OAuth2.0認証 (最も安全で最も推奨される): アクセス トークンまたは ID トークン (JWT トークン) を使用して REST API を保護しようとしており、同時にサードパーティのプロバイダー/アイデンティティ プロバイダーを持っていない場合は、次のようにする必要があります。 OAuth 2.0 認証方法を選択してください。 このシナリオでは、WordPress REST API 認証は OAuth サーバーと API Authenticator の両方として機能し、REST API を保護します。
  • サードパーティプロバイダーの認証: Azure、Amazon Cognito、KeyCloak、Okta、ADFS、Google、Facebook など、Firebase などの外部 OAuth プロバイダー/アイデンティティ プロバイダーを使用して WP REST API へのアクセスを保護/制限したい場合は、サードパーティ プロバイダーを選択する必要があります。認証方法。 ここでは、アイデンティティ プロバイダーが提供するイントロスペクション エンドポイント/ユーザー情報エンドポイントを使用してプラグインを構成するだけで、プロバイダー アプリケーションが提供するトークンを使用して API リクエストを認証できるようになります。

関連資料

推奨プラグイン

WordPress REST API 認証プラグインは、WordPress REST API への不正アクセスに対するセキュリティを提供します。 Basic 認証、API キー認証、OAuth 2.0 認証、JWT 認証などのさまざまな認証方法を提供します。

 5.9.2でテスト済み

このプラグインを使用すると、使いやすいグラフィカル インターフェイスやカスタム SQL クエリを使用して、データのフェッチ/変更/作成/削除を行うためのカスタム エンドポイント/REST ルートを作成できます。 また、このプラグインは、サードパーティのプラットフォームを使用して外部 API を WordPress サイトに統合する機能を提供します。

 5.9.2でテスト済み

ミニオレンジ画像  プラグインのデモをリクエストする


フル機能のトライアル版を入手



 ご返答ありがとうございます。 すぐにご連絡させていただきます。

何か問題が発生しました。 もう一度質問を送信してください

WordPress REST API | WP REST API とは何か、および WP REST API を保護する方法

お困りですか?

メールでお問い合わせください apisupport@xecurify.com お客様の要件に関する迅速なガイダンス(電子メール/会議経由)が必要です。当社のチームは、お客様の要件に応じて最適なソリューション/プランの選択をお手伝いします。

こんにちは!

助けが必要? 私たちはここにいます!

サポート
miniOrange サポートにお問い合わせください
成功

お問い合わせありがとうございます。

24 時間以内に当社からのご連絡がない場合は、お気軽にフォローアップ メールを送信してください。 info@xecurify.com