Package io.quarkus.vault.pki
Class GenerateRootOptions
- java.lang.Object
-
- io.quarkus.vault.pki.GenerateRootOptions
-
public class GenerateRootOptions extends Object
Options for generating a self-signed root CA.
-
-
Field Summary
Fields Modifier and Type Field Description BooleanexcludeCommonNameFromSubjectAlternativeNamesFlag determining if the Common Name (CN) of the subject will be included by default in the Subject Alternative Names of issued certificates.booleanexportPrivateKeyFlag determining if the generated private key should be exported or kept internally.DataFormatformatSpecifies returned format of certificate & private key data.List<String>ipSubjectAlternativeNamesSpecifies IP Subject Alternative Names.IntegerkeyBitsSpecifies the number of bits for the generated private key.CertificateKeyTypekeyTypeSpecifies the desired type of private key to generate, RSA or EC.IntegermaxPathLengthSpecifies the maximum path length for generated certificate.List<String>otherSubjectAlternativeNamesSpecifies custom OID/UTF8-string Subject Alternative Names.List<String>permittedDnsDomainsDNS domains for which certificates are allowed to be issued or signed by this CA certificate.PrivateKeyEncodingprivateKeyEncodingSpecifies encoding of private key data.List<String>subjectAlternativeNamesSpecifies Subject Alternative Names.StringsubjectCommonNameSpecifies Common Name (CN) of the subject.StringsubjectCountrySpecifies Country (C) of the subject.StringsubjectLocalitySpecifies Locality (L) of the subject.StringsubjectOrganizationSpecifies Organization (O) of the subject.StringsubjectOrganizationalUnitSpecifies Organizational Unit (OU) of the subject.StringsubjectPostalCodeSpecifies Postal Code of the subject.StringsubjectProvinceSpecifies Province (ST) of the subject.StringsubjectSerialNumberSpecifies the Serial Number (SERIALNUMBER) of the subject.StringsubjectStreetAddressSpecifies Street Address of the subject.StringtimeToLiveSpecifies time-to-live.List<String>uriSubjectAlternativeNamesSpecifies URI Subject Alternative Names.
-
Constructor Summary
Constructors Constructor Description GenerateRootOptions()
-
Method Summary
-
-
-
Field Detail
-
subjectCommonName
public String subjectCommonName
Specifies Common Name (CN) of the subject.
-
subjectOrganization
public String subjectOrganization
Specifies Organization (O) of the subject.
-
subjectOrganizationalUnit
public String subjectOrganizationalUnit
Specifies Organizational Unit (OU) of the subject.
-
subjectStreetAddress
public String subjectStreetAddress
Specifies Street Address of the subject.
-
subjectPostalCode
public String subjectPostalCode
Specifies Postal Code of the subject.
-
subjectLocality
public String subjectLocality
Specifies Locality (L) of the subject.
-
subjectProvince
public String subjectProvince
Specifies Province (ST) of the subject.
-
subjectCountry
public String subjectCountry
Specifies Country (C) of the subject.
-
subjectSerialNumber
public String subjectSerialNumber
Specifies the Serial Number (SERIALNUMBER) of the subject.
-
subjectAlternativeNames
public List<String> subjectAlternativeNames
Specifies Subject Alternative Names.These can be host names or email addresses; they will be parsed into their respective fields.
-
excludeCommonNameFromSubjectAlternativeNames
public Boolean excludeCommonNameFromSubjectAlternativeNames
Flag determining if the Common Name (CN) of the subject will be included by default in the Subject Alternative Names of issued certificates.
-
ipSubjectAlternativeNames
public List<String> ipSubjectAlternativeNames
Specifies IP Subject Alternative Names.
-
uriSubjectAlternativeNames
public List<String> uriSubjectAlternativeNames
Specifies URI Subject Alternative Names.
-
otherSubjectAlternativeNames
public List<String> otherSubjectAlternativeNames
Specifies custom OID/UTF8-string Subject Alternative Names.The format is the same as OpenSSL:
; : where the only current valid type is UTF8.
-
timeToLive
public String timeToLive
Specifies time-to-live.Value is specified as a string duration with time suffix. Hour is the largest supported suffix.
-
keyType
public CertificateKeyType keyType
Specifies the desired type of private key to generate, RSA or EC.
-
keyBits
public Integer keyBits
Specifies the number of bits for the generated private key.If
keyTypeisCertificateKeyType.EC, this value must be specified as well.
-
exportPrivateKey
public boolean exportPrivateKey
Flag determining if the generated private key should be exported or kept internally.
-
maxPathLength
public Integer maxPathLength
Specifies the maximum path length for generated certificate.
-
permittedDnsDomains
public List<String> permittedDnsDomains
DNS domains for which certificates are allowed to be issued or signed by this CA certificate. Subdomains are allowed, as per RFC.
-
format
public DataFormat format
Specifies returned format of certificate & private key data. If unspecified it defaults toDataFormat.PEM
-
privateKeyEncoding
public PrivateKeyEncoding privateKeyEncoding
Specifies encoding of private key data. If unspecified it defaults toPrivateKeyEncoding.PKCS8.
-
-
Method Detail
-
setSubjectCommonName
public GenerateRootOptions setSubjectCommonName(String subjectCommonName)
-
setSubjectOrganization
public GenerateRootOptions setSubjectOrganization(String subjectOrganization)
-
setSubjectOrganizationalUnit
public GenerateRootOptions setSubjectOrganizationalUnit(String subjectOrganizationalUnit)
-
setSubjectStreetAddress
public GenerateRootOptions setSubjectStreetAddress(String subjectStreetAddress)
-
setSubjectPostalCode
public GenerateRootOptions setSubjectPostalCode(String subjectPostalCode)
-
setSubjectLocality
public GenerateRootOptions setSubjectLocality(String subjectLocality)
-
setSubjectProvince
public GenerateRootOptions setSubjectProvince(String subjectProvince)
-
setSubjectCountry
public GenerateRootOptions setSubjectCountry(String subjectCountry)
-
setSubjectSerialNumber
public GenerateRootOptions setSubjectSerialNumber(String subjectSerialNumber)
-
setSubjectAlternativeNames
public GenerateRootOptions setSubjectAlternativeNames(List<String> subjectAlternativeNames)
-
setExcludeCommonNameFromSubjectAlternativeNames
public GenerateRootOptions setExcludeCommonNameFromSubjectAlternativeNames(Boolean excludeCommonNameFromSubjectAlternativeNames)
-
setIpSubjectAlternativeNames
public GenerateRootOptions setIpSubjectAlternativeNames(List<String> ipSubjectAlternativeNames)
-
setUriSubjectAlternativeNames
public GenerateRootOptions setUriSubjectAlternativeNames(List<String> uriSubjectAlternativeNames)
-
setOtherSubjectAlternativeNames
public GenerateRootOptions setOtherSubjectAlternativeNames(List<String> otherSubjectAlternativeNames)
-
setTimeToLive
public GenerateRootOptions setTimeToLive(String timeToLive)
-
setKeyType
public GenerateRootOptions setKeyType(CertificateKeyType keyType)
-
setKeyBits
public GenerateRootOptions setKeyBits(Integer keyBits)
-
setExportPrivateKey
public GenerateRootOptions setExportPrivateKey(boolean exportPrivateKey)
-
setMaxPathLength
public GenerateRootOptions setMaxPathLength(Integer maxPathLength)
-
setPermittedDnsDomains
public GenerateRootOptions setPermittedDnsDomains(List<String> permittedDnsDomains)
-
setFormat
public GenerateRootOptions setFormat(DataFormat format)
-
setPrivateKeyEncoding
public GenerateRootOptions setPrivateKeyEncoding(PrivateKeyEncoding privateKeyEncoding)
-
-