2

在yii2中,用户表的表结构不包含salt列。

 $this->createTable('tbl_user', [
        'id' => Schema::TYPE_PK,
        'username' => Schema::TYPE_STRING . ' NOT NULL',
        'auth_key' => Schema::TYPE_STRING . '(32) NOT NULL',
        'password_hash' => Schema::TYPE_STRING . ' NOT NULL',
        'password_reset_token' => Schema::TYPE_STRING . '(32)',
        'email' => Schema::TYPE_STRING . ' NOT NULL',
        'role' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 10',

        'status' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 10',
        'create_time' => Schema::TYPE_INTEGER.' NOT NULL',
        'update_time' => Schema::TYPE_INTEGER.' NOT NULL',
    ], $tableOptions);

这真的让我很困惑。虽然 Yii 使用了盐渍哈希,但默认情况下它并不存储在数据库中。我应该重写代码以使其存储在数据库中吗?如果我不疼数据库中的盐怎么办?

4

1 回答 1

1

Yii2 安全助手中使用的这个盐不需要存储在数据库中,它只用于创建密码哈希,而不需要将密码与哈希进行比较。所以还是很安全的。

于 2014-04-21T08:01:35.550 回答