3

まず、私の英語で申し訳ありません。私はフランス人で、英語があまり上手ではありません。

LDAP ディレクトリのイントラネット Web サイトにユーザーをログインさせようとしています。そこで、SF 2.0.X で FR3D Ldap Bundle と FOS User Bundle を使用することにしました。

既に FOSUB をインストールしており、Mysql DB で問題なく動作します。その後、FR3D Ldap Bundle をインストールします => OK。

今、私は構成に問題があります。FOSUB ログイン フォームでユーザーを使用してログインしようとすると、次のエラー メッセージが表示されます。"The presented password is invalid."

これは私のセキュリティ設定です:

 main:
        pattern: ^/                      # ^/ = tout ce qui commence par / = tout notre site
        #fr3d_ldap:  ~
        form_login: # On définit notre méthode d'authentification
            always_use_default_target_path: false
            default_target_path: /annu
            provider:    chain_provider  # On lit l'authentification au provider définit plus haut
            remember_me: true            # On active la possibilité du "Se souvenir de moi" (désactivé par défaut)
        remember_me:
            lifetime: 604800                # in seconds
            key:         %secret%        # On définit la clé pour le remember_me (%secret% est un parametre de parameters.ini)
        anonymous:       true            # On autorise les utilisateurs anonymes (non identifiés)
        logout:   
            path:   /logout
            target: /annu 




providers:
        chain_provider:
            providers: [fos_userbundle, fr3d_ldapbundle]
        in_memory:
            users:
                user:  { password: userpass, roles: [ 'ROLE_USER' ] }
                admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] }
        fos_userbundle:
            id: fos_user.user_manager
        fr3d_ldapbundle:
            id: fr3d_ldap.security.user.provider

Wireshark で LDAP 要求が表示されるため、ユーザーをログに記録できない理由がわかりません。

4

1 に答える 1

1

LDAPオーセンティケーター「#fr3d_ldap:〜」にコメントしました

認証のためにコメントを外す必要があります。Wiresharkで表示されているLDAP要求は、ユーザーに提供するためのクエリです。

symfonyはユーザーを認証するために2つのステップを必要とします:

1)リポジトリからユーザーを取得します(LDAPディレクトリへのクエリ)この手順はfr3d_ldap.security.user.providerproviders:セクションに追加することによって実行されます

2)彼の資格情報で認証します(LDAPディレクトリにバインド)このステップはfr3d_ldap: ~<firewall name:>セクションに追加することによって実行されます。

#冒頭の文字を削除するとfr3d_ldap: ~、問題が解決するはずです。

于 2012-09-06T18:33:31.460 に答える