All Implemented Interfaces:
ApiRequest<IssueCertificate.Request>
Enclosing class:
IssueCertificate

public static final class IssueCertificate.Request extends VaultRequest<IssueCertificate.Request>
Request object. Can be configured with additional headers, query parameters etc.
  • Method Details

    • builder

      public static IssueCertificate.Request builder()
      Fluent API builder for configuring a request. The request builder is passed as is, without a build method. The equivalent of a build method is ApiJsonBuilder.toJson(jakarta.json.JsonBuilderFactory) used by the RestApi.
      Returns:
      new request builder
    • addAltName

      public IssueCertificate.Request addAltName(String name)
      Specifies requested Subject Alternative Name(s). These can be host names or email addresses; they will be parsed into their respective fields. If any requested names do not match role policy, the entire request will be denied.
      Parameters:
      name - alt name
      Returns:
      updated request
    • addIpSan

      public IssueCertificate.Request addIpSan(String subjectAlternativeName)
      Specifies requested IP Subject Alternative Name(s). Only valid if the role allows IP SANs (which is the default).
      Parameters:
      subjectAlternativeName - IP subject alternative name
      Returns:
      updated request
    • addUriSan

      public IssueCertificate.Request addUriSan(String subjectAlternativeName)
      Specifies the requested URI Subject Alternative Name(s).
      Parameters:
      subjectAlternativeName - URI subject alternative name
      Returns:
      updated request
    • addOtherSan

      public IssueCertificate.Request addOtherSan(String oid, String value)
      Specifies custom OID/UTF8-string SANs. These must match values specified on the role in allowed_other_sans (see role creation for allowed_other_sans globbing rules). The format is the same as OpenSSL: <oid>:<type>:<value> where the type is hardcoded to UTF8.
      Parameters:
      oid - OID of the subject alternative name
      value - value of the subject alternative name
      Returns:
      updated request
    • ttl

      public IssueCertificate.Request ttl(Duration duration)
      Specifies requested Time To Live. Cannot be greater than the role's max_ttl value. If not provided, the role's ttl value will be used. Note that the role values default to system values if not explicitly set.
      Parameters:
      duration - time to live
      Returns:
      updated request
    • excludeCnFromSans

      public IssueCertificate.Request excludeCnFromSans(boolean exclude)
      If true, the given common_name will not be included in DNS or Email Subject Alternate Names (as appropriate). Useful if the CN is not a hostname or email address, but is instead some human-readable identifier.
      Parameters:
      exclude - whether to exclude CN from subject alternative names
      Returns:
      updated request
    • commonName

      public IssueCertificate.Request commonName(String commonName)
    • format

      public IssueCertificate.Request format(PkiFormat format)
    • roleName

      public IssueCertificate.Request roleName(String roleName)