[
https://issues.apache.org/jira/browse/QPID-8774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Partha Sarathy Maripini updated QPID-8774:
------------------------------------------
Description:
Add the package org.apache.qpid.server.security.certificate to broker-core:
* CertificateGeneratorFactory (Pluggable, discovered with QpidServiceLoader)
creates a CertificateGenerator.
* CertificateGenerator#generate(CertificateRequest) returns a
GeneratedCertificate (private key and X.509 certificate) and reports failures
as GeneralSecurityException; no new exception types are added.
* CertificateRequest is an immutable request built with
CertificateRequest.builder(): key and signature algorithms, key length,
subject, validity, DNS names and IP addresses. It validates its input so that
every generator sees the same request.
* AbstractCertificateGeneratorContractTest, published in the broker-core test
jar, defines the behaviour every generator must meet.
was:
*Background:*
broker-core currently depends directly on Bouncy Castle libraries and exposes
BC-specific exception types during self-signed certificate generation.
*Tasks:*
1. Create a provider-agnostic interface `CertificateGeneratorProvider`
extending `org.apache.qpid.server.plugin.Pluggable`.
2. Define interface methods accepting standard JRE types
(`java.security.KeyPair`, `X500Principal` / DN string, validity days, signature
algorithm).
3. Create a generic runtime exception `CertificateGenerationException` in
`broker-core` to replace standard Bouncy Castle exception leaks.
*Acceptance Criteria:*
- broker-core contains the SPI and custom exception.
- No org.bouncycastle imports remain inside the SPI definition or exception
class.
> [Broker-J] Define a certificate generator SPI in broker-core
> ------------------------------------------------------------
>
> Key: QPID-8774
> URL: https://issues.apache.org/jira/browse/QPID-8774
> Project: Qpid
> Issue Type: Sub-task
> Components: Broker-J
> Reporter: Partha Sarathy Maripini
> Priority: Major
>
> Add the package org.apache.qpid.server.security.certificate to broker-core:
> * CertificateGeneratorFactory (Pluggable, discovered with QpidServiceLoader)
> creates a CertificateGenerator.
> * CertificateGenerator#generate(CertificateRequest) returns a
> GeneratedCertificate (private key and X.509 certificate) and reports failures
> as GeneralSecurityException; no new exception types are added.
> * CertificateRequest is an immutable request built with
> CertificateRequest.builder(): key and signature algorithms, key length,
> subject, validity, DNS names and IP addresses. It validates its input so that
> every generator sees the same request.
> * AbstractCertificateGeneratorContractTest, published in the broker-core test
> jar, defines the behaviour every generator must meet.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]