WebAuthn using iOS and Safari

Through this guide we are going to walk through developing a WebAuthn implementation for iOS using the Safari browser. This will provide guidance on how to ensure that you create a robust and seamless experience for your users when accessing your web application.

This section assumes that you have some familiarity with WebAuthn and web development concepts including:

  • PublicKeyRequestOptions and PublicKeyCreationOptions

  • Platform authenticators vs cross-platform authenticators

  • Javascript

  • Event handlers in React

About our demo

Through the remainder of this series we will be leveraging screenshots and code samples from Yubico’s WebAuthn Starter Kit V2.1. The Starter Kit includes a full reference architecture to help you build a full end-to-end WebAuthn application, and is available here on GitHub.

This demo will be utilizing Touch ID on a iPhone running iOS v15.4.1, and Safari v15.4.1 The security key used is a YubiKey 5 NFC v5.4.3.

Implementation guides for user scenarios

This section will provide different implementation guides for a variety of different user scenarios. Each scenario will highlight a specific WebAuthn related user scenario, and provide implementation how-to’s required to create the experience.