io.vertx.reactivex.ext.auth.webauthn

## Class WebAuthn

- java.lang.Object
- - io.vertx.reactivex.ext.auth.authentication.AuthenticationProvider
  - - io.vertx.reactivex.ext.auth.webauthn.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.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static io.vertx.lang.rx.TypeArg<WebAuthn>` | `__TYPE_ARG`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WebAuthn(Object delegate)`
    `WebAuthn(WebAuthn delegate)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `WebAuthn` | `authenticatorFetcher(java.util.function.Function<Authenticator,Future<List<Authenticator>>> fetcher)` Provide a that can fetch `Authenticator`s from a backend given the incomplete `Authenticator` argument.
    `WebAuthn` | `authenticatorFetcher(Function<Authenticator,Single<List<Authenticator>>> fetcher)` Provide a that can fetch `Authenticator`s from a backend given the incomplete `Authenticator` argument.
    `WebAuthn` | `authenticatorUpdater(Function<Authenticator,Completable> updater)` Provide a that can update or insert a `Authenticator`.
    `WebAuthn` | `authenticatorUpdater(java.util.function.Function<Authenticator,Future<Void>> updater)` Provide a that can update or insert a `Authenticator`.
    `static WebAuthn` | `create(Vertx vertx)` Create a WebAuthN auth provider
    `static WebAuthn` | `create(Vertx vertx, WebAuthnOptions options)` Create a WebAuthN auth provider
    `WebAuthn` | `createCredentialsOptions(JsonObject user)` Gets a challenge and any other parameters for the `navigator.credentials.create()` call.
    `WebAuthn` | `createCredentialsOptions(JsonObject user, Handler<AsyncResult<JsonObject>> handler)` Gets a challenge and any other parameters for the `navigator.credentials.create()` call.
    `boolean` | `equals(Object o)`
    `WebAuthn` | `getCredentialsOptions(String name)` Creates an assertion challenge and any other parameters for the `navigator.credentials.get()` call.
    `WebAuthn` | `getCredentialsOptions(String name, Handler<AsyncResult<JsonObject>> handler)` Creates an assertion challenge and any other parameters for the `navigator.credentials.get()` call.
    `WebAuthn` | `getDelegate()`
    `int` | `hashCode()`
    `MetaDataService` | `metaDataService()` Getter to the instance FIDO2 Meta Data Service.
    `static WebAuthn` | `newInstance(WebAuthn arg)`
    `Single<JsonObject>` | `rxCreateCredentialsOptions(JsonObject user)` Gets a challenge and any other parameters for the `navigator.credentials.create()` call.
    `Single<JsonObject>` | `rxGetCredentialsOptions(String name)` Creates an assertion challenge and any other parameters for the `navigator.credentials.get()` call.
    `String` | `toString()`

    - ### Methods inherited from class io.vertx.reactivex.ext.auth.authentication.AuthenticationProvider

      `authenticate, authenticate, authenticate, authenticate, newInstance, rxAuthenticate, rxAuthenticate`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<WebAuthn> __TYPE_ARG

  - ### Constructor Detail

    - #### WebAuthn

          public WebAuthn(WebAuthn delegate)

    - #### WebAuthn

          public WebAuthn(Object delegate)

  - ### Method Detail

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `AuthenticationProvider`

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `AuthenticationProvider`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `AuthenticationProvider`

    - #### getDelegate

          public WebAuthn getDelegate()

      Overrides:
        `getDelegate` in class `AuthenticationProvider`

    - #### 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.

    - #### createCredentialsOptions

          public WebAuthn createCredentialsOptions(JsonObject user,
                                                   Handler<AsyncResult<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(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 Single<JsonObject> rxCreateCredentialsOptions(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,
                                                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 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(java.util.function.Function<Authenticator,Future<List<Authenticator>>> fetcher)

      Provide a that can fetch `Authenticator`s 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.

    - #### authenticatorFetcher

          public WebAuthn authenticatorFetcher(Function<Authenticator,Single<List<Authenticator>>> fetcher)

      Provide a that can fetch `Authenticator`s 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(java.util.function.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.

    - #### authenticatorUpdater

          public WebAuthn authenticatorUpdater(Function<Authenticator,Completable> 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(WebAuthn arg)

Copyright © 2021 Eclipse. All rights reserved.