跳到主要內容

使用者密碼

編輯此頁面

此驗證輸入值是否等於目前已驗證使用者的密碼。這在使用者可以更改密碼但需要輸入舊密碼以確保安全的表單中非常有用。

注意

應使用此功能來驗證登入表單,因為這會由安全性系統自動完成。

注意

為了使用此約束條件,您應該已透過 Composer 安裝 symfony/security-core 元件。

基本用法

假設您有一個 ChangePassword 類別,用於使用者可以透過輸入舊密碼和新密碼來變更密碼的表單中。此約束條件將驗證舊密碼是否與使用者目前的密碼相符

1
2
3
4
5
6
7
8
9
10
11
12
// src/Form/Model/ChangePassword.php
namespace App\Form\Model;

use Symfony\Component\Security\Core\Validator\Constraints as SecurityAssert;

class ChangePassword
{
    #[SecurityAssert\UserPassword(
        message: 'Wrong value for your current password',
    )]
    protected string $oldPassword;
}

選項

群組

類型: array | string 預設值: null

它定義此約束條件的驗證群組。閱讀更多關於驗證群組的資訊。

訊息

類型: message 預設值: 此值應為使用者目前的密碼。

當底層字串與目前使用者的密碼符時,會顯示此訊息。

此訊息沒有參數。

酬載

類型: mixed 預設值: null

此選項可用於將任意特定領域的資料附加到約束條件。Validator 元件不會使用已設定的酬載,但其處理完全取決於您。

例如,您可能想要使用數個錯誤層級,以便根據錯誤的嚴重性,在前端以不同的方式呈現失敗的約束條件。

本作品,包括程式碼範例,皆以 Creative Commons BY-SA 3.0 授權條款授權。
目錄
    版本