Commit Graph

72 Commits (c0a1837cd9d31f9db253befabfe751061a1abfd4)

Author SHA1 Message Date
Herman Slatman c0a1837cd9
Verify full decrypter/signer configuration at usage time
When changing the SCEP configuration it is possible that one
or both of the decrypter configurations required are not available
or have been provided in a way that's not usable for actual SCEP
requests.

Instead of failing hard when provisioners are loaded,
which could result in the CA not starting properly, this type of
problematic configuration errors will now be handled at usage
time instead.
11 months ago
Herman Slatman 0f35bb1af5
Defer missing decrypter/signer configuration errors to SCEP authority 11 months ago
Herman Slatman fc1fb51854
Improve SCEP authority initialization and reload 11 months ago
Herman Slatman 7163c4f95f
Add helper for getting the appropriate SCEP response signer 11 months ago
Herman Slatman 567fc25404
Use the RSA decryption configuration for signing responses too 11 months ago
Herman Slatman 557672bb4b
Add some notes for SCEP provisioners 11 months ago
Herman Slatman b2bf2c330b
Simplify SCEP provisioner context handling 1 year ago
Herman Slatman 8fc3a46387
Refactor the SCEP authority initialization
Instead of relying on an intermediate `scep.Service` struct,
initialize the `scep.Authority` directly. This removes one redundant
layer of indirection.
1 year ago
Herman Slatman 6985b4be62
Clean up the SCEP authority and provisioner 1 year ago
Herman Slatman 180162bd6a
Refactor SCEP provisioner and decrypter 1 year ago
Herman Slatman 0377fe559b
Add basic version of provisioner specific SCEP decrypter 1 year ago
max furman 8b256f0351
address linter warning for go 1.19 1 year ago
Herman Slatman e8c1e8719d
Refactor SCEP webhook validation 1 year ago
Herman Slatman 668ff9b515
Cleanup some comments and tests 1 year ago
Herman Slatman 5f0f0f4bcc
Add SCEP webhook validation tests 1 year ago
Herman Slatman ad4d8e6c68
Add `SCEPCHALLENGE` as valid webhook type in admin API 1 year ago
Herman Slatman 419478d1e5
Make SCEP webhook validation look better 1 year ago
Herman Slatman 27cdcaf5ee
Integrate the SCEP webhook with the existing webhook logic 1 year ago
Herman Slatman 05f7ab979f
Create basic webhook for SCEP challenge validation 1 year ago
Andrew Reed 7101fbb0ee
Provisioner webhooks (#1001) 2 years ago
max furman ab0d2503ae
Standardize linting file and fix or ignore lots of linting errors 2 years ago
Mariano Cano 400b1ece0b Remove scep handler after merge. 2 years ago
Mariano Cano 898ca41268 Merge branch 'master' into context-authority 2 years ago
Herman Slatman 688ae837a4
Add some tests for SCEP request decoding 2 years ago
Mariano Cano d51c6b7d83 Make step handler backward compatible 2 years ago
Mariano Cano 9147356d8a Fix linter errors 2 years ago
Herman Slatman 13173ec8a2
Fix SCEP GET requests 2 years ago
Mariano Cano 42435ace64 Use scep authority from context
This commit also converts all the methods from the handler to
functions.
2 years ago
Mariano Cano 688f9ceb56 Add scep authority to context. 2 years ago
Panagiotis Siatras e27124b037
scep: remove Interface and the dependency to pkg/errors (#872)
* scep: documented the package

* scep/api: removed some top level constants

* scep: removed dependency to pkg/errors

* scep/api: documented the package
2 years ago
Panagiotis Siatras b98f86a515
scep: minor cleanup (#867)
* api, scep: removed scep.Error

* scep/api: replaced nextHTTP with http.HandlerFunc

* scep/api: renamed writeSCEPResponse to writeResponse

* scep/api: renamed decodeSCEPRequest to decodeRequest

* scep/api: renamed writeError to fail

* scep/api: replaced pkg/errors with errors

* scep/api: formatted imports

* scep/api: do not export SCEPRequest & SCEPResponse

* scep/api: do not export Handler

* api: flush errors better
2 years ago
Panagiotis Siatras 80abda22ee
api/log: initial implementation of the package (#859)
* api/log: initial implementation of the package

* api: refactored to support api/log

* scep/api: refactored to support api/log

* api/log: documented the package

* api: moved log-related tests to api/log
2 years ago
Herman Slatman 15477f6d7b
Make custom SCEP CA paths automagic 2 years ago
Herman Slatman a3cda9c3d7
Add configuration for custom path segment
To support SCEP clients that expect a specific path segment in
a SCEP URL, a new "customPath" option was added to the SCEP
provisioner configuration. The configuration can be used to set
a specific path (segment) that the SCEP provisioner will respond to.
2 years ago
Herman Slatman 5f42ae0bce
Remove unused function LoadProvisionerByID from SCEP 2 years ago
Herman Slatman 3b72d241e0
Add LinkedCA integration for improved SCEP provisioner 2 years ago
Herman Slatman 64680bb16d
Fix PR comments 2 years ago
Herman Slatman 3612eefc31
Cleanup 2 years ago
Herman Slatman 9c6580ccd2
Fix macOS SCEP client issues
Fixes #746
2 years ago
Herman Slatman e7a988b2cd
Pin golangci-lint to v1.43.0 and fix issues 3 years ago
max furman 933b40a02a Introduce gocritic linter and address warnings 3 years ago
Herman Slatman 54610e890b
Improve error logging 3 years ago
Herman Slatman c3d9cef497
Update to v2.0.0 of github.com/micromdm/scep 3 years ago
Herman Slatman 9bda3c465a
Add more template data 3 years ago
Herman Slatman b815478981
Make serving SCEP endpoints optional
Only when a SCEP provisioner is enabled, the SCEP endpoints
will now be available.

The SCEP endpoints will be served on an "insecure" server,
without TLS, only when an additional "insecureAddress" and a
SCEP provisioner are configured for the CA.
3 years ago
Herman Slatman 69d701062a
Fix typo 3 years ago
Herman Slatman 65aab963c9
Add validation to SCEP Options 3 years ago
Herman Slatman b97f024f8a
Remove superfluous call to StoreCertificate 3 years ago
Herman Slatman 583d60dc0d
Address (most) PR comments 3 years ago
Herman Slatman a4844fee7b
Make tests green 3 years ago