Class ChallengeController


  • @RestController
    @RequestMapping("/acme/{realm}/challenge")
    public class ChallengeController
    extends AcmeController
    • Field Detail

      • ACME_CHALLENGE_PREFIX

        public static final org.xbill.DNS.Name ACME_CHALLENGE_PREFIX
      • ACME_VALIDATION_OID

        public static final String ACME_VALIDATION_OID
        OID of the acmeValidation extension.
        See Also:
        Constant Field Values
    • Constructor Detail

      • ChallengeController

        public ChallengeController​(AcmeChallengeRepository challengeRepository,
                                   PreferenceUtil preferenceUtil,
                                   AuditService auditService,
                                   @Value("${ca3s.acme.alpn.ports:443}")
                                   int[] alpnPorts,
                                   @Value("${ca3s.dns.server:}")
                                   String resolverHost,
                                   @Value("${ca3s.dns.port:53}")
                                   int resolverPort,
                                   AcmeOrderUtil acmeOrderUtil,
                                   @Value("${ca3s.acme.ratelimit.second:0}")
                                   int rateSec,
                                   @Value("${ca3s.acme.ratelimit.minute:20}")
                                   int rateMin,
                                   @Value("${ca3s.acme.ratelimit.hour:0}")
                                   int rateHour)
                            throws UnknownHostException
        Throws:
        UnknownHostException
    • Method Detail

      • getChallenge

        @RequestMapping(value="/{challengeId}",
                        method=GET,
                        produces="application/json")
        public org.springframework.http.ResponseEntity<?> getChallenge​(@PathVariable
                                                                       long challengeId,
                                                                       @PathVariable
                                                                       String realm,
                                                                       @RequestHeader(value="X-CA3S-Forwarded-Host",required=false)
                                                                       String forwardedHost)
      • postChallenge

        @RequestMapping(value="/{challengeId}",
                        method=POST,
                        produces="application/json",
                        consumes="application/jose+json")
        public org.springframework.http.ResponseEntity<?> postChallenge​(@RequestBody
                                                                        String requestBody,
                                                                        @PathVariable
                                                                        long challengeId,
                                                                        @PathVariable
                                                                        String realm,
                                                                        @RequestHeader(value="X-CA3S-Forwarded-Host",required=false)
                                                                        String forwardedHost)
      • isChallengeSolved

        public boolean isChallengeSolved​(AcmeChallenge challengeDao)
      • checkChallenge

        public boolean checkChallenge​(AcmeChallenge challengeDao)
      • checkChallengeValidation

        public org.springframework.http.ResponseEntity<Void> checkChallengeValidation​(AcmeChallengeValidation acmeChallengeValidation)