概要

以下の記事で、JWTモジュールを使ったJWT認証を試しました。

今回は、cookie認証を試します。

インストール

restuiモジュールをインストールしていない場合には、以下のようなコマンドをインストールと有効化を行います。

cvoemnpdoosre/rb.ipnh/adrrursehqueinrere'sdtruuipal/restui:^1.21'

設定

今回は、以下のように、cookie認証を使用します。設定方法の詳細については、冒頭の関連記事をご確認ください。

Postman

ログイン

POST

/user/login

Body > x-www-form-urlencoded

KeyValue
name{ユーザー名}
pass{パスワード}
form_iduser_login_form

ログインに成功すると、Cookieが発行されます。

セッショントークンの取得

GET

/session/token

Headersタブをみると、先に発行したCookieが設定されていることが確認できます。また、結果としてセッショントークンが取得できています。

コンテンツの作成

POST

/node?_format=json

Headersタブで、上記で取得したセッショントークンをX-CSRF-TokenKeyのValueとして設定します。

Bodyの値は、以下を例として使用しました。

{}"]"]t,tyipte{}l{}"e:":[""t[vaarlgueet"_:id"":"article""

なお、誤ったセッショントークンを入力して試してみると、以下が返却されました。

{}"message":"X-CSRF-Tokenrequestheaderisinvalid"

参考:ログアウト

GET

/user/logout

上記により、発行されたセッションクッキーが削除されました。

まとめ

DrupalのRESTリソースのcookie認証を試しました。誤っている点があるかと思いますが、参考になりましたら幸いです。