4

ファイアウォール用に http_basic を http_digest に変更したいのですが、http_digest の設定方法が実際には文書化されていません。

参照が不完全または最新ではないようです:

http://symfony.com/doc/2.0/reference/configuration/security.html

http_basic:  
  provider: name  
http_digest:  
  provider: name  

ただし、本の例ではレルムを使用し、プロバイダーは使用していません。

http://symfony.com/doc/current/book/security.html

http_basic:  
  realm: "Secured Demo Area"  

少なくともその例は機能しますが、http_basic を http_digest に変更すると (文書化されていない) キーがありません。

ErrorException: Notice: Undefined index: key in ..\vendor\symfony\src\Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\HttpDigestFactory.php 行 80

http_digest:  
  realm: "Secured Demo Area"  
  key: "whatever"

キーの追加は機能しているように見えますが、ログイン後に別のエラーが発生します:

致命的なエラー: 79 行目の ..\vendor\symfony\src\Symfony\Component\Security\Http\Firewall\DigestAuthenticationListener.php の未定義メソッド Symfony\Component\Security\Http\EntryPoint\DigestAuthenticationEntryPoint::getKey() の呼び出し

それが、構成に何が欠けているのか見当がつかない点です。Symfony 2 を使用した http_digest の実際の例が必要です。

4

1 に答える 1

3

これは現在のバージョンのSymfony2(2.0.10)で解決されているようです。

  secured_area:
        pattern:    ^/admin           
        http_digest:
            realm: "Admin"
            key: "thisismykey"

私のためにうまくいきます。

于 2012-02-23T14:30:46.527 に答える