Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CSRSubject ¶
type CertificateUtility ¶
type CertificateUtility interface { LoadCert(encodedData []byte) (*x509.Certificate, apperrors.AppError) LoadKey(encodedData []byte) (*rsa.PrivateKey, apperrors.AppError) LoadCSR(encodedData []byte) (*x509.CertificateRequest, apperrors.AppError) CheckCSRValues(csr *x509.CertificateRequest, subject CSRSubject) apperrors.AppError SignCSR(caCrt *x509.Certificate, csr *x509.CertificateRequest, caKey *rsa.PrivateKey) ([]byte, apperrors.AppError) }
func NewCertificateUtility ¶
func NewCertificateUtility(certificateValidityTime time.Duration) CertificateUtility
type EncodedCertificateChain ¶
type Service ¶
type Service interface { // SignCSR takes encoded CSR, validates subject and generates Certificate based on CA stored in secret // returns base64 encoded certificate chain SignCSR(encodedCSR []byte, commonName string) (EncodedCertificateChain, apperrors.AppError) }
func NewCertificateService ¶
func NewCertificateService(secretRepository secrets.Repository, certUtil CertificateUtility, caSecretName string, csrSubject CSRSubject) Service
Click to show internal directories.
Click to hide internal directories.