WordPress 用の REST API JWT 認証方法
概要
REST API の JWT 認証は、 WordPress の REST API エンドポイントを安全に保つためのシンプルな方法です。毎回ユーザー名とパスワードを送信する代わりに、WordPress の JWT 認証では、安全なトークンを使用してリクエストの発信者を確認します。これにより、承認されたユーザーまたはアプリのみが保護された REST API エンドポイントにアクセスできるようになります。JWT トークンはWordPress のユーザー認証情報を使用して生成され、高度に暗号化されているため、アクセスを損なうことなく強力なセキュリティが確保されます。
WordPress の REST API 認証

WordPress用REST API認証プラグインは、WordPressのREST APIへの不正アクセスからセキュリティを提供します。このプラグインは、基本認証、APIキー認証、OAuth 2.0認証、JWT認証など、複数の認証方法に対応しています。
もっと知るWordPressにおけるJWT認証とは何ですか?
REST API の JWT 認証は、 WordPress の REST API エンドポイントを安全に保つためのシンプルな方法です。毎回ユーザー名とパスワードを送信する代わりに、WordPress の JWT 認証では、安全なトークンを使用してリクエストの発信者を確認します。これにより、承認されたユーザーまたはアプリのみが保護された REST API エンドポイントにアクセスできるようになります。JWT トークンはWordPress のユーザー認証情報を使用して生成され、高度に暗号化されているため、アクセスを損なうことなく強力なセキュリティが確保されます。
必要条件:ダウンロードとインストール
- WordPress サイトに管理者としてログインします。
- WordPress ダッシュボードからプラグインに移動し、「新規追加」をクリックします。
- を検索 WPのREST API認証.
- 「今すぐインストール」をクリックして、プラグインをサイトに追加します。
- インストール後、「アクティブ化」をクリックしてプラグインの使用を開始します。
JWTトークンベースの認証方式を使用して、WordPressのREST APIをJWT認証で保護する方法は?
モバイルアプリケーションやウェブアプリケーションを開発していて、WordPressのREST APIへのアクセスを制御する必要がある場合は、REST API向けJWT認証が安全なソリューションを提供します。WordPress向けJWT認証を使用すると、アクセスレベルを定義できるため、特定の権限を持つユーザーはコンテンツの作成や更新が可能になり、その他のユーザーはデータの閲覧のみに制限されます。
- 使い方 JWTトークンベースの認証REST APIエンドポイントは、有効なWordPressユーザー認証情報から生成されたJWTアクセストークンによって保護されています。AuthorizationヘッダーにJWTトークンを含めることで、アプリケーションは保護されたリソースに安全にアクセスしたり、ロールベースのアクションを実行したりできます。 REST API の JWT 認証.
- これらのトークンは、HSAやRSAなどの暗号化アルゴリズムを使用して保護されており、一定期間後に自動的に有効期限が切れるため、セキュリティが強化されます。各トークンにはWordPressユーザー情報が含まれており、秘密鍵または証明書を使用して復号化できるため、JWT認証は複数のシステム間でユーザーを同期したり、アカウントを作成したりするのに最適です。
- WordPress用JWTリフレッシュトークン ユーザーが再度ログインすることなく、安全にセッションを更新できるようにします。全体として、JWTトークンベースの認証とWordPress向けのJWT認証を組み合わせることで、安全なAPIアクセスが確保されるとともに、アプリケーションとWordPress間のシームレスで効率的な通信が可能になります。
- WordPress 用の JWT 認証による REST API のセキュリティ保護

