Class UserIdentity.UserIdentityBuilder

java.lang.Object
com.yubico.webauthn.data.UserIdentity.UserIdentityBuilder
Enclosing class:
UserIdentity

public static class UserIdentity.UserIdentityBuilder extends Object
  • Method Details

    • name

      public UserIdentity.UserIdentityBuilder name(@NonNull @NonNull String name)
      A human-palatable identifier for a user account. It is intended only for display, i.e., aiding the user in determining the difference between user accounts with similar displayNames.

      For example: "alexm", "alex.p.mueller@example.com" or "+14255551234".

      Returns:
      this.
    • displayName

      public UserIdentity.UserIdentityBuilder displayName(@NonNull @NonNull String displayName)
      A human-palatable name for the user account, intended only for display. For example, "Alex P. Müller" or "田中 倫". The Relying Party SHOULD let the user choose this, and SHOULD NOT restrict the choice more than necessary.
      • Relying Parties SHOULD perform enforcement, as prescribed in Section 2.3 of [RFC8266] for the Nickname Profile of the PRECIS FreeformClass [RFC8264], when setting displayName's value, or displaying the value to the user.
      • Clients SHOULD perform enforcement, as prescribed in Section 2.3 of [RFC8266] for the Nickname Profile of the PRECIS FreeformClass [RFC8264], on displayName's value prior to displaying the value to the user or including the value as a parameter of the authenticatorMakeCredential operation.

      When clients, client platforms, or authenticators display a displayName's value, they should always use UI elements to provide a clear boundary around the displayed value, and not allow overflow into other elements.

      Authenticators MUST accept and store a 64-byte minimum length for a displayName member's value. Authenticators MAY truncate a displayName member's value to a length equal to or greater than 64 bytes.

      Returns:
      this.
      See Also:
    • id

      public UserIdentity.UserIdentityBuilder id(@NonNull @NonNull ByteArray id)
      The user handle for the account, specified by the Relying Party.

      A user handle is an opaque byte sequence with a maximum size of 64 bytes. User handles are not meant to be displayed to users. The user handle SHOULD NOT contain personally identifying information about the user, such as a username or e-mail address; see §14.9 User Handle Contents for details.

      To ensure secure operation, authentication and authorization decisions MUST be made on the basis of this id member, not the displayName nor name members. See Section 6.1 of RFC 8266.

      An authenticator will never contain more than one credential for a given Relying Party under the same user handle.

      Returns:
      this.
    • build

      public UserIdentity build()
    • toString

      public String toString()
      Overrides:
      toString in class Object