-
Notifications
You must be signed in to change notification settings - Fork 321
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add an offline flag to disable network requests #5475
Comments
Thanks @connorg for the feedback. Notifying our users on new versions is a service we want to keep and it's quite common for software with time based releases like KICS (minor release every ~2 weeks). If the number of the new version is what confuses GitLab users, we can work around that to just mention a newer version is available. BTW, How do you present the current KICS version? For other readers - KICS works well even without network access, the relevant functions would just timeout and the scan would be done the same way. |
Hey @kaplanlior, thanks for the response!
Understood. We're/I'm not proposing to remove it or other network-dependent functions, only to make it possible to disable them for users who don't want them or can't use them (for security or privacy reasons, among others).
I don't necessarily want to overrotate on the version message issue, but we print the GitLab analyzer version in the beginning of our default logging output, for example, It also wouldn't necessarily be true that there would be a new GitLab analyzer version available if the message were changed, since we release updates only after going through validation. (Analyzer updates aren't always available immediately after the kics upstream release, though we aim to minimize the lag.)
We have a large number of users who operate disconnected from the public Internet; I understand that the timeout isn't that high but penalizing every run for these users by 20 seconds does feel a little unnecessary. (EDIT: I suppose an NXDOMAIN might come back faster than that.) kics/pkg/descriptions/client.go Line 47 in 985aa68
We also have been surprised in the past by changes like the CIS version descriptions being downloaded and replacing existing text, as another example, and we would've been concerned about privacy impacts of telemetry/crash reporting (for similar reasons as #3041) were the disable-telemetry option not available at the time we began looking at kics. It was surprising that we didn't have a single place where we could say, "we'd like to operate self-contained, please" but rather had to disable each of these in different ways. Hope that explains the use case and rationale a little bit more. |
Hi @kaplanlior or other team members! Just wanted to check in on this. We'd be happy to contribute to this if such a contribution would be accepted. |
Hi @connorg, Hope this message finds you well! Kindly tell me if this command is what you looking for! |
Is your feature request related to a problem? Please describe.
kics uses network calls in various places (CIS descriptions, version check, etc.) which makes sense as a default behavior. However, at GitLab we try to keep scanners self-contained for at least a few reasons:
Describe the solution you'd like
--offline
, disables built-in external network requests.Describe alternatives you've considered
So far, we have found various ways to disable network calls, but:
Additional context
We at GitLab would be happy to collaborate on a solution, should the contribution be welcome.
If you'd like to discuss anything about this in a channel other than issues, please see my team page entry or send me an email at
cgilbert
at my company domain. Thanks!The text was updated successfully, but these errors were encountered: