CakePHP5系で認証機能のAuthenticationプラグインをインストール・エラー発生注意
2025/01/31
CakePHP5系で認証機能のAuthenticationプラグインをインストールしようとするとエラーが発生する。その対応方法を解説
CakePHP5系で認証機能プラグイン「Authentication」を composerを使用してインストールする際のコマンドは下記になります。
|
1 |
# composer require "cakephp/authentication:^3.0" |
CakePHP5オフィシャルの ChiffonBookの記述が間違っている
CakePHP5 ChiffonBook CMS チュートリアル – 認証
https://book.cakephp.org/5/ja/tutorials-and-examples/cms/authentication.html
CakePHP5 ChiffonBook シンプルな認証と認可のアプリケーション
https://book.cakephp.org/5/ja/tutorials-and-examples/blog-auth-example/auth.html#id3
上記の CakePHP5のオフィシャルサイトのマニュアルには、Authenticationをインストールする際のコマンドとして下記が紹介されています。
|
1 |
# composer require "cakephp/authentication:^2.0" |
ですが、上記のコマンドを実行すると下記のようなエラーが発生します。
|
1 2 3 4 5 6 7 8 |
Problem 1 - cakephp/authentication[2.0.0, ..., 2.4.0] require cakephp/core ^4.0 -> found cakephp/core[4.0.0, ..., 4.5.8] but these were not loaded, likely because it conflicts with another require. - cakephp/authentication[2.5.0, ..., 2.9.0] require cakephp/http ^4.0 -> found cakephp/http[4.0.0, ..., 4.5.8] but these were not loaded, likely because it conflicts with another require. - cakephp/authentication[2.10.0, ..., 2.10.2] require cakephp/http ^4.4 -> found cakephp/http[4.4.0, ..., 4.5.8] but these were not loaded, likely because it conflicts with another require. - cakephp/authentication 2.11.0 requires cakephp/http ^4.5 -> found cakephp/http[4.5.0, ..., 4.5.8] but these were not loaded, likely because it conflicts with another require. - Root composer.json requires cakephp/authentication ^2.0 -> satisfiable by cakephp/authentication[2.0.0, ..., 2.11.0]. Installation failed, reverting ./composer.json and ./composer.lock to their original content. |
メッセージの内容は、「CakePHP5系では Authentication Ver.2系は使えませんよ」というものです。
CakePHP5系では Authentication Ver.3系を使う必要がある
つまり、最初に書きましたが、CakePHP5系では Authentication Ver.3系を使う必要がありますので、実行するコマンドは下記となります。
|
1 |
# composer require "cakephp/authentication:^3.0" |
また、Githubにある Authenticationのリリースノートは下記になります。
それぞれの CakePHPのバージョンに合わせた Authenticationを確認しましょう。
CakePHP5 ChiffonBook Authentication Releases
https://github.com/cakephp/authentication/releases
CakePHP5の関連記事
CakePHPのpostlinkで生成した削除リンクをクリックしても処理が実行されない対処法CakePHP4、5のユーザ認証でID、PASS以外の削除フラグなども条件加える方法
CakePHP4、CakePHP5系の認証処理でログインの有無の確認、ユーザ情報の取得の方法
CakePHP4、5で$_SERVERと同じようにURIを取得する「getUri()」の紹介
getParam('action')で取得するアクション名は別関数に移動しても不変CakePHP4系、CakePHP5系のexists()でカラムを指定して値の有無をチェックする方法解説
CakePHP4、5のnewEmptyEntityで作成したオブジェクトは空なのか、確認してみた
CakePHP4、5でSELECT telephone as tel FROM usersの様にasでカラムに別名を付ける方法
CakePHP4、5の認証処理で認証が通らない際の確認方法と確認箇所の紹介
CakePHP5系で認証機能のAuthenticationプラグインをインストール・エラー発生注意
その他の「CakePHP5」に関する記事一覧
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
CakePHP4のCakeDC/Usersの画面、メール本文テンプレートのカスタマイズ方法解説
CakeDC謹製Usersプラグインの紹介。ユーザ新規登録の流れを紹介しつつ、テンプレートファイル、設定情報ファイルの場所とそれらをカスタマイズする方法を説明します。
-
-
CakePHP3の検索プラグイン「friendsofcake/search」の様々な検索の仕方の実装方法
CakePHP3で検索をするプラグイン「friendsofcake/search」の検索条件のカスタマイズ方法の解説。検索項目を増やしたり、以上、以下での検索や、チェックボックスによる検索の方法などを解説。
-
-
CakePHP4で「app_local.php」「.env」を利用して環境ごとの定数を振り分ける方法
CakePHP4で.env、app_local.phpに定数を定義してそれを呼び出す方法の解説。Gitでは管理せず本番環境と開発環境とで異なる定数を定義するためそれを利用する方法。
-
-
CakePHP 2.3 Search Pluginで検索処理 その1設置方法
CakePHPの検索プラグイン Search Pluginの設置方法と基本的な検索処理の解説です。
-
-
CakePHP3のCakeDC/Usersのバリデーションのカスタマイズ方法解説
CakeDC謹製Usersプラグインの紹介。Usersのカスタマイズとして入力項目のバリデーションの変更を、プラグインのファイルは触らずオーバーライドにより実装する方法を解説する。
-
-
CakePHP3でPHP Simple HTML DOM Parserを使ってスクレイピングする方法
CakePHP3でPHP Simple HTML DOM Parserを使ってスクレイピングをする方法を解説。インストール方法、読み込み方法。および、具体的なスクレイピングを実行するサンプルソースも。
-
-
CakePHP3でPHPExcelを使ってエクセルファイルを生成、出力する方法
CakePHP3でPHPExcelを利用してエクセルを編集、出力するサンプルソース+解説。PHPExcelのインストール方法の解説からファイル保存とダウンロードの方法なども解説。
-
-
CakePHP4、CakePHP5の「warning: DebugKit is disabling...」の対処方法
CakePHPのデバッグ用のツールであるDebugKitは適切な設定をしないとエラーログにワーニングメッセージが出力される。それを解消する方法を解説。
-
-
CakePHP3でassociatedを使って関連データをまとめて保存する方法(hasOne、hasMany、belongsTo)
CakePHP3で関連データをまとめて保存する方法。hasOne、hasMany、belongsTo等の関連データはassociatedを追加することでまとめて保存することができます。
-
-
CakePHP4、5で$_SERVERと同じようにURIを取得する「getUri()」の紹介
PHPでサーバ情報、環境情報を取得する際は「
$_SERVER」を利用するが、似たような情報をCakePHPの関数で取得する際は「getUri()」を使用する。取得出来る値は一致するものもあるが、違うものもあり便利な使い方もある。