1
0
Fork 0
mirror of https://github.com/gocsaf/csaf.git synced 2025-12-22 18:15:42 +01:00
Commit graph

69 commits

Author SHA1 Message Date
Sascha L. Teichmann
78d8b89aca
Add support for remote validation services. (#185)
* Simple tool to test the remote validation

* Added remote validator support to provider.

* Added remote validation to aggregator.

* Calm golint

* Removed csaf_remote_validator tool as it was only for dev.

* Re-added csaf_remote_validator tool. Testing is not done.

* Embed the document entirely

* Include testing the remote validator in the Itests

* Change permission of the script

* Remove code for Itests

* As these will be done in another branch

Co-authored-by: Fadi Abbud <fadi.abbud@intevation.de>
2022-06-21 14:47:06 +02:00
Bernhard E. Reiter
2961a70bf2
Change OpenPGP signatures to be without headers (#183)
* Change options when creating the armored version of the signature
   to leave out the optional headers, which would be `Version:`
   and `Comment:`, as it is considered uncommon for a while now to
   set these.
2022-06-14 13:18:42 +02:00
Sascha L. Teichmann
589547fa94
Improve writing ROLIE feed documents
* Add signature and two time has as link rel attributes to each rolie entry
   for provider and aggregator. Thus following CSAF 2.0 csd02. 
resolve #74
2022-06-14 09:50:36 +02:00
tschmidtb51
22b945a3c3
Improve provider example configuration and docs
* Change "Organization" to include the string "Company" to reflect common sense of category "vendor"
2022-06-14 08:58:11 +02:00
Fadi Abbud
714814a44b
Fix datetime format (#174)
* #173
2022-06-10 10:57:08 +02:00
Sascha L. Teichmann
69f0f3499a
Change openpgp key providing code to use local directory
* Adjust provider and aggregator to copy the used openpgp pubkey into a locally
  provided directory `openpgp` beside the `prodiver-metadata.json`.
  This more robust and self-reliant than using a public pubkey server,
  which is the reason why the CSAF 2.0 csd02 mentions it as example in
  "7.1.20 Requirement 20: Public OpenPGP Key".
 * Improve aggregator by removing a typo `aggreator` from one written paths.
   (Done with this change as it also affects the openpgp/ paths writing.)

solve #85
2022-06-09 10:42:44 +02:00
Sascha L. Teichmann
a63911be41 Fix wrong content of ROLIE link 2022-05-25 12:30:33 +02:00
Sascha L. Teichmann
de595f5da9 Add missing category list in ROLIE feeds. Resolves issue #41 2022-05-25 10:17:17 +02:00
Sascha L. Teichmann
17f22855ee
Add filename conformity check
* Add util function to check a filename for confirming to csaf-v2.0-csd02.
* Add code to reject bad filenames in provider, checker, aggregator and uploader.
2022-05-20 18:57:27 +02:00
Fadi Abbud
17ac0f399a Improve error-handling by wrong config values. 2022-05-13 11:29:19 +02:00
Sascha L. Teichmann
8a1ebe0b7a
Add aggregator; improve itest workflow
* Factor JSON evaluation and  construction base URLs out of of checker.
* Move json path matching to util.
* Add csaf_aggregator (as additional command)
* Improve itest workflow to checkout the branch where it is running on.

resolve #105
resolve  #72

Co-authored-by: tschmidtb51 <65305130+tschmidtb51@users.noreply.github.com>
Co-authored-by: Bernhard Reiter <bernhard@intevation.de>
Co-authored-by: Fadi Abbud <fadi.abbud@intevation.de>
2022-05-10 18:12:38 +02:00
Sascha L. Teichmann
06c995c030 For issue #83 2022-04-29 08:52:39 +02:00
Sascha L. Teichmann
c8b53a8143
provider/create: Update existing security.txt
* When creating a new provider setup, update the security.txt if it already exists.
   Put the csaf line on the top, so it may be prefered.

resolve #35
2022-04-22 17:57:58 +02:00
Bernhard Reiter
cbb41588ea
Fix minor typos in code comments 2022-04-21 15:40:56 +02:00
Fadi Abbud
6fe6907c1d
Add --version option
* Add flag to display the version for each binary. It is based on `git describe` but adds
  a number to the PATCH level if we are between annotated tags, so makes it semver.org
 compatible. Use the "-ldflags" method that also works with go 1.17.
* Use Makefile bash and sed magic to do PATCH level increase if needed.

Co-authored-by: Bernhard Reiter <bernhard@intevation.de>
2022-04-13 14:27:11 +02:00
Bernhard Reiter
21eb768a05
Improve providers handlung of tls client certs
* Change logging logic to print out the Issuer when a certificate
   was presented.
2022-03-31 12:00:13 +02:00
Fadi Abbud
782d653e59 Issuer documentation
* Documentation for the "issuer" option of the provider.
* More info of the format of the accepted file
* Print out the value of `SSL_CLIENT_I_DN` also when it is not match the issuer.
2022-03-24 16:46:47 +01:00
Bernhard E. Reiter
1d7e7a3124
Merge branch 'main' into client-certificate 2022-03-23 20:19:51 +01:00
Bernhard Reiter
3753f08370
Merge branch 'main' into client-certificate 2022-03-23 20:12:36 +01:00
Fadi Abbud
5e1f2092e8
add setup options to provider docs
* Add a first description of the config options for csaf_provider.
 * Change option name from `domain` to `canonical_prefix_url`
    to make the usage more intuitively. Use`https` in the default,
    if unset.

resolve #32 

Co-authored-by: Bernhard E. Reiter <bernhard@intevation.de>
Co-authored-by: tschmidtb51 <65305130+tschmidtb51@users.noreply.github.com>
2022-03-23 19:48:05 +01:00
Sascha L. Teichmann
737fc89cd5 Made the issuer optional if using client sides certs for auth. 2022-03-07 13:27:22 +01:00
Bernhard Reiter
1f4f32435d
Fixing `CASF' typos
* Bump copyright year 2021 -> 2022 on a few files.
2022-02-25 17:38:07 +01:00
Sascha L. Teichmann
b12ad718c5 Factor out summary extraction from advisories. 2022-02-24 12:22:10 +01:00
Sascha L. Teichmann
4fc6bc5509 Add another layer aound the ROLIE feed documents. 2022-02-23 21:10:19 +01:00
Fadi Abbud
9e422d5ad2 Add one config option (provider)
* "Issuer" config option for setting the CA issuer, these is used to
determine the valid TLS client certificates that allowed to access the
web-interface of the provider.
2022-02-22 08:37:51 +01:00
Sascha L. Teichmann
57f43b9d7c Restore output of found value 2022-02-17 10:41:52 +01:00
Sascha L. Teichmann
cffc7aaa66 Merge branch 'main' into improve_tlp_error_message 2022-02-17 10:34:03 +01:00
Sascha L. Teichmann
81fa044bf0 Made auth middleware more readable. 2022-02-15 20:55:19 +01:00
Bernhard Reiter
dbf52223e9
Fix code format in cmd/csaf_provider/controller.go 2022-02-15 18:26:11 +01:00
Bernhard Reiter
2905a30cc0
Improve tls client cert handling
* Improve nginx setup to transfer auth information to the fcgiwrap
 backend.
 * Add instructions for creating client certs for testing.
 * Add debug output to see if and which client cert has been used when
   calling the csaf_provider.go .
2022-02-15 18:20:24 +01:00
Fadi Abbud
c43d690b57 Fix Typo 2022-02-07 13:23:09 +01:00
Fadi Abbud
e8cbab2c29 Add some documentation (controller) 2022-02-07 13:00:28 +01:00
Fadi Abbud
b872f28acd Add some code documentation 2022-02-03 15:18:40 +01:00
Fadi Abbud
54465b54ad Improve error message of missing tlp
* #34
2022-01-26 12:26:13 +01:00
Sascha L. Teichmann
dab359dd91 Place CSAF files in the right folder. 2021-12-16 15:53:44 +01:00
Sascha L. Teichmann
86c6b425b5 Merge branch 'main' into csaf-checker-tests 2021-12-15 11:18:22 +01:00
Sascha L. Teichmann
bba9dcec8f Make CSAF upload size configurable. Defaults to 50MB 2021-12-14 22:04:44 +01:00
Sascha L. Teichmann
f945937a6d Implemented loading of PGP keys. 2021-12-13 19:24:44 +01:00
Sascha L. Teichmann
98525ab758 Adjust default OpenPGP URL and replace fingeprint ans key id. 2021-12-12 22:36:07 +01:00
Fadi Abbud
901e5bed74 Add License headers 2021-12-09 16:19:26 +01:00
Sascha L. Teichmann
8e998dd058 No need for io.Copy when writing to hash. 2021-12-09 12:21:32 +01:00
Sascha L. Teichmann
2fb2dfda78 Moved commonly use file operations to separate package. 2021-12-09 11:55:22 +01:00
Sascha L. Teichmann
d335ad1b84 Added server config and middleware to use password to protect endpoints. 2021-12-06 17:24:45 +01:00
Sascha L. Teichmann
52b586d82f Added JSON endpoints. Made Web UI optional. 2021-12-05 21:20:27 +01:00
Sascha L. Teichmann
565238da9a Separated result rendering from controller actions. 2021-12-05 15:20:50 +01:00
Sascha L. Teichmann
8c272fef2a Replaced JSON schema library with a MIT licenensed one. 2021-12-03 02:28:16 +01:00
Sascha L. Teichmann
78f0b2db0b Validate CSAF documents against JSON schema. 2021-12-02 23:38:09 +01:00
Sascha L. Teichmann
f77bb5f1a8 Added default publisher if not configured. Warning if uploads don't have the same publisher as in metadata. 2021-12-02 10:51:25 +01:00
Sascha L. Teichmann
e5a6a8e2da Fixed TLP model conversion. Fixed wrong .well-known path 2021-12-02 01:36:57 +01:00
Sascha L. Teichmann
048c0dce89 Added "0x" before key id in openpgp url to make search on key server happy. 2021-12-02 00:56:21 +01:00