Class WebAuthn


  • public class WebAuthn
    extends AuthenticationProvider
    Factory interface for creating WebAuthN based AuthenticationProvider instances.

    NOTE: This class has been automatically generated from the original non RX-ified interface using Vert.x codegen.

    • Constructor Detail

      • WebAuthn

        public WebAuthn​(io.vertx.ext.auth.webauthn.WebAuthn delegate)
      • WebAuthn

        public WebAuthn​(Object delegate)
    • Method Detail

      • create

        public static WebAuthn create​(Vertx vertx)
        Create a WebAuthN auth provider
        Parameters:
        vertx - the Vertx instance.
        Returns:
        the auth provider.
      • create

        public static WebAuthn create​(Vertx vertx,
                                      io.vertx.ext.auth.webauthn.WebAuthnOptions options)
        Create a WebAuthN auth provider
        Parameters:
        vertx - the Vertx instance.
        options - the custom options to the provider.
        Returns:
        the auth provider.
      • createCredentialsOptions

        public WebAuthn createCredentialsOptions​(io.vertx.core.json.JsonObject user,
                                                 io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>> handler)
        Gets a challenge and any other parameters for the navigator.credentials.create() call. The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        user - - the user object with name and optionally displayName and icon
        handler - server encoded make credentials request
        Returns:
        fluent self
      • createCredentialsOptions

        public WebAuthn createCredentialsOptions​(io.vertx.core.json.JsonObject user)
        Gets a challenge and any other parameters for the navigator.credentials.create() call. The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        user - - the user object with name and optionally displayName and icon
        Returns:
        fluent self
      • rxCreateCredentialsOptions

        public rx.Single<io.vertx.core.json.JsonObject> rxCreateCredentialsOptions​(io.vertx.core.json.JsonObject user)
        Gets a challenge and any other parameters for the navigator.credentials.create() call. The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        user - - the user object with name and optionally displayName and icon
        Returns:
        fluent self
      • getCredentialsOptions

        public WebAuthn getCredentialsOptions​(String name,
                                              io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>> handler)
        Creates an assertion challenge and any other parameters for the navigator.credentials.get() call. If the auth provider is configured with RequireResidentKey and the username is null then the generated assertion will be a RK assertion (Usernameless). The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        name - the unique user identified
        handler - server encoded get assertion request
        Returns:
        fluent self.
      • getCredentialsOptions

        public WebAuthn getCredentialsOptions​(String name)
        Creates an assertion challenge and any other parameters for the navigator.credentials.get() call. If the auth provider is configured with RequireResidentKey and the username is null then the generated assertion will be a RK assertion (Usernameless). The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        name - the unique user identified
        Returns:
        fluent self.
      • rxGetCredentialsOptions

        public rx.Single<io.vertx.core.json.JsonObject> rxGetCredentialsOptions​(String name)
        Creates an assertion challenge and any other parameters for the navigator.credentials.get() call. If the auth provider is configured with RequireResidentKey and the username is null then the generated assertion will be a RK assertion (Usernameless). The object being returned is described here https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptions
        Parameters:
        name - the unique user identified
        Returns:
        fluent self.
      • authenticatorFetcher

        public WebAuthn authenticatorFetcher​(Function<io.vertx.ext.auth.webauthn.Authenticator,​io.vertx.core.Future<List<io.vertx.ext.auth.webauthn.Authenticator>>> fetcher)
        Provide a that can fetch Authenticators from a backend given the incomplete Authenticator argument. The implementation must consider the following fields exclusively, while performing the lookup:
        • Authenticator
        • Authenticator ()}
        It may return more than 1 result, for example when a user can be identified using different modalities. To signal that a user is not allowed/present on the system, a failure should be returned, not null. The function signature is as follows: (Authenticator) -> Future>>
        • Authenticator the incomplete authenticator data to lookup.
        • async result with a list of authenticators.
        Parameters:
        fetcher - fetcher function.
        Returns:
        fluent self.
      • authenticatorUpdater

        public WebAuthn authenticatorUpdater​(Function<io.vertx.ext.auth.webauthn.Authenticator,​io.vertx.core.Future<Void>> updater)
        Provide a that can update or insert a Authenticator. The function should store a given authenticator to a persistence storage. When an authenticator is already present, this method must at least update Authenticator, and is not required to perform any other update. For new authenticators, the whole object data must be persisted. The function signature is as follows: (Authenticator) -> Future
        • Authenticator the authenticator data to update.
        • async result of the operation.
        Parameters:
        updater - updater function.
        Returns:
        fluent self.
      • metaDataService

        public MetaDataService metaDataService()
        Getter to the instance FIDO2 Meta Data Service.
        Returns:
        the MDS instance.
      • newInstance

        public static WebAuthn newInstance​(io.vertx.ext.auth.webauthn.WebAuthn arg)