1. ホーム
  2. php

apache環境でrestful認証を解決する ヘッダーからAuthorizationパラメータを取得できない [ Technique Sharing ]。

2022-02-24 14:09:55

レストインターフェースは、HttpBearerAuth認証方式を使用します。

public function behaviors()
  {
      return ArrayHelper::merge( parent::behaviors(), [
          'authenticator' => [
              'class' => HttpBearerAuth::className(),
          ],
      ] );
  }

ここでは、リストのテキストリクエストヘッダーにAuthorizationパラメータを指定してリクエストしています。

Authorization:Bearer your_token

しかし、このパラメータは認証クラスで取得されません。回避策 .htaccess ファイルに

SetEnvIf Authorization "(. *)" HTTP_AUTHORIZATION=$1

この問題は長い間投げっぱなしで、文書化されています。