That’s a lot off services! But don’t worry, as their configuration is the same for all your application, you just have to set them once. Let’s see all of these in the next sections.
Attestation Statement Support Manager
Every Creation Responses contain an Attestation Statement. This attestation contains data regarding the authenticator depending on several factors such as its manufacturer and model, what you asked in the options, the capabilities of the browser or what the user allowed.
The user may refuse to send information about the security token for privacy reasons.Hereafter the types of attestations you may have:
Supported Attestation Statement Types
The following attestation types are supported. Note that you should only use the none one unless you have specific needs described in the dedicated page.
packed: generally used by authenticators with limited resources (e.g. secure elements). It uses a very compact but still extensible encoding method.
android key: commonly used by old or disconnected Android devices.
android safety net: for new Android devices like smartphones.
trusted platform module: for devices with built-in security chips.
apple: for Apple devices
<?phpdeclare(strict_types=1);useWebauthn\AttestationStatement\AttestationStatementSupportManager;useWebauthn\AttestationStatement\NoneAttestationStatementSupport;// The manager will receive data to load and select the appropriate $attestationStatementSupportManager =AttestationStatementSupportManager::create();$attestationStatementSupportManager->add(NoneAttestationStatementSupport::create());
If you use extensions, you may need to check the value returned by the security devices. This behaviour is handled by an Extension Output Checker Manager.
You can add as many extension checkers as you want. Each extension checker must implement Webauthn\AuthenticationExtensions\ExtensionOutputChecker and throw a Webauthn\AuthenticationExtensions\ExtensionOutputError in case of an error.