簡體   English   中英

如何配置security.yml

[英]How to configure security.yml

我在使用Symfony 2的security.yml遇到問題。

這是我文件的內容:

security:
 encoders:
    MOD\UserBundle\Entity\User:
        algorithm: sha512
        iterations: 1
        encode_as_base64: false

role_hierarchy:
    #[...]

providers:
    user_db:
        entity:
            class: MOD\UserBundle\Entity\User
            property: username

firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false

    login:
        pattern: ^/user/login$
        anonymous: true

    main:
        pattern: ^/
        anonymous: false
        provider: user_db
        form_login:
            login_path: user_login
            check_path: user_check
        logout:
            path: user_logout
            target: /user/login

我有一個名為User的實體,具有以下字段: id, email, username, password, salt, roles

當我嘗試從/user/login ,結果始終是相同的: "Bad credentials"

有沒有辦法檢查user_check請求上發生了什么? 還是security.yml任何明顯的錯誤配置?

這是我在app/logs/dev.log

[2014-02-09 21:35:27] doctrine.DEBUG: SELECT t0.id AS id1, t0.username AS username2, t0.password AS password3, t0.salt AS salt4, t0.email AS email5, t0.roles AS roles6 FROM User t0 WHERE t0.username = ? LIMIT 1 ["Maxime"] []
[2014-02-09 21:35:27] security.INFO: Authentication request failed: Bad credentials [] []

在我的數據庫中,我只有一個用戶名: Maxime

謝謝zizoujab。 既然你問我密碼,並保存這一個在我的數據庫,我finaly更換的方式很多問題sha512通過plaintextsecurity.yml 然后我嘗試使用以下命令登錄我: maxime / C7AD44CBAD762A5DA0A452F9E854FDC1E0E7A52A38015F23F3EAB1D80B931DD472634DFAC71CD34‌​EBC35D16AB7FB8A90C81F975113D6C7538DC69DD8DE9077EC並可以正常工作。

我絕對解決了我的問題。 我這樣更改security.yml

encoders:
        MOD\UserBundle\Entity\User:
            algorithm: sha512
            iterations: 1
            encode_as_base64: true

然后保存用sha512和base64編碼的哈希密碼。

有用 !

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM