
Cakephp2から4へのアップデートはたくさんのものが非推奨、または廃止になっています。
Cakephp4では、とうとうAuthComponent自体も非推奨になり、5では淘汰される運命にある模様(でも、移行の際には同じ形の方が事故が少なくなるので一旦AuthComponentのまま実装するのがいいのかも)
今回はAuthComponent::password()の代替として、ユーザーパスワードの生成などにおいてはDefaultPasswordHasher::hash()を利用しましょうというお話です。
Cake2: AuthComponent::passwordはCake4では削除
Cake3の時点でAuthComponent::passwordは非推奨になっています。
https://api.cakephp.org/2.10/class-AuthComponent.html#_password
Security::hash()を利用するようにということだけど、ユーザーのパスワード生成の際は、bcrypt方式のDefaultPasswordHasherを利用すべきということ
https://book.cakephp.org/4/en/core-libraries/security.html#hashing-data
Cake4: DefaultPasswordHaherを使う
<?php
// 略
use Cake\Auth\DefaultPasswordHasher;
// 略
class HogesController extends AppController
{
public function fuga()
{
return (new DefaultPasswordHasher)->hash({任意のパスワード値});
}
}
https://book.cakephp.org/4/ja/controllers/components/authentication.html#hashing-passwords