Comments (5)
Hi @kimmerin!
The CSRBuilder
was designed for simplicity. acme4j itself does not care much about where the CSR comes from, it just expects a binary encoded CSR document. So you could also implement your own CSR generator if you have further demands on its contents.
Internally BouncyCastle's X500NameBuilder
is used, so there is no way to offer a setX500Name()
or setRDN()
method without having to do major rewrites of the CSRBuilder
.
However, what I could offer is to add a modifyX500Name(Consumer<X500NameBuilder> builder)
method that permits to add further RDN
to the X500NameBuilder
, e.g.:
CSRBuilder csrb = new CSRBuilder();
csrb.addDomain("example.org");
// add a custom UID RDN
csrb.modifyX500Name(b -> b.addRDN(BCStyle.UID, "123456"));
csrb.sign(domainKeyPair);
byte[] csr = csrb.getEncoded();
Would that help you?
from acme4j.
I was thinking of something like this:
public void addValue(String attName, String value) {
ASN1ObjectIdentifier oid = X500Name.getDefaultStyle().attrNameToOID(attName);
addValue(oid, value);
}
public void addValue(ASN1ObjectIdentifier oid, String value) {
if (oid.equals(BCStyle.CN)) {
addDomain(value);
return;
}
namebuilder.addRDN(oid, value);
}
I can do this change, add javadocs, create unit tests around it and start a pull request if you want.
from acme4j.
Sure, a pull request would be fine! Thank you!
from acme4j.
Closed via #129.
from acme4j.
Sorry for the delay! Your change is now published in acme4j v2.14. It is available in the release section, and should be available at Maven Central within the next couple of hours.
from acme4j.
Related Issues (20)
- Getting urn:ietf:params:acme:error:unauthorized in http-01 challenge HOT 2
- Intermediate certificate required. Unable to get issuer certificate. HOT 6
- RFC8823: acme4j response does not match CA expectation HOT 8
- [Feature request / acme4j-smime] Add support for S/MIME validation HOT 16
- Create order failing with AcmeServerException without any exception message HOT 2
- Getting Unable to get local issuer certificate HOT 3
- Android: order is valid however certificate chain is not correctly downloaded HOT 19
- [Feature request / acme4j] Allow to access delegations HOT 1
- Remove service loader mechanism HOT 3
- Did you find any provider for RFC8823 support / email-reply-00 challenges? HOT 4
- Orders required but not set when getting orders HOT 1
- Handle /directory cache errors gracefully HOT 4
- Example url not found HOT 2
- Does acme4j support โalternateโ link relation? HOT 3
- how to hold Order and Authorization for a while HOT 2
- Unable to update challenge :: authorization must be pending HOT 4
- Unable to update account message HOT 6
- [Question] How to generate .pfx or .p12 (KeyStore) file? HOT 7
- Recovery from - Too many certificates already issued for exact set of domains HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from acme4j.