Class RoleOptions
- java.lang.Object
-
- io.quarkus.vault.pki.RoleOptions
-
public class RoleOptions extends Object
Options for PKI roles.
-
-
Field Summary
Fields Modifier and Type Field Description BooleanallowAnyNameSpecifies if clients can request any Common Name (CN).BooleanallowBareDomainsSpecifies if clients can request certificates matching the value of the actual domains themselves.List<String>allowedDomainsSpecifies domains allowed on issued certificates.List<String>allowedOtherSubjectAlternativeNamesDefines allowed custom OID/UTF8-string Subject Alternative Names.List<String>allowedSubjectSerialNumbersSpecifies allowed Serial Number (SERIALNUMBER) values of the subject on issued certificates.List<String>allowedUriSubjectAlternativeNamesDefines allowed URI Subject Alternative Names.BooleanallowGlobsInAllowedDomainsAllows names specified inallowedDomainsto contain glob patterns (e.g.BooleanallowIpSubjectAlternativeNamesSpecifies if clients can request IP Subject Alternative Names.BooleanallowLocalhostSpecifies if clients can request certificates for localhost as one of the requested common names.BooleanallowSubdomainsSpecifies if clients can request certificates with a Common Name (CN) that is a subdomain of the domains allowed by the other role options.BooleanallowTemplatesInAllowedDomainsFlag allowing templates to be used inallowedDomains.BooleanbasicConstraintsValidForNonCAMark Basic Constraints valid when issuing non-CA certificates.BooleanclientFlagSpecifies if certificates are flagged for client use.BooleancodeSigningFlagSpecifies if certificates are flagged for code signing use.BooleanemailProtectionFlagSpecifies if certificates are flagged for email protection use.BooleanenforceHostnamesSpecifies if only valid host names are allowed for Common Names, DNS Subject Alternative Names, and the host part of email addresses.List<String>extendedKeyUsageOIDsSpecifies extended key usage OIDs.List<CertificateExtendedKeyUsage>extendedKeyUsagesSpecifies the allowed extended key usage constraint on issued certificates.BooleangenerateLeaseSpecifies if certificates issued/signed against this role will have Vault leases attached to them.IntegerkeyBitsSpecifies the number of bits to use for the generated keys.CertificateKeyTypekeyTypeSpecifies the type of private keys to generate and the type of key expected for submitted CSRs.List<CertificateKeyUsage>keyUsagesSpecifies the allowed key usage constraint on issued certificates.StringmaxTimeToLiveSpecifies maximum allowed time-to-live.BooleannoStoreFlag determining if certificates issued/signed against this role will be stored in the storage backend.StringnotBeforeDurationSpecifies the duration by which to backdate on issued certificates not-before.List<String>policyOIDsList of policy OIDs.BooleanrequireCommonNameFlag determining if the Common Name (CN) field is required when generating a certificate.BooleanserverFlagSpecifies if certificates are flagged for server use.StringsubjectCountrySpecifies Country (C) of the subject on issued certificates.StringsubjectLocalitySpecifies Locality (L) of the subject on issued certificates.StringsubjectOrganizationSpecifies Organization (O) of the subject on issued certificates.StringsubjectOrganizationalUnitSpecifies Organizational Unit (OU) of the subject on issued certificates.StringsubjectPostalCodeSpecifies Postal Code of the subject on issued certificates.StringsubjectProvinceSpecifies Province (ST) of the subject on issued certificates.StringsubjectStreetAddressSpecifies Street Address of the subject on issued certificates.StringtimeToLiveSpecifies default request time-to-live.BooleanuseCSRCommonNameFlag determining if the Common Name in the CSR will be used instead of that specified in request data.BooleanuseCSRSubjectAlternativeNamesFlag determining if the Subject Alternative Names in the CSR will be used instead of that specified in request data.
-
Constructor Summary
Constructors Constructor Description RoleOptions()
-
Method Summary
-
-
-
Field Detail
-
timeToLive
public String timeToLive
Specifies default request time-to-live.Value is specified as a string duration with time suffix. Hour is the largest supported suffix.
-
maxTimeToLive
public String maxTimeToLive
Specifies maximum allowed time-to-live.Value is specified as a string duration with time suffix. Hour is the largest supported suffix.
-
allowLocalhost
public Boolean allowLocalhost
Specifies if clients can request certificates for localhost as one of the requested common names.
-
allowTemplatesInAllowedDomains
public Boolean allowTemplatesInAllowedDomains
Flag allowing templates to be used inallowedDomains.- See Also:
- ACL Path Templating
-
allowBareDomains
public Boolean allowBareDomains
Specifies if clients can request certificates matching the value of the actual domains themselves.
-
allowSubdomains
public Boolean allowSubdomains
Specifies if clients can request certificates with a Common Name (CN) that is a subdomain of the domains allowed by the other role options. This includes wildcard subdomains.
-
allowGlobsInAllowedDomains
public Boolean allowGlobsInAllowedDomains
Allows names specified inallowedDomainsto contain glob patterns (e.g. ftp*.example.com).
-
allowAnyName
public Boolean allowAnyName
Specifies if clients can request any Common Name (CN).
-
enforceHostnames
public Boolean enforceHostnames
Specifies if only valid host names are allowed for Common Names, DNS Subject Alternative Names, and the host part of email addresses.
-
allowIpSubjectAlternativeNames
public Boolean allowIpSubjectAlternativeNames
Specifies if clients can request IP Subject Alternative Names.
-
allowedUriSubjectAlternativeNames
public List<String> allowedUriSubjectAlternativeNames
Defines allowed URI Subject Alternative Names.Values can contain glob patterns (e.g. spiffe://hostname/*).
-
allowedOtherSubjectAlternativeNames
public List<String> allowedOtherSubjectAlternativeNames
Defines allowed custom OID/UTF8-string Subject Alternative Names.The format is the same as OpenSSL:
; : where the only current valid type is UTF8.
-
serverFlag
public Boolean serverFlag
Specifies if certificates are flagged for server use.
-
clientFlag
public Boolean clientFlag
Specifies if certificates are flagged for client use.
-
codeSigningFlag
public Boolean codeSigningFlag
Specifies if certificates are flagged for code signing use.
-
emailProtectionFlag
public Boolean emailProtectionFlag
Specifies if certificates are flagged for email protection use.
-
keyType
public CertificateKeyType keyType
Specifies the type of private keys to generate and the type of key expected for submitted CSRs.
-
keyBits
public Integer keyBits
Specifies the number of bits to use for the generated keys.If
keyTypeisCertificateKeyType.EC, this value must be specified as well.
-
keyUsages
public List<CertificateKeyUsage> keyUsages
Specifies the allowed key usage constraint on issued certificates.
-
extendedKeyUsages
public List<CertificateExtendedKeyUsage> extendedKeyUsages
Specifies the allowed extended key usage constraint on issued certificates.
-
useCSRCommonName
public Boolean useCSRCommonName
Flag determining if the Common Name in the CSR will be used instead of that specified in request data.Only applies to certificates signed using
VaultPKISecretEngine.signRequest(String, String, GenerateCertificateOptions)
-
useCSRSubjectAlternativeNames
public Boolean useCSRSubjectAlternativeNames
Flag determining if the Subject Alternative Names in the CSR will be used instead of that specified in request data.Only applies to certificates signed using
VaultPKISecretEngine.signRequest(String, String, GenerateCertificateOptions)
-
subjectOrganization
public String subjectOrganization
Specifies Organization (O) of the subject on issued certificates.
-
subjectOrganizationalUnit
public String subjectOrganizationalUnit
Specifies Organizational Unit (OU) of the subject on issued certificates.
-
subjectStreetAddress
public String subjectStreetAddress
Specifies Street Address of the subject on issued certificates.
-
subjectPostalCode
public String subjectPostalCode
Specifies Postal Code of the subject on issued certificates.
-
subjectLocality
public String subjectLocality
Specifies Locality (L) of the subject on issued certificates.
-
subjectProvince
public String subjectProvince
Specifies Province (ST) of the subject on issued certificates.
-
subjectCountry
public String subjectCountry
Specifies Country (C) of the subject on issued certificates.
-
allowedSubjectSerialNumbers
public List<String> allowedSubjectSerialNumbers
Specifies allowed Serial Number (SERIALNUMBER) values of the subject on issued certificates.
-
generateLease
public Boolean generateLease
Specifies if certificates issued/signed against this role will have Vault leases attached to them.
-
noStore
public Boolean noStore
Flag determining if certificates issued/signed against this role will be stored in the storage backend.
-
requireCommonName
public Boolean requireCommonName
Flag determining if the Common Name (CN) field is required when generating a certificate.
-
basicConstraintsValidForNonCA
public Boolean basicConstraintsValidForNonCA
Mark Basic Constraints valid when issuing non-CA certificates.
-
notBeforeDuration
public String notBeforeDuration
Specifies the duration by which to backdate on issued certificates not-before.Value is specified as a string duration with time suffix. Hour is the largest supported suffix.
-
-
Method Detail
-
setTimeToLive
public RoleOptions setTimeToLive(String timeToLive)
-
setMaxTimeToLive
public RoleOptions setMaxTimeToLive(String maxTimeToLive)
-
setAllowLocalhost
public RoleOptions setAllowLocalhost(Boolean allowLocalhost)
-
setAllowedDomains
public RoleOptions setAllowedDomains(List<String> allowedDomains)
-
setAllowTemplatesInAllowedDomains
public RoleOptions setAllowTemplatesInAllowedDomains(Boolean allowTemplatesInAllowedDomains)
-
setAllowBareDomains
public RoleOptions setAllowBareDomains(Boolean allowBareDomains)
-
setAllowSubdomains
public RoleOptions setAllowSubdomains(Boolean allowSubdomains)
-
setAllowGlobsInAllowedDomains
public RoleOptions setAllowGlobsInAllowedDomains(Boolean allowGlobsInAllowedDomains)
-
setAllowAnyName
public RoleOptions setAllowAnyName(Boolean allowAnyName)
-
setEnforceHostnames
public RoleOptions setEnforceHostnames(Boolean enforceHostnames)
-
setAllowIpSubjectAlternativeNames
public RoleOptions setAllowIpSubjectAlternativeNames(Boolean allowIpSubjectAlternativeNames)
-
setAllowedUriSubjectAlternativeNames
public RoleOptions setAllowedUriSubjectAlternativeNames(List<String> allowedUriSubjectAlternativeNames)
-
setAllowedOtherSubjectAlternativeNames
public RoleOptions setAllowedOtherSubjectAlternativeNames(List<String> allowedOtherSubjectAlternativeNames)
-
setServerFlag
public RoleOptions setServerFlag(Boolean serverFlag)
-
setClientFlag
public RoleOptions setClientFlag(Boolean clientFlag)
-
setCodeSigningFlag
public RoleOptions setCodeSigningFlag(Boolean codeSigningFlag)
-
setEmailProtectionFlag
public RoleOptions setEmailProtectionFlag(Boolean emailProtectionFlag)
-
setKeyType
public RoleOptions setKeyType(CertificateKeyType keyType)
-
setKeyBits
public RoleOptions setKeyBits(Integer keyBits)
-
setKeyUsages
public RoleOptions setKeyUsages(List<CertificateKeyUsage> keyUsages)
-
setExtendedKeyUsages
public RoleOptions setExtendedKeyUsages(List<CertificateExtendedKeyUsage> extendedKeyUsages)
-
setExtendedKeyUsageOIDs
public RoleOptions setExtendedKeyUsageOIDs(List<String> extendedKeyUsageOIDs)
-
setUseCSRCommonName
public RoleOptions setUseCSRCommonName(Boolean useCSRCommonName)
-
setUseCSRSubjectAlternativeNames
public RoleOptions setUseCSRSubjectAlternativeNames(Boolean useCSRSubjectAlternativeNames)
-
setSubjectOrganization
public RoleOptions setSubjectOrganization(String subjectOrganization)
-
setSubjectOrganizationalUnit
public RoleOptions setSubjectOrganizationalUnit(String subjectOrganizationalUnit)
-
setSubjectStreetAddress
public RoleOptions setSubjectStreetAddress(String subjectStreetAddress)
-
setSubjectPostalCode
public RoleOptions setSubjectPostalCode(String subjectPostalCode)
-
setSubjectLocality
public RoleOptions setSubjectLocality(String subjectLocality)
-
setSubjectProvince
public RoleOptions setSubjectProvince(String subjectProvince)
-
setSubjectCountry
public RoleOptions setSubjectCountry(String subjectCountry)
-
setAllowedSubjectSerialNumbers
public RoleOptions setAllowedSubjectSerialNumbers(List<String> allowedSubjectSerialNumbers)
-
setGenerateLease
public RoleOptions setGenerateLease(Boolean generateLease)
-
setNoStore
public RoleOptions setNoStore(Boolean noStore)
-
setRequireCommonName
public RoleOptions setRequireCommonName(Boolean requireCommonName)
-
setPolicyOIDs
public RoleOptions setPolicyOIDs(List<String> policyOIDs)
-
setBasicConstraintsValidForNonCA
public RoleOptions setBasicConstraintsValidForNonCA(Boolean basicConstraintsValidForNonCA)
-
setNotBeforeDuration
public RoleOptions setNotBeforeDuration(String notBeforeDuration)
-
-