Update dependency open-policy-agent/opa to v1.12.2 #472
+1
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.11.0→v1.12.2Release Notes
open-policy-agent/opa (open-policy-agent/opa)
v1.12.2Compare Source
This bug fix release address issues found in the new string interpolation feature
authored by @anderseknert
authored by @thevilledev
authored by @thevilledev
v1.12.1Compare Source
This bug fix release reverts a change to
regex.replacethat unintentionally changed its behaviour for anchored regular expressions.regex.replacerespect cancellation" (authored by @srenatus)v1.12.0Compare Source
This release contains a mix of new features, performance improvements, and bugfixes. Notably:
String Interpolation (#4733)
The Rego language has been extended to support String Interpolation,
which provides a readable means to compose strings containing dynamic values determined at evaluation time.
An interpolated string is composed of a template-string containing zero or more template-expressions that evaluates to a value at evaluation time.
The
$character prefix identifies a template-string, and template-expressions are declared by being enclosed in curly-braces ({,}).Additionally,
undefinedtemplate-expression values don't halt evaluation; instead,<undefined>will be injected into the generated string.{ "deny": [ "User <undefined>'s role was 'guest', but must be one of [\"admin\", \"employee\"]" ], }String interpolation is a more readable and less error-prone substitute for the
sprintfbuilt-in function.Authored by @johanfylling reported by @anderseknert
Runtime, SDK, Tooling
someandevery(#8105, #8131, #8138) authored by @charlieegan3regex.replacerespect cancellation (#8089) authored by @srenatusreplaceandstrings.replace_nrespect cancellation (#8089) authored by @srenatusconcat(#8090) authored by @srenatusCompiler, Topdown and Rego
Docs, Website, Ecosystem
Miscellaneous
v1.11.1Compare Source
This is a bugfix release:
Memory exhaustion via forged gzip header
A crafted HTTP request any of OPA's HTTP endpoints would lead OPA to use a large amount of memory, triggering
an out-of-memory process exit.
This weakness in OPA's HTTP API gzip handling is as old as the gzip handling itself. A configurable limit was introduced in v0.67.0, but it has been shown that this security measure wasn't sufficient to avoid running out of memory in memory-constrained setups.
Thanks to @thevilledev for reporting and fixing this issue.
It only applies to OPA running as server (as a binary or in a container, as "sidecar"). To trigger an OOM process exit using this weakness, an adversary must be able to send an HTTP request directly to OPA. This would be the case if they are in the same network, there is no proxy in front of OPA, or if OPA was exposed to the internet, which is advised against.
By the nature of HTTP encodings, this would be effective before token-based authentication and authorization policies, so these measures do not protect against the attack vector.
If all OPA endpoints are using TLS-based authentication (mutual TLS, "mTLS"), then an adversary cannot do harm with this method.
Please note that while we're taking all of these issues seriously, OPA isn't designed for adversary environments. It's strongly advised not to expose any of its endpoints to the public internet. Furthermore, available security measures should be applied regardless, for a defense in depth approach. See the documentation for the available means of authentication and authorization in OPA.
Please also check out our Security Policy for reporting critical issues and bugs.
Decision Logs dropped (introduced in OPA v1.9.0)
When the decision logs buffer was uploaded, the buffer limit inadvertently got reset to the default upload limit (32kb).
This causes logs to be dropped that shouldn't have been dropped.
This default is overridden by the configuration value
decision_logs.reporting.upload_size_limit_bytes, see the docs on decision logs.There's a Prometheus metric for dropped events,
counter_decision_logs_dropped_buffer_size_limit_bytes_exceeded,and you can check that for unexpectedly high counts.
Reported by @johanneslarsson #8123, fixed by @sspaink.
The release is otherwise identical to v1.11.0.
Configuration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.