Migration 11.x to 12.0
======================

12.0 is compatible with CakePHP ^5.0

Requirements
------------
- php >=8.1
- CakePHP 5
- cakephp/authentication 3
- cakephp/authorization 3

Overview
--------
- Removed the deprecated config key `'Auth.authenticate.all.contain'` you should use `'Auth.Profile.contain'` instead.
- Removed deprecated U2F code. U2F is no longer supported by chrome, we suggest using Webauthn as a replacement.
- UsersShell logic was migrated into commands classes.
- Security component was removed from CakePHP core, the usages in the plugin
were updated with FormProtection component, for more information about the component,
go to https://book.cakephp.org/5/en/controllers/components/form-protection.html

Webauthn Two-Factor Authentication
----------------------------------
It's required the version 4.4 of web-auth/webauthn-lib to use webauthn
two-factor authentication. The main actions behave the same as before,
if you had extended the adapter please check the following changes:
 - `Webauthn\Server` was removed from web-auth/webauthn-lib and the related
 logic was migrated into our custom classes `\CakeDC\Users\Webauthn\AuthenticateAdapter`
and `\CakeDC\Users\Webauthn\RegisterAdapter`
 - Removed protected method `\CakeDC\Users\Webauthn\AuthenticateAdapter::loadAndCheckAssertionResponse`, this method was
related to `Webauthn\Server`
 - Removed protected method `\CakeDC\Users\Webauthn\RegisterAdapter::loadAndCheckAttestationResponse`, this method was
   related to `Webauthn\Server`
 - Added class `\CakeDC\Users\Webauthn\Base64Utility` to provide basic encoding and decoding compatible with previous versions.
 - Added class `\CakeDC\Users\Webauthn\PublicKeyCredentialLoader` to correctly load credentials from basic
client (javascript) provided.