1. WordPress 用の REST API リクエストは、必要な認証情報とパラメータを使用して開始され、WordPress の JWT 認証を使用して JWT トークンを生成します。発行されたトークンは、JWT トークンベースの認証によって保護され、HS256やRSAなどの業界標準アルゴリズムを使用して暗号化され、強力なデータ保護が確保されます。
2. 以降のリクエストでは、データの取得やアクションの実行を行うREST API呼び出しに、AuthorizationヘッダーにJWTトークンがベアラートークンとして含まれます。REST APIのJWT認証では、プラグインはリクエストを処理する前にトークンを検証します。トークンが有効な場合は、要求されたリソースへのアクセスが許可されます。そうでない場合は、エラー応答が返されます。このプロセスにおいて、WordPress用JWT認証プラグインはトークンの作成と検証の両方を処理し、すべてのAPIリクエストのセキュリティを確保します。
関連する使用例:
- WordPressのREST APIエンドポイントに対して、JWT認証付きのリクエストを行うにはどうすればよいですか?
- JWT(JSON Web Token)を使用したWooCommerce/WordPressのREST APIの認証。
次の REST API 認証方法の使用例をお読みください。
REST APIのJWT認証方式を設定する方法は?
- Free
- ここでは、XNUMX つの API 呼び出しを行う必要があります。
I : JWT トークンを取得する
- JWT トークンを取得するには、以下のようにトークン エンドポイントに対して REST API 呼び出しを行う必要があります。
Request:POST https://<domain-name>/wp-json/api/v1/token
Body:username = <wordpress username>
password = <wordpress password>
Sample curl Request Format-
curl -d "username=<wordpress_username>&password=<wordpress_password>"
-X POST http://<wp_base_url>/wp-json/api/v1/token
このAPIエンドポイントは、WordPressのユーザー認証APIまたはログインAPIエンドポイントとも呼ばれ、WordPressユーザーの認証情報を使用してこのエンドポイントにリクエストを送信し、認証情報が有効な場合は、JWTトークンを含む成功レスポンスが返され、そうでない場合は、それに応じたエラーレスポンスが表示されます。
II:APIリクエストの送信
- JWTトークンを取得したら、以下に示すように、それを使用してWordPressのREST APIへのアクセスをリクエストできます。
Request: GET https://<domain-name>/wp-json/wp/v2/posts
Header: Authorization : Bearer <JWT token>
Sample curl Request Format-
curl -H "Authorization:Bearer <jwt_token >"
-X GET http://<wp_base_url>/wp-json/wp/v2/posts
- 注: 上記のトークンはデフォルトで 1 時間有効ですが、カスタマイズすることもできます。トークンの有効期限が切れると、再度生成できます。
- チェックアウトします 開発者のドキュメント をご覧ください。
- チェックアウトします エラー応答 JWTトークンを使ったAPIを作成するためのものです。
おめでとうございます!miniOrange REST API認証方式を使用して、WordPressのREST API呼び出しにJWT認証方式を正常に設定しました。
プログラミング言語のコードサンプル
- リソースリクエスト
- トークンリクエスト
郵便配達員のサンプル:
- 以下を行うには、 郵便配達員のサンプル プラグインのタブ。
- A JSONファイル 自動ダウンロードされます。
- ダウンロードしたものをインポートする JSONファイル 以下に示すように、Postman アプリケーションに入力します。
- json ファイルをインポートしたら、以下の REST API リクエストをクリックします。 コレクション 最後の図に示すように、 Wordpress ドメインを使用して、 http://<wp_base_url>/wp-json/wp/v2/posts そして、 WordPress ユーザー名と 本文パラメータにWordPressのパスワードを含めてください。
- 例:
- 注: レスポンスから取得した jwt トークンをコピーします。これは、リソース API リクエストで認証に使用されます。
- json ファイルをインポートしたら、以下の REST API リクエストをクリックします。 コレクション 最後の図に示すように、 Wordpress ドメインを使用して、 http://<wp_base_url>/wp-json/wp/v2/posts そして、 トークン要求の後に取得した応答からコピーされた jwt トークンを使用します。
- 例:
Postman を使用して REST API リクエストを作成するには、次の手順に従います。
a) JWTトークンを取得するためのREST APIリクエスト
b) 実際のリソースを取得するためのREST APIリクエスト
機能説明
1. ロールベースの REST API の制限:
この機能は、ユーザーの役割に基づいてWordPressのREST APIへのアクセスを制限します。特定のREST APIリソースへのアクセスを許可する役割をリストに追加できます。REST APIリクエストが行われると、ユーザーの役割がチェックされ、その役割がリストに追加されている場合にのみアクセスが許可されます。
WordPress でロールベースの REST API 制限を構成する方法は?
- プラグインの詳細設定タブに移動します。
- ロールベースの制限セクションでは、デフォルトですべてのロールが API にアクセスできるようになります。
- API へのアクセスを制限するロールの横にあるチェックボックスを有効にします。
- 上記のスクリーンショットでは、サブスクライバー ロールのチェックボックスが有効になっています。そのため、サブスクライバー ロールを持つユーザーが API リクエストを行うと、そのユーザーは要求されたリソースにアクセスできなくなります。
注:ロールベースの制限機能は、基本認証(ユーザー名:パスワード)、JWT方式、およびOAuth 2.0(パスワードグラント)で有効です。
2. カスタムヘッダー:
カスタムヘッダー機能を使用すると、デフォルトの「Authorization」ヘッダーの代わりにカスタムヘッダーを使用できます。これにより、REST APIは定義済みのカスタムヘッダー名を持つリクエストのみを受け入れるため、セキュリティが強化されます。デフォルトの「Authorization」ヘッダーを使用してリクエストを送信しようとすると、アクセスは拒否されます。
WordPressのREST API認証でカスタムヘッダーを設定する方法は?
- プラグインの詳細設定タブに移動します。
- 「カスタム ヘッダー」セクションで、テキストボックスに希望するヘッダー名を入力します。
- 変更を保存して、API リクエストに新しいカスタム ヘッダーを適用します。
3. REST API を除外します。
「REST API の除外」機能を使用すると、特定のREST API エンドポイントへの認証なしのアクセスを許可できます。除外された API は公開され、トークンやログインを必要とせずにアクセスできるようになります。
JWT 認証で除外される REST API を構成するにはどうすればよいでしょうか?
- プラグインの詳細設定タブに移動します。
- 「REST API を除外する」セクションで、必要な形式で API エンドポイントを入力します。
- 入力された API は認証から除外され、パブリックアクセスが可能になります。
- 例: REST API ' ' を除外したい場合「/wp-json/wp/v2/posts」の場合は、テキストボックスに「/wp/v2/posts」と入力する必要があります。
4. カスタムトークンの有効期限:
カスタムトークン有効期限機能は、 JWT と OAuth 2.0 認証方法を設定することで
カスタム有効期限 WordPress REST APIエンドポイントへのアクセスに使用されるトークン。設定された時間が経過すると、トークンは自動的に無効になります。 無効セキュリティを強化し、アクセス期間を制御できるようになります。
JWT 認証でカスタム トークンの有効期限を設定するにはどうすればよいでしょうか?
- プラグインの詳細設定タブに移動します。
- トークン有効期限設定セクションを開きます。
- アクセス トークンの有効期限を調整します (デフォルト: 60 分)。
- (OAuth 2.0 の場合) リフレッシュ トークンの有効期限を調整します (デフォルト: 14 日間)。
- 変更を保存して、カスタム トークンの有効期限設定を適用します。
5. JWTベースのトークンの署名検証:
署名検証機能は安全に署名します JWTトークン WordPress の REST API 認証を保護するため。各トークン署名は、 クライアントシークレットまたは証明書署名が残るようにする
プライベートで安全 権限のないユーザーによるアクセスや変更はできません。
HS256 または RS256 を使用して JWT 署名検証を構成する方法
このプラグインは、JWTトークンの署名アルゴリズムとしてHS256とRS256の2種類をサポートしています。ドロップダウンメニューからどちらかのアルゴリズムを選択できます。署名検証を完了するには、 JWT署名を安全に署名し、トークンの真正性を保証するために使用されるクライアントシークレットまたは証明書を追加してください。
6. リフレッシュトークン
リフレッシュトークンは、ユーザーが再度ログインすることなく新しいアクセストークンを取得するために使用される、有効期限の長いトークンです。この機能は、アクセストークンの有効期限が切れた際にユーザーのセッションを維持するために不可欠です。アクセストークンは通常、セキュリティ上の理由から有効期限が短く(15分から1時間程度)、リフレッシュトークンはより長い期間(数日、数週間、あるいは数ヶ月)有効になるように設計されています。
7. トークンを取り消す
トークンの失効とは、有効期限が切れる前にトークンを無効にすることを意味します。この機能はセキュリティにとって非常に重要であり、特に次のような場合に重要です。
- ユーザーがセッションからログアウトします。
- ユーザーがパスワードを変更します。
- トークンが侵害される(盗難または漏洩する)。
- 管理者は、特定のユーザーに対して強制的にログアウトを実行したり、トークンを無効にしたりしたいと考えています (例: セキュリティ侵害後)。
よくある質問(FAQ)
JWT は認証のセキュリティをどのように確保するのでしょうか?
JWTは、JWTトークンベースの認証を使用してすべてのリクエストを検証することでセキュリティを確保し、ユーザー名とパスワードを繰り返し送信する必要がありません。REST APIのJWT認証では、トークンはデジタル署名(HS256)または秘密鍵(RSA)で署名されるため、検出されずに改ざんすることはできません。また、トークンは一定時間後に有効期限が切れるため、トークンが漏洩した場合のリスクを軽減できます。このように、JWT認証はWordPressのREST APIエンドポイントを保護するための安全な方法と言えます。
API リクエストで JWT トークンを追加する場所はどこですか?
Authorization ヘッダーを使用して Bearer トークンとしてリクエスト ヘッダーにトークンを追加する必要があります。これは REST API の JWT 認証における標準的なアプローチであり、JWT トークンベース認証の中核をなすものです。例:
Authorization: Bearer YOUR_JWT_TOKEN
JWT トークンの有効期限が切れるとどうなりますか? 更新するにはどうすればいいですか?
アクセストークンの有効期限が切れると、APIは認証エラー(通常は401)を返します。WordPressのJWT認証では、リフレッシュトークン(JWTリフレッシュトークン)を使用して、再度ログインすることなく新しいアクセストークンを要求できます。このフローは、JWTトークンベース認証の重要な利点であり、REST APIのJWT認証においてセッションのセキュリティと使いやすさを維持します。
このプラグインは、トークン生成にHS256とRSAの両方のアルゴリズムをサポートしていますか?
はい。このプラグインは、設定に応じてHS256とRSAの両方を使用したトークン署名をサポートしています。HS256は共有シークレットを使用し、RSAは公開鍵と秘密鍵のペアを使用します。この柔軟性により、JWTトークンベースの認証が強化され、REST APIのJWT認証におけるさまざまなセキュリティ要件に対応できます。
WordPressサイトでJWT認証が正しく機能しているかどうかをテストするにはどうすればよいですか?
WordPressのJWT認証は、簡単な2ステップの手順でテストできます。
- トークンを生成する: プラグインのトークンエンドポイントを有効な WordPress 認証情報で使用し、JWT を受け取ったことを確認します。 curl -d" username=
&password = 「-X POST http:// /wp-json/api/v1/トークン - 保護された REST API エンドポイントを呼び出す: 保護されたエンドポイントに次のリクエストを送信します:
Authorization: Bearer YOUR_JWT_TOKEN
関連記事
プラグインのデモをリクエストする
フル機能のトライアル版を入手
ご返信ありがとうございます。すぐにご返信させていただきます。
何か問題が発生しました。 もう一度質問を送信してください

お困りですか?
ご要望について迅速なガイダンス(メールまたはミーティング)をご希望の場合は、 apisupport@xecurify.comまでメールでお問い合わせください。弊社のチームがお客様のご要望に最適なソリューション/プランの選択をお手伝いいたします。
