まだ「Extend(拡張)」ページにいない場合は、そこへ移動してください。
「Extend(拡張)」ページでは、テーブルの各行が一つのモジュールに対応しており、左端はチェックボックスから始まり、その直後にモジュール名が続きます。
モジュール名の右側にある 3 番目の列には、そのモジュールの説明が表示されます。
説明が表示されない場合
各モジュールの名前の隣に説明が表示されない場合は、管理テーマの「レスポンシブ」レイアウトによってそれらが隠されています。
この問題の詳細と解決方法については Extend ページで隠れたモジュールの説明を表示する修正方法 で説明していますが、ここでは解決手順を簡単にまとめます。
Extend ページで隠れた説明を表示する簡単な修正のまとめ
左側の縦型管理メニューが開いている場合は閉じます。
モジュールの中には、実際にあなたが何かをする必要がなく、裏側で黙々と仕事をこなすだけのものもあります。ただし、そうしたモジュールは設定項目を持たないか、他のモジュールの依存関係としてのみ機能することが多いでしょう。
多くの場合、あなたが関心を持つモジュールは、権限や設定を構成できる類いのものです。プロジェクトによっては使いやすく「直感的」で、何を設定できるのか、意図したとおりに動作させるには何をすればよいのかが比較的わかりやすいものもあります。
新しくインストールしたモジュールを賢く使いこなすために必要な詳細をすべて学びたい場合、必要になりそうなものや、確認すべき場所をいくつか挙げてみます。
次に挙げる提案は、使いやすい順に並べています。
私たちのような初心者のエンドユーザーにとって残念なことに、Drupal は常に進化を続けています。開発者たちの素晴らしい成果を無償で享受できるのは幸運ですが、彼らの時間は限られています。優れた開発者ほど、少なくとも初心者を念頭に置いたドキュメントを丁寧に書く人ではない、と言っても差し支えないでしょう。そうでなければ、あなたも私も今ここにいなかったはずです。
JSON:APIでのCRUD操作の認証
JSON:APIを操作する際には、PostmanやcURLなどのツールを使用してリクエストを送信できます。デフォルトでは、これらのツールを通じて送信されるリクエストは、ユーザー認証をネイティブに管理しないため、「匿名」ユーザーからのものとして扱われます。その結果、特定のリソースへのアクセスは、Drupalサイトの匿名ユーザー用に設定された権限に基づいて制限される場合があります。
ただし、目的がJSON:APIを介して作成、更新、削除(CRUD)操作を行うことである場合、匿名アクセスだけでは不十分です。これらの操作には認証済みアクセスが必要です。Drupalは複数の認証方法をサポートしており、さまざまなcontribモジュールとコアモジュールで有効にできます。
IDプロバイダーを使用してDrupal REST APIへのアクセスを保護・制限したい場合は、外部IDプロバイダー認証方法を選択してください。
外部IDプロバイダーを使用したDrupal API認証では、Google、Azure AD、Keycloak、Okta、Gitlabなどのサードパーティーから受け取ったトークンを使用して、Drupal REST APIに安全にアクセスします。
この方法では、IDプロバイダーが提供するユーザー情報エンドポイントと、IDプロバイダーのユーザー名属性をモジュールに設定する必要があります。そうすれば、プロバイダーが提供するトークンを使用してすべてのDrupal APIリクエストを認証できます。 Drupal REST API モジュールは、受け取ったユーザー資格情報をDrupalユーザーアカウントと照合します。 このモジュールはDrupal 7、Drupal 8、Drupal 9、Drupal 10、Drupal 11と互換性があります。
Drupal API Authenticationモジュールは、認証のためにAPIリクエストとともにJWTトークンを送信することで機能します。このモジュールは、二者間のやり取り中にユーザーIDを安全に表現するためのオープンスタンダードであるJSON Web Token(JWT)を使用します。
このステップでは、基本的に、Drupalサイトのユーザー名とパスワードを使用して最初にJWTトークンを取得します。ユーザー名とパスワードが検証されると、Drupal REST API Authenticationモジュールが署名付きのJSON Web Tokenを作成します。次に、APIはそのトークンをクライアントアプリケーションに返します。
JWTトークンを受け取ったら、JWTトークンの有効期限が切れるまで、このトークンを使用してDrupalで操作を実行できます。Drupal REST API Authenticationモジュールは、アプリケーションから有効なJWTを受け取った場合のみアクセスを許可します。
JWTは、HSAとRSAという2つのアルゴリズムを使用して署名・検証できます。
DrupalのAPI認証でJWTトークンを使用する方法を見てみましょう。
OAuth(Open Authorization)ã¯ã€ãƒˆãƒ¼ã‚¯ãƒ³ãƒ™ãƒ¼ã‚¹ã®èªè¨¼ãƒ»æ‰¿èªãƒ—ãƒãƒˆã‚³ãƒ«ã«é–¢ã™ã‚‹ã‚ªãƒ¼ãƒ—ンスタンダードã§ã€ã‚·ãƒ³ã‚°ãƒ«ã‚µã‚¤ãƒ³ã‚ªãƒ³ï¼ˆSSO)をæä¾›ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚OAuthを使用ã™ã‚‹ã¨ã€Facebookãªã©ã®ã‚µãƒ¼ãƒ‰ãƒ‘ーティーサービスãŒã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ‘スワードを公開ã™ã‚‹ã“ã¨ãªãã€ã‚¨ãƒ³ãƒ‰ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«é–¢ã™ã‚‹ç‰¹å®šã®æƒ…å ±ã‚’ä½¿ç”¨ã§ãã¾ã™ã€‚OAuthã¯ã‚¨ãƒ³ãƒ‰ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ä»£ã‚ã£ã¦ä»²ä»‹è€…ã¨ã—ã¦æ©Ÿèƒ½ã—ã€ç‰¹å®šã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆæƒ…å ±ã®å…±æœ‰ã‚’承èªã™
APIキー認証は、Drupal REST APIを保護する最もシンプルな方法の1つです。すべてのユーザーに対してAPIキーを生成したら、そのキーを使用してDrupal REST APIへのアクセスを保護できます。
これは、各APIリクエストのAuthorizationヘッダーでユーザーのDrupalユーザー名とAPIキーを送信することで実現できます。 Drupal API Authentication モジュールは、ユーザー名と対応するAPIキーに基づいてリクエストを認証します。 このモジュールはDrupal 7、Drupal 8、Drupal 9、Drupal 10、Drupal 11と互換性があります。
Basic Authentication(基本認証)は、非常にシンプルで分かりやすい認証方法です。クライアントは、Drupal サイトのユーザー名とパスワードを base64 エンコードした Authorization ヘッダーを含む HTTP リクエストを送信します。
Basic Authentication では、 miniOrange API authentication モジュールがまずユーザーを Drupal のユーザー名とパスワードで認証します。ユーザーが認証された場合のみ、その操作を実行できます。このモジュールは Drupal 7、Drupal 8、Drupal 9、Drupal 10、Drupal 11 に対応しています。