Class WebAuthn

    • Constructor Detail

      • WebAuthn

        public 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,
                                      WebAuthnOptions options)
        Create a WebAuthN auth provider
        Parameters:
        vertx - the Vertx instance.
        options - the custom options to the provider.
        Returns:
        the auth provider.
      • getCredentialsOptions

        public WebAuthn getCredentialsOptions​(String name,
                                              Handler<AsyncResult<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<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<Authenticator,​Future<List<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: 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<Authenticator,​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.