Class PasskeyWellKnown

java.lang.Object
com.iizix.server.user.passkey.PasskeyWellKnown

public final class PasskeyWellKnown extends Object
The three .well-known files that tie applications to the domain of their passkeys (CC-LOGIN-L8-PASSKEYS), served by this server for the domains it is the host of - for a relying party ID that is a parent domain, the web server of that domain serves them:
  • /.well-known/apple-app-site-association: the iOS applications that may use the passkeys of the domain (webcredentials), from signIn.passkey.iosApps;
  • /.well-known/assetlinks.json: the Android applications that may (delegate_permission/common.get_login_creds), from signIn.passkey.androidApps;
  • /.well-known/webauthn: the origins that may use the relying party ID (WebAuthn related origin requests), from signIn.passkey.relatedOrigins.
A request is answered from the settings of the applications whose relying party ID is the host of the request. When they have nothing for the file and the web root holds a file of that name, the file is sent as it is, so that an operator's own file keeps working; when there is neither, the answer is 404.
Author:
Christopher Mindus
  • Field Details

  • Method Details

    • register

      public static void register(IServer server)
      Registers the responders of the three files with the server.
      Parameters:
      server - The server.
      Throws:
      NullPointerException - If server is null.
    • unregister

      public static void unregister(IServer server)
      Unregisters the responders.
      Parameters:
      server - The server.
      Throws:
      NullPointerException - If server is null.
    • body

      public static String body(String target, String host, Collection<PasskeySettings> settings)
      Makes the content of a file for a host from the settings of the applications.
      Parameters:
      target - The target, one of the three.
      host - The host of the request.
      settings - The settings of the applications of the server.
      Returns:
      The JSON text, null when no application whose relying party ID is the host has anything for the file.
      Throws:
      NullPointerException - If target or settings is null.