Android アプリから Drupal サイトへの REST 呼び出しを行っています。Drupal サイトでは Services 3.0 モジュールを使用して開発された REST サービスがあり、Android では Java ライブラリ Restlet 2.0 を使用しています。
最初にサービス ユーザー/ログインを呼び出し、受信したセッション ID とセッション名を使用して、2 番目の REST 呼び出しに認証 Cookie を挿入します。
ただし、サービスの Drupal ログを調べていると、基本的に REST サービス呼び出しのエントリが 4 つあります。
- サーバー情報メイン オブジェクト
- コントローラ
- 渡された引数
- 結果
エントリ 1 ~ 3 は引き続きログイン ユーザーでキャプチャされますが、エントリ 4 は既に匿名としてログに記録されており、サービス実装もログイン ユーザーを認識していません (つまり、変数 $GLOBALS['user'] には値がありません)。
「Cookie インジェクション」は、認証された呼び出しを行うための正しい手法ですか? もしそうなら、ログインしたユーザーを Drupal 側に保持する方法は?